JetBrains приостанавливает все продажи в России и Беларуси. Многие российские сотрудники уже покинули страну.
#jetbrains
#jetbrains
🔥15💩13😢5🤮3👍2
Как вас затронули события, начавшиеся 24 февраля?
Final Results
1%
Сменил работу (новая работа в той же стране)
2%
Уволился, работу пока не нашёл
5%
Очень скоро придётся уволиться
3%
Пока работаю, но упала загрузка/ставка
1%
Ушёл в отпуск на неопределённое время
12%
Уехал из страны
57%
Ничего не поменялось, работаю как прежде
19%
Ничего из вышеперечисленного
Тем сотрудникам JetBrains, которые не примут решение о переезде из России до конца месяца, придётся уволиться
#jetbrains
#jetbrains
👍22👎20😱13🤮4🤬2😢2👏1🤔1
📆 Приблизительный план выхода preview-фич в JDK:
JDK 19 (2022):
• Template strings (Amber)
JDK 20 (2023):
• Deconstruction patterns (Amber)
• Virtual threads (Loom)
• Structured concurrency API (Loom)
• Value classes (Valhalla)
JDK 21 (2023):
• Primitive classes (Valhalla)
• Universal generics (Valhalla)
• Vector API (Panama)
2024:
• More structured concurrency (Loom)
• More/custom patterns (Amber)
2025:
• Specialized generics (Valhalla)
P.S. Это личные догадки Николая Парлога, никаких гарантий, что именно так и будет.
#valhalla #loom #amber #panama #java19 #java20 #java21
JDK 19 (2022):
• Template strings (Amber)
JDK 20 (2023):
• Deconstruction patterns (Amber)
• Virtual threads (Loom)
• Structured concurrency API (Loom)
• Value classes (Valhalla)
JDK 21 (2023):
• Primitive classes (Valhalla)
• Universal generics (Valhalla)
• Vector API (Panama)
2024:
• More structured concurrency (Loom)
• More/custom patterns (Amber)
2025:
• Specialized generics (Valhalla)
P.S. Это личные догадки Николая Парлога, никаких гарантий, что именно так и будет.
#valhalla #loom #amber #panama #java19 #java20 #java21
👍9❤1👏1
⚡️ На странице Oracle JDK уже появилась Java 18. Но интересно не это, а вот это предложение:
JDK 18 will receive updates under these terms, until September 2025 when it will be superseded by JDK 19
Что это значит, я пока не понял. На опечатку не похоже. Теперь все релизы будут LTS-ами что ли?
Ждём официальных постов/комментариев.
Update: больше похоже на MTS. Т.е. LTS вообще отменяется, а вместо этого все релизы станут MTS.
Update 2: похоже на опечатку на сайте. Наверное, хотели написать September 2022.
Update 3: опечатку исправили
JDK 18 will receive updates under these terms, until September 2025 when it will be superseded by JDK 19
Что это значит, я пока не понял. На опечатку не похоже. Теперь все релизы будут LTS-ами что ли?
Ждём официальных постов/комментариев.
Update: больше похоже на MTS. Т.е. LTS вообще отменяется, а вместо этого все релизы станут MTS.
Update 2: похоже на опечатку на сайте. Наверное, хотели написать September 2022.
Update 3: опечатку исправили
🤔2👍1😢1
Pattern matching for switch стало первой языковой конструкцией, которой не хватило два preview. В Java 19 будет третье preview. Неудивительно, ведь это очень сложная языковая фича с большим количеством краевых случаев.
В третьем preview предлагается заменить && в guarded patterns на when (расскажу подробней в еженедельном выпуске miniJUG).
#java19
В третьем preview предлагается заменить && в guarded patterns на when (расскажу подробней в еженедельном выпуске miniJUG).
#java19
👍12
Забавный факт.
Промежуток между выходом Java 9 и 18 – 4 года 6 месяцев.
Промежуток между выходом Java 6 и 7 – 4 года 7 месяцев.
Промежуток между выходом Java 9 и 18 – 4 года 6 месяцев.
Промежуток между выходом Java 6 и 7 – 4 года 7 месяцев.
👍8🤔6🤯2
Тагир попросил удалить его интервью с Егором из-за его позиции по Украине
👍38👎21😁4😢3🤮3🤯2
⚡️ В Spring обнаружена критическая уязвимость, позволяющая злоумышленнику выполнить произвольный код. Уязвимости подвержены приложения при следующих условиях:
• JDK 9+
• Используется Apache Tomcat
• Используется WAR, а не jar
• Используются зависимости spring-webmvc или spring-webflux
Рекомендуется немедленно обновить версию Spring до 5.3.18 / 5.2.20.
#spring #vulnerability
• JDK 9+
• Используется Apache Tomcat
• Используется WAR, а не jar
• Используются зависимости spring-webmvc или spring-webflux
Рекомендуется немедленно обновить версию Spring до 5.3.18 / 5.2.20.
#spring #vulnerability
😱9👍5👎1💩1
😁27👍2👏1
За что вы любите Java/JVM?
Final Results
49%
Простой и читабельный язык
35%
Безопасность, сложно выстрелить в ногу
29%
Продвинутая JVM
73%
Мощная экосистема. Много библиотек и фреймворков
56%
Крутой инструментарий (IDE, профайлеры и т.д.)
36%
Кроссплатформенность
21%
Производительность
60%
Большое сообщество, много вакансий
28%
Возможность выбрать другой JVM-язык
23%
Обратная совместимость
This media is not supported in your browser
VIEW IN TELEGRAM
🙏 Заключительная речь Себастьяна Дашнера на вчерашней конференции SnowOne
❤20👏8🔥3🤔1
Замечали ли вы, что при отладке Java-приложений Step Over иногда может работать дико медленно? Ставите брейкпоинт на некоторой строке, потом шагаете по строкам, нажимая много раз F8, и бац, на каком-то из методов дебаггер тупо встаёт и долго не возвращается из метода. Иногда ждать приходится так долго, что проще убить процесс и начинать всё дебажить заново.
Некоторые могут начать винить в этом «кривую IDE», но это ограничение самой JVM. Абсолютно то же самое будет наблюдаться, если вы будете делать Step Over через jdb. Дело в том, что когда виртуальной машине шлётся команда StepRequest, то она полностью переключается в режим интерпретатора. Если метод большой и вызывает много-много других методов, то интерпретация может занять очень длительное время.
Какой выход из данной ситуации? Смириться, ведь это ограничение JVM. Но есть один простой трюк, который можно применять: использовать не Step Over (F8), а Run to Cursor (Alt + F9). Вы просто ставите мышь на следующую строку и нажимаете Alt + F9, потом опять на следующую строку и так столько раз, сколько нужно. Чуть-чуть неудобно, но если привыкнуть, то вполне рабочий вариант.
Кстати, вы можете спросить, а почему, например, IDEA так не делает по дефолту? Можно же бы было (просто) сделать так, чтобы IDEA автоматом ставила брейкпоинты на следующих строках, и всё бы летало? На самом деле, проблема в том, что в таком случае могут начаться проблемы с concurrency: какой-то поток может прийти в эту строку раньше, чем тот поток, на котором вы сейчас находитесь. А Step Over гарантировано продолжит работу в текущем потоке. Это безопаснее.
Думаю, можно бы было замутить какие-нибудь умные брейкпоинты с условиями, которые запоминали бы ID текущего потока, а потом вставало бы только, если ID совпадает. Но пока ни у кого руки не дошли.
P.S. Отладку ещё может сильно замедлять галочка “Show Method Return Values” в Debug View. Она отключена по умолчанию, но вы её могли случайно включить и забыть отключить.
#debug #intellijidea
Некоторые могут начать винить в этом «кривую IDE», но это ограничение самой JVM. Абсолютно то же самое будет наблюдаться, если вы будете делать Step Over через jdb. Дело в том, что когда виртуальной машине шлётся команда StepRequest, то она полностью переключается в режим интерпретатора. Если метод большой и вызывает много-много других методов, то интерпретация может занять очень длительное время.
Какой выход из данной ситуации? Смириться, ведь это ограничение JVM. Но есть один простой трюк, который можно применять: использовать не Step Over (F8), а Run to Cursor (Alt + F9). Вы просто ставите мышь на следующую строку и нажимаете Alt + F9, потом опять на следующую строку и так столько раз, сколько нужно. Чуть-чуть неудобно, но если привыкнуть, то вполне рабочий вариант.
Кстати, вы можете спросить, а почему, например, IDEA так не делает по дефолту? Можно же бы было (просто) сделать так, чтобы IDEA автоматом ставила брейкпоинты на следующих строках, и всё бы летало? На самом деле, проблема в том, что в таком случае могут начаться проблемы с concurrency: какой-то поток может прийти в эту строку раньше, чем тот поток, на котором вы сейчас находитесь. А Step Over гарантировано продолжит работу в текущем потоке. Это безопаснее.
Думаю, можно бы было замутить какие-нибудь умные брейкпоинты с условиями, которые запоминали бы ID текущего потока, а потом вставало бы только, если ID совпадает. Но пока ни у кого руки не дошли.
P.S. Отладку ещё может сильно замедлять галочка “Show Method Return Values” в Debug View. Она отключена по умолчанию, но вы её могли случайно включить и забыть отключить.
#debug #intellijidea
👍19🤩2