Рубрики
Без рубрики

Как создавать Java-приложения сегодня: #51

TL; DR Предварительный просмотр Spring One, 40% кода второго пилота GitHub Имеют дыры в безопасности, Kotlin 1.5.30,… Помеченный как java, bpf.

TL;DR

Предварительный просмотр Spring One, 40% кода GitHub Copilot Имеет дыры в безопасности, Kotlin 1.5.30 и Hibernate ORM 5.3.22.

ПРОЧИТАЙ МЕНЯ

Добро пожаловать на мой еженедельный информационный бюллетень “Как создавать Java-приложения сегодня”! Я прочитал все информационные бюллетени Java так что тебе не нужно этого делать! И это “Новости Java с улыбкой”.

Если вам нравится моя рассылка новостей, то подпишитесь на нее на Substack ! Или прочтите это на dev.to , Java Cafe или Medium . Еще лучше: поделитесь им с людьми, которые могут быть заинтересованы.

Цитата недели

Я глубоко убежден, что компания становится людьми, которых она нанимает, а не планом, который она составляет. Винод Хосла , один из соучредителей Sun Microsystems , дает нам еще одну причину быть осторожными при приеме на работу.

Стендап

Это собачьи дни лета, с точки зрения новостей – в эти дни на Яве ничего не происходит! Даже у ребят из Quarks не хватило энергии выпустить новый релиз! Конечно, все это изменится на этой неделе, поскольку Spring Framework 6.0 получит свой солнечный день на Spring One (1-2 сентября). Подробнее читайте ниже!

Мой следующий доклад на конференции состоится на ” Java Forum Stuttgart ” в Германии. В этом году это снова онлайн-конференция. У меня остались приятные воспоминания – я жил в Штутгарте и выступил там со своим первым докладом на конференции два года назад!

Итак, я провел прошлую неделю, работая над своим “обычным докладом” – как разработчики Java должны создавать интерфейсы сегодня – и записывая его. Это было около 48 минут в сыром виде. Это включало в себя три раза ожидание, пока моя кошка перестанет царапаться в дверь. 🐱 И я повторяю предложения несколько раз, иногда даже целый слайд! Конечный результат длится 38 минут и 4 секунды – с небольшим вступлением, концовкой и некоторыми титрами.

реклама

22 ГОДА РАБОТЫ НА JAVA С ПОЛНЫМ СТЕКОМ ДЛЯ НАЙМА В ЯНВАРЕ СЛЕДУЮЩЕГО ГОДА

Я разработчик Java с полным стеком с 22-летним опытом работы: Spring Boot, Angular, Flutter. Я ищу проект в январе 2022 года в Милтон-Кинсе, Лондон, или удаленно. Я буду работать подрядчиком или срочным сотрудником, но не буду занимать постоянные должности.

Заинтересованы? Тогда ознакомьтесь с моими примерами резюме и работ!

Ознакомьтесь с образцами моего резюме и работы

Фреймворки и библиотеки

Предварительный просмотр Spring One

Весна 6 будет показана в эту среду. Я ожидаю, что его поддержка GraalVM станет изюминкой, а Java 11 станет новой базовой линией.

Ежегодная конференция для доминирующих Java-фреймворков стартует в эту среду: Весна Первая. В этом году это снова бесплатная онлайн-конференция.

И это одна из таких конференций, на которой Spring framework получает новую основную версию: Юрген “Spring” Хеллер представит Spring Framework 6.0 в среду . Я с нетерпением жду возможности узнать три вещи: темы, Spring Native и версию Java.

“Темы” – это то, что Юрген Холлер называет всеобъемлющими инициативами или целями для новой весенней версии. Например, в Spring 5.0 в качестве тем использовались функциональный стиль, реактивные архитектуры, HTTP/2, Servlet 4 и Kotlin ( timed YouTube link ). В нем также была модульность Java (Jigsaw) в качестве темы, но я не думаю, что это куда-то привело. Но, по-видимому, это снова обсуждается для версии 6.0, поскольку Юрген раскрыл “введение определений информации о модуле в кодовой базе” в апреле прошлого года (см. выпуск № 35 ).

Итак, какими могут быть темы для Spring 6.0?

Слон в комнате – это встроенная поддержка GraalVM для создания небольших и быстрых собственных приложений. Spring нуждается в этом, чтобы бороться с такими, как кварки и Микронавты. В прошлом году Pivotal заявила, что Spring Boot 3 и Spring 6 “как ожидается, обеспечат первоклассную поддержку для развертывания собственных приложений” ( временная ссылка на YouTube ). Spring Native сделает это.

