Java News – Telegram
Java News
4.31K subscribers
248 photos
5 videos
1 file
1.47K links
Все новости связанные с Java!

По всем вопросам: @NadikaKir

Мы на бирже: https://telega.in/c/java_newss
Download Telegram
Познакомьтесь с востребованным направлением программирования. Освойте базовые инструменты и возможности Java на практике. Узнайте 5 правил синтаксиса языка Java, которые нужно соблюдать каждому начинающему разработчику. Участвуйте в онлайн-интенсиве Skillbox с 25 по 27 августа в 19:00 по московскому времени.

Успейте зарегистрироваться: 👉 https://clc.to/LH6i9g.
Сразу отправим вам на почту чек-лист по знаниям и навыкам, которые необходимы backend-разработчику для трудоустройства.

Кому подойдёт интенсив:

📌 Новичкам в программировании.
Получите базовые навыки программирования на Java, научитесь писать простой код и узнаете основные функции. Попрактикуетесь в разработке, создадите свой первый проект и заложите основу для новой карьеры.

📌Начинающим разработчикам.
Углубите знания о Java и станете увереннее в своих проектах. Разработаете приложение за 3 дня, выявите ошибки, получите практические советы от опытного программиста.

Интенсив ведёт Даниил Пилипенко — основатель и директор центра подбора IT-специалистов SymbioWay.
С 2004 года разрабатывает и руководит разработкой на Java, PHP и во фронтенде. 50 раз выступил на семинарах и конференциях.

🎁 Всем, кто дойдёт до конца интенсива, подарим электронную книгу «Человек + машина» издательства МИФ.

Подключайтесь к прямым эфирам и используйте возможность получить сертификат на 10 000 рублей на любой курс Skillbox.

Сделайте первый шаг к перспективной IT-профессии!
👍6
Spring Authorization Server 1.0 Planned for November 2022

Just over two years since it was introduced to the Java community, Spring Authorization Server 1.0 is planned for a GA release in November 2022. The Spring Authorization Server project replaces the Spring Security OAuth project that has already been declared as end-of-life. The project is led by the Spring Security team and delivers support for OAuth 2.1 Authorization Server for Spring applications.

Читать статью
👍6
Чувак, где моя черепаха?

Как написать программу, чтобы победить на конкурсе плохого кода? Этот вопрос я задал сам себе, когда прочёл о необычном челлендже на форуме reddit. Да, вы правильно поняли. Это статья не о чистом коде и правильных тестах. Но здесь не будет и речи о плохом, заурядно плохом коде, том коде, который мы очень часто видим в наших проектах. Я расскажу об экстремальном, невообразимом, гениально плохом коде, коде, который использует те возможности джавы, о которых вы, скорее всего, и не догадывались, и те приёмы, которые вы никогда не встретите в обычных проектах. Сможете ли вы использовать эти приёмы на практике? Думаю, нет. Если вы прагматичный человек, то сэкономите своё время и остановитесь. Не читайте эту статью. Однако если вы хотите немного отвлечься от повседневной рутины, увидеть и узнать что-то новое о нашем любимом языке Java, - милости просим!

Читать статью
👍8🔥1
Управление временем в Java приложениях

В продуктовой Java-разработке часто требуется сохранять дату и время в базу данных. Это может быть фиксация времени создания\последней модификации какого-либо объекта или указание срока действия документа, билета и т.п. Сама по себе эта задача несложная. Трудности возникают, когда мы хотим подобную систему протестировать и оценить, как она будет вести себя, скажем, через полгода или год. В будущем. Ниже я покажу несколько простых и изящных приёмов, которые позволят вам почувствовать себя настоящим доктором Стрэнджем…

Читать статью
👍9🔥1
В Java-дайджесте от infoQ за прошедшую неделю представлены:
- новости о JDK 19, JDK 20

Обновления:
- Spring Boot 2.7.3 и 2.6.11
- Spring Authorization Server 1.0.0-M1 и 0.4.0-M1
- Spring Security 5.7.3, 5.6.7 и 5.8.0-M2
- Spring Cloud Dataflow 2.9.5
- Spring Shell 2.1.1
- Payara Platform 5 Community Edition
- Micronaut 3.6.1, Helidon 3.0.1 и Apache Camel 3.14.5

Читать статью
👍5🔥21
Соглашение о коммитах

Спецификация «Соглашение о коммитах» — простое соглашение о том, как нужно писать сообщения коммитов. Оно описывает простой набор правил для создания понятной истории коммитов, а также позволяет проще разрабатывать инструменты автоматизации, основанные на истории коммитов.

Читать
👍9
Сравнение Quartz, kagkarlsson и кастомной реализации для запланированного задания в реактивном Spring Boot приложении

Часто Java-разработчикам требуется реализовать запланированные задания. Современные реалии диктуют нам, что система должна быть масштабируемой, то есть вне зависимости от количества реплик и распределения нагрузки мы ожидаем выполнения задания по условиям, которые были определены на входе. Существуют готовые решения для реализации jobService. Используя базу данных, можно написать собственное решение этой задачи, а при возникший трудностях, разбираться с тем, что же пошло не так. С одной стороны, вероятность ошибки больше, чем с готовым решением, но с другой стороны в своем коде разбираться и вносить правки проще, чем в общедоступной библиотеке. Кроме того, собственная реализация будет учитывать особенности системы, в нашем случае, это реактивность. В статье подробнее описаны плюсы и минусы этих подходов.

