Привет! Надеемся в обозримом будущем и до Kotlin добраться. Мимо этой статьи (февральская) пройти не смогли.
Читаем и комментируем!
Читать полностью »
Привет! Надеемся в обозримом будущем и до Kotlin добраться. Мимо этой статьи (февральская) пройти не смогли.
Читаем и комментируем!
Читать полностью »
Android почти исполнилось десять лет.
Мы решили отметить это праздничным чаепитием со всеми, кто пришел в питерский офис Яндекса на второй митап Android Paranoid. Сказано — сделано. К нашему сожалению, маршмеллоу, шоколадное печенье и желейные бобы закончились еще 28 марта.
Вместо них — доклады, записанные на видео, и короткая выжимка полезной информации для Android-разработчиков. Под катом о том,
Привет! Недавно мы запустили IntelliJ IDEA 2018.1 – первое большое обновление в этом году. В нем вас ждет множество важных улучшений: поддержка частичных коммитов Git, отображение внешних аннотаций в коде, функциональность, добавленная из Android Studio 3.0, и многое другое. Ниже мы расскажем об этом подробнее, а попробовать новую версию можно здесь.
Разбор последней четвёртой задачи:
public double octaPow(double a) {
return Math.pow(a, 8);
}
public double octaPow(double a) {
return a * a * a * a * a * a * a * a;
}
public double octaPow(double a) {
return Math.pow(Math.pow(Math.pow(a, 2), 2), 2);
}
public double octaPow(double a) {
a *= a; a *= a; return a * a;
}
Условие (упрощённо):
Определить, какие методы быстрые, а какие — медленные (JRE 1.8.0_161).
Под катом бенчмарки, куски ассемблера и разбор оптимизаций со стороны JVM.
Другие публикации серии: Часть 1, Часть 2 и Часть 3.
Читать полностью »
Перформансные задачи от Контура уже были, настала и наша очередь: представляем хардкорные задачи с Java-конференции JBreak 2018, aka «ад от Excelsior».
Задачи даны в оригинальных формулировках, в каждой задаче может быть несколько правильных ответов, и к каждой задаче дано решение под спойлером.
Ваш коллега начитался Java Language Specification и написал следующее:
void playWithRef() {
Object obj = new Object();
WeakReference<Object> ref = new WeakReference<>(obj);
System.out.println(ref.get() != null);
System.gc();
System.out.println(ref.get() != null);
}
А разгребать вам: какие результаты исполнения возможны?
Недели две назад InfoQ напомнил, что официальная поддержка Java 9 заканчивается… в Марте 2018г. (т.е. через 20 дней :)
Вот cсылка на официальный EOL от Oracle, в которой в разделе "Java SE Public Updates" черным по английскому говорится, что Java 9 будет поддерживаться до Марта 2018, а Java 8 — до Января 2019 (или позже) и Декабря 2020 (или позже).
Если кто еще не в курсе, сегодня вышла IntelliJ IDEA 2017.3. Продолжая традицию, я рассказываю о том, что новое и интересное было добавлено или поменялось в релизе: умные подсказки, рефакторинги, навигация, инструменты для работы с Git, базами данных, поддержка фреймворков и многое другое.
Поехали!Читать полностью »
Вчера компания JetBrains выпустила релиз Kotlin 1.2. Новая версия — большой шаг на пути к тому, чтобы сделать Kotlin наиболее удобным инструментом для разработки всех компонентов современного приложения.
В версии Kotlin 1.1 мы официально выпустили поддержку JavaScript — возможность транслировать код на Kotlin в JS и выполнять его в браузере. В этой версии мы добавляем к этому возможность переиспользования кода между JVM и JavaScript. Теперь вы можете использовать одну и ту же реализацию бизнес-логики во всех компонентах вашего приложения — бэкэнде, фронтэнде в браузере и мобильном приложении под Android. Мы также работаем над библиотеками, которые в этом помогают — в частности, над кросс-платформенной библиотекой для сериализации.
Пришло время рассказать о нашей новой конференции — JBreak 2018.
Для нетерпеливых, визитная карточка мероприятия:
Но вначале я хочу рассказать одну историю. Обычно такие истории-предисловия весьма скучные, знаю, но все-таки — послушайте. Она поможет вам принять решение, стоит ли идти на эту конференцию.
Так получилось, что у меня много друзей в возрасте около 25 лет. Все они искренне верят, что не доживут до 30, и спрашивают — ну как там, по другую сторону? Еще они спрашивают, как стать настоящим программистом (что бы это ни значило). А еще — стоит ли ехать на конференцию. Отвечаю: пока что здесь замечательно, стать успешным разработчиком можно и нужно, и чтобы объяснить это — у меня есть три истории.