Но Spring Native все еще находится в бета-версии и по-прежнему указан в разделе ” spring-projects-experimental “. Будет ли Spring Native готов к Spring 6.0? Мы узнаем об этом в среду. Будет ли Spring Native конкурировать с Quarks (в мае приложение Spring Native использовало 126 МБ, а Quarks – всего 15 МБ)? Мы узнаем это позже этой осенью.

Следующий интересный момент – базовая версия Java для Spring 6.0. Если он использует модули Java, то это должна быть Java 9+. И поскольку подавляющее большинство организаций используют только версии LTS Java, это либо Java 11, либо Java 17. Я ставлю на Java 11: Spring 5.0 в 2017 году использовала Java 8, которой на тот момент было 3,5 года. Java 11 сейчас 3 года, а Java 17 выйдет только через две недели. Я бы очень хотел, чтобы мне здесь доказали, что я ошибаюсь! Java 17 в качестве базовой линии продвинет внедрение современной Java вперед, но задержит внедрение Spring 6 – переход с Java 8 или более ранней версии на Java 17 займет некоторое время.

Сейчас большинство из нас не используют Spring Framework напрямую, а используют его через Spring Boot. Текущая бета-версия – Spring Boot 2.6 , которая основана на Spring 5.3. Итак, когда появится Spring Boot 3? Следующая весна – мой лучший выбор – Spring Boot 2.5 появился на 20 мая этого года .

Место проведения конференции

Инструменты

40% кода Второго пилота GitHub Имеют Дыры в Безопасности

В июле на GitHub был представлен предварительный просмотр “AI pair programmer” (см. выпуск №44 ). Он будет реализовывать метод после того, как программист (человек) определит сигнатуру метода и опишет, что этот метод будет делать в комментарии. Так неужели машины вот-вот отнимут у нас работу?

Исследователи создали 1.692 программы с помощью GitHub Copilot. И у 40% из них были дыры в системе безопасности. Пью, это облегчение – я уверен, что это должно дисквалифицировать второго пилота GitHub от серьезного использования! Машины плохие, люди хорошие, мы, разработчики Java, сохраняем свою работу, ура, конфетти…

А теперь, пока мы не стали слишком самоуверенными: Как Второй пилот научился? Вот что я написал в июле: “GitHub обучил его – как вы уже догадались – коду из репозиториев GitHub”. Итак, второй пилот узнал об уязвимостях системы безопасности от нас, людей !

Возможно, некоторые из этих уязвимостей уже исправлены, но Второй пилот так и не заметил этого. Или, возможно, уязвимости не были идентифицированы как таковые при написании исходного кода. В любом случае, я думаю, что здесь нет места Злорадству по поводу недостатков второго пилота!

Статья в журнале Visual Studio

Освободить

Котлин 1.5.30

В этом выпуске представлены предварительные улучшения во многих областях, которые Kotlin 1.6 завершит: Язык , Kotlin/JVM , Стандартная библиотека , Gradle , Kotlin/Native и Kotlin/JS IR .

Объявление включает в себя видео о новых функциях .

Объявление

Переход в спящий режим ORM 5.3.22

Этот выпуск обновляет 12 зависимостей и добавляет опцию add-opens .

Объявление

О

Карстен Зильц является автором этого информационного бюллетеня. Он является полнофункциональным веб- и мобильным разработчиком с 22-летним опытом работы на Java, автором, спикером и марафонцем. Карстен получил степень магистра компьютерных наук в Дрезденском технологическом университете (Германия) в 1996 году.

Карстен работал в Европе и США. В 2004 году он стал соучредителем стартапа по разработке программного обеспечения в США. Карстен руководил разработкой продукта в течение 13 лет и ушел после того, как компания была успешно продана. Он стал соучредителем британского SaaS-стартапа ” Ваш дом в надежных руках ” в качестве технического директора в 2020 году. С 2019 года Карстен также работает подрядчиком в Великобритании.

У Карстена есть этот информационный бюллетень , веб-сайт разработчика и сайт подрядчика . Он в LinkedIn , Twitter и GitHub . Карстен также является автором в Info .

Оригинал: “https://dev.to/ksilz/how-to-build-java-applications-today-51-2aob”