Читать статью
👍5🔥1
Weekend Offer для Java-разработчиков в команду VK Звонков состоится 10-11 сентября

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

Подать заявку
👍5
Ищем-ищем нужное…

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

Читать статью
👍6
Холостые циклы в Java

Привет, сегодня поговорим о тонкостях реализации холостых циклов (холостого ожидания) в Java. Эта задача встречается нечасто: за девять с небольшим лет работы я столкнулся с ней лишь пару раз. Тем не менее, тема видится интересной и по ней есть что сказать, так что добро пожаловать!

Читать статью
👍4😱1
Java News Roundup: Eclipse GlassFish, Open Liberty, MicroStream, JHipster, WildFly, EclipseLink

This week's Java roundup for August 29th, 2022, features news from OpenJDK, JDK 20, Eclipse GlassFish 7.0.0-M8, Quarkus 2.12.0, Open Liberty 22.0.0.9 and 22.0.0.10-beta, MicroStream 07.01.00-beta2, WildFly 26.1.2, JHipster 7.9.3, EclipseLink 4.0.0-RC1, Hibernate 5.6.11, JDKMon 17.0.35 and Apache Camel Quarkus 2.12.0.

Читать статью
👍4
Лучшие практики по управлению зависимостями в Java

Если посмотреть на современные Java-приложения, почти все они содержат зависимости от библиотек, разработанных кем-то другим.

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

Читать статью
👍6
Атака на String.hashCode: прообразы и коллизии

Как-то раз мне понадобилось несколько наборов строк с коллизией по хеш-коду. То есть таких, чтобы значение String::hashCode() совпадало для всех строк в наборе.

Блуждание по интернету не дало результатов, примеров было мало и все они довольно однообразны. Поиск по словарям подарил забавную пару "javanoscript's".hashCode() == "monocle".hashCode(), но практической пользы не принёс. Полный перебор не рассматривался в виду скорой тепловой смерти вселенной.

Тот самый случай, когда проще сделать всё самому. Стандартная хеш-функция строки в Java считается криптографически нестойкой, так что знаний из школьного курса математики должно быть достаточно.

Читать статью
👍5
Java 8 была выпущена в марте 2014 года, а Java 18 — в марте 2022 года. Между этими двумя выпусками — 8 лет прогресса и 203 предложения (JEP) по улучшению JDK.

В этом видео Аурелио Гарсиа-Рибейро рассказывает о наиболее важных изменениях в Java, которые произошли за эти года, а также о преимуществах и проблемах по внедрению последних версий JDK как для новых приложений, так и для уже написанных.
👍9
JDK 19 and JDK 20: What We Know So Far

JDK 19, the second non-LTS release since JDK 17, has reached its initial release candidate phase as declared by Mark Reinhold, chief architect, Java Platform Group at Oracle. The main-line source repository, forked to the JDK stabilization repository in early June 2022 (Rampdown Phase One), defines the feature set for JDK 19. Critical bugs, such as regressions or serious functionality issues, may be addressed, but must be approved via the Fix-Request process. As per the release schedule, JDK 19 will be formally released on September 20, 2022.

Читать статью
👍4🔥1
Большой гайд. Пишем микросервисы на Java и Spring Boot, заворачиваем в Docker, запускаем на EKS, мониторим на Grafana

В этой статье вы увидите пошаговое создание cloud-native микросервиса на Amazon AWS, пригодное для "чтения с листа". Чтобы понять, что здесь происходит, не нужно разворачивать проект - достаточно обладать живым воображением и прочитать текст по диагонали. Если же вы всё-таки захотите повторить шаги, вам будут жизненно нужны знания вида, как создавать классы в IDE и что такое Spring.

Вначале мы напишем пару простых микросервисов на Spring Boot, докеризуем их, зальём в AWS, настроим красивые доменные имена и HTTPS, прикрутим логирование и мониторинг, Prometheus и Grafana. Это небольшое путешествие по всем кругам ада, из которого вы не вернетесь прежним.

Читать статью
👍8
JEP 429: Extent-Local Variables to Promote Immutability in Java

JEP 429, Extent-Local Variables (Incubator), was promoted from its JEP Draft 8263012 to Candidate status. This incubating JEP, under the umbrella of Project Loom, proposes enabling the sharing of immutable data within and across threads. This is preferred to thread-local variables, especially when using large numbers of virtual threads.

Читать статью
👍4
Чистый код — практический подход

После нескольких докладов о чистом коде (Clean Code) я решил обобщить в статье самое важное по этой теме. Поскольку в Интернете и так много постов и информации об этом, то, я думаю, еще одна статья, просто рассказывающая о принципах чистого кода, не будет интересной.

Поэтому я попытаюсь показать вам практический подход к чистому коду. Не вдаваясь в теорию, покажу, как я пишу Чистый Код.

Читать статью
👍4
Introducing Helidon Nima Using Virtual Threads to Achieve Simplicity and High Performance

Under the umbrella of Project Helidon, Oracle introduced the first microservices framework based on virtual threads (JEP 425) called Helidon Níma. It is built from the ground up to achieve an easy-to-use programming model with outstanding performance. The technology preview is now available with the Helidon 4.0.0-ALPHA1 release for those who are interested in evaluating the latest Java technology. However, this is not yet production-ready.

Читать статью
👍4