DiscoverБитовые маски: о системном программировании простыми словамиJava Runtime / Интероперабельность в Java / Как учить системных программистов
Java Runtime / Интероперабельность в Java / Как учить системных программистов

Java Runtime / Интероперабельность в Java / Как учить системных программистов

Update: 2024-05-31
Share

Description

Новый гость подкаста «Битовые маски» — Иван Углянский, известный разработчик JVM, член программного комитета Java-конференции SnowOne и один из создателей профиля «Системное программирование» в НГУ. Он соприкоснулся с процессом разработки компиляторов и рантаймов еще в старших классах школы, а после продолжал заниматься этим направлением в компании Excelsior. Елена Лепилкина обсудила с Иваном не только рантаймы, но и интероперабельность, новые Java-проекты Valhalla, Panama и Loom, а также высшее образование в области системного программирования.


Что входит в состав рантайма, кроме garbage collector? В чем особенности кода, который пишут рантайм-инженеры, и логов, которые они оставляют? На каких языках можно писать рантаймы? Чем нового и интересного принесут мега-проекты Panama, Loom и Valhalla? В чем проблемы интероперабельности через JNI? Что такое «техника кротов»? Ответы на эти и другие вопросы вы узнаете из двенадцатого эпизода подкаста.

Видеоверсия выпуска: https://youtu.be/kABHXttUOb4



00:00 — Тизер

01:01 — Представление Ивана Углянского

01:58 — Начало карьеры Ивана

10:14 — Excelsior JET

13:28 — Как соблюсти спецификацию Java в AOT-компиляторе

17:21 — GraalVM

20:00 — Производительность AOT и JIT, как конкурировать с HotSpot

25:40 — Что входит в состав Runtime

27:30 — Как работает Java-профилировщик

32:36 — Баги в Runtime и как их дебажить

41:46 — Какие типы Garbage Collector'ов существуют

44:54 — Консервативные и точные GC: можно ли прикрутить GC к С++?

49:31 — Ситуация, где консервативный GC плох в Java

51:41 — Еще один интересный баг, или Как напугать клиента

56:45 — На каких языках можно писать рантаймы

1:04:45 — Интероперабельность в Java, механизм JNI и существующие проблемы

1:16:10 — Мегапроект Panama и интероперабельность с C++

1:22:29 — Был ли у Java период застоя? Проблема с Java 9

1:28:32 — Обратная совместимость Java: плюсы и минусы

1:31:28 — Существующие проблемы с системой типов, проект Valhalla

1:37:14 — Проект Loom и как реализованы виртуальные потоки в Java

1:49:17 — Проектная модель Java

1:53:19 — Кто такой системный программист?

2:00:17 — Как появился профиль «Системное программирование» в НГУ

2:04:42 — Чему и как учат на «Системном программировании»

2:08:54 — А нужно ли много системных программистов

2:13:21 — Взаимодействие с вузом и организационная работа

2:19:52 — Зачем курс по Python на профиле «Системное программирование»

2:22:09 — Что хочется улучшить

2:27:31 — Заключение


✅ Подписывайтесь на Telegram-канал «Битовых масок»: https://t.me/+bx50QfUlw4pkZDEy


Comments 
In Channel
00:00
00:00
x

0.5x

0.8x

1.0x

1.25x

1.5x

2.0x

3.0x

Sleep Timer

Off

End of Episode

5 Minutes

10 Minutes

15 Minutes

30 Minutes

45 Minutes

60 Minutes

120 Minutes

Java Runtime / Интероперабельность в Java / Как учить системных программистов

Java Runtime / Интероперабельность в Java / Как учить системных программистов