Библиотека Java разработчика
10.8K subscribers
1.14K photos
564 videos
58 files
1.44K links
📚 Лайфхаки, приёмы и лучшие практики для Java-разработчиков. Всё, что ускорит код и прокачает навыки. Java, Spring, Maven, Hibernate.


По всем вопросам @evgenycarter

РКН clck.ru/3KoGeP
Download Telegram
Что выведет код?


public class Main {
public static final int END = Integer.MAX_VALUE;
public static final int START = END - 100;

public static void main(String[] args) {
int count = 0;
for (int i = START; i <= END; i++) count++;
System.out.println(count);
}
}


👉@BookJava
💯7👍2
👨‍💻Java VS Python – очередной раунд вечного противостояния

🔍Аналитики ICT2GO проанализировали более 100 российских мероприятий 2024 года, посвященных языкам программирования и выяснили, какой из них чаще всего обсуждается на отраслевых ивентах.

Можем поздравить себя с маленькой победой:
Java – 39
Python – 35

Впрочем, давайте дружить языками. Ведь информация обо всех мероприятиях для разработчиков и не только собрана в одном удобном агрегаторе. Телеграм-канал «ICT2GO.ru – мероприятия ИТ» уже более семи лет освещает самые яркие из них для того, чтобы вы точно не пропустили ничего важного.

📌На канале вы найдете:
– подборки ключевых ИТ-ивентов на следующую неделю;
– экспертные мнения и рекомендации по мероприятиям;
– прямые включения, фотоотчеты и самые интересные цитаты спикеров.

Подпишитесь и всегда узнавайте об актуальных событиях вовремя!

erid 2W5zFJ77LFz
🎉2🙈2👏1
Совет по Spring Boot 💡

Вы думаете о замене 🍃`RestTemplate` на новый Spring `RestClient`? Конфигурация SSL очень проста благодаря поддержке 🔐`SslBundles` через интерфейс `RestClientSsl` 👆

👉@BookJava
👍4
Media is too big
VIEW IN TELEGRAM
Java. Префиксное дерево. Основные операции, сохранение в файл, практическое применение.

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

00:00 - Вступление
00:26 - Применение в приложении
01:58 - Построение дерева и операции с ним
06:33 - Построение префиксного дерева на Java
11:22 - Операции с префиксным деревом на Java
16:31 - Сохранение дерева в файл
20:51 - Загрузка дерева из файла
25:32 - Экономия по сравнению со списком
27:12 - Замечание о Null-безопасности
28:26 - Заключение

источник

👉@BookJava
👍2
📕Открытый урок по Scala для Java, C#, Kotlin и Android программистов, аналитиков данных и специалистов по обработке больших данных

На открытом уроке 23 декабря в 20:00 мск мы изучим основы языка Scala, его особенности и практику применения.

📗На уроке:
- Разберем синтаксические особенности языка;
- Узнаем какие возможности языка позволяют комфортно использовать подходы функционального программирования

📘В результате:
- Пройдем практику в написании функций и методов
- Научимся создавать иммутабельные конструкции
- Получим полное представление о возможностях композиции

Спикер Алексей Воронец — руководитель разработки департамента проектных решений и поисковых систем в компании Naumen, 14+ лет разработки на Scala, Java, JavaScript и PHP.

👉 Регистрируйтесь прямо сейчас, чтобы не пропустить мероприятие: https://vk.cc/cGjzJy

📙 Все участники открытого урока получат скидку 20% на курс "Scala-разработчик" с промокодом SCALA2025

Реклама. ООО «Отус онлайн-образование», ОГРН 1177746618576
Пишем игру на Java - Клон Танков. Часть 1

Вступление
Создаем Окно - [1]
Да будет цвет - [2]
Изображения (теория) - [3]
Улучшаем графику - [4]
Мульти Буферизацыя - [5]

👉@BookJava
👍51
Опишите поведение аннотации @Autowired

1. Контейнер определяет тип объекта для внедрения
2. Контейнер ищет бины в контексте(он же контейнер), которые соответствуют нужному типу
3. Если есть несколько кандидатов, и один из них помечен как @Primary, то внедряется он
4. Если используется аннотации @Autowire + Qualifier, то контейнер будет использовать информацию из @Qualifier, чтобы понять, какой компонент внедрять
5. В противном случае контейнер попытается внедрить компонент, основываясь на его имени или ID
6. Если ни один из способов не сработал, то будет выброшено исключение

Контейнер обрабатывает DI с помощью AutowiredAnnotationBeanPostProcessor. В связи с этим, аннотация не может быть использована ни в одном BeanFactoryPP или BeanPP.

Если внедряемый объект массив, коллекция, или map с дженериком, то Spring внедрит все бины подходящие по типу в этот массив(или другую структуру данных). В случае с map ключом будет имя бина.

//параметр указывает, требуется ли DI
@Authowired(required = true/false)

👉@BookJava
👍5
Хватит разворачивать приложения наугад! Docker — must-have инструмент для современных Java-разработчиков.

🔍 На открытом уроке разберем, как контейнеризация упрощает разработку и развертывание приложений. Узнаете всё: от создания Docker-контейнеров до профилирования.

👉 Запускайте Java-приложения в облаке, тестируйте их под нагрузкой, отлаживайте с точностью хирурга. Начните путь к новой профессиональной высоте!

🗓 Запишитесь на урок «Контейнеризация Java-приложений с Docker» 27 декабря в 20:00 уже сейчас! Участникам — скидки на курс «Java Developer. Advanced»: https://vk.cc/cGl6vp

Реклама. ООО «Отус онлайн-образование», ОГРН 1177746618576, www.otus.ru
Пишем игру на Java - Клон Танков. Часть 2

Структура игры - [6]
Ввод с клавиатуры - [7]
Загружаем ресурсы из файла - [8]
Создаем Спрайт - [9]
Класс Player и Entity - [10]
Создаем Уровень - [11]

👉@BookJava
👍61
Media is too big
VIEW IN TELEGRAM
Пишем RestApi на SpringBoot Java + MySQL

Spring Initializr 00:00
IntellijIdea 01:34
GetMapping 04:28
Class 06:09
API Layer 08:47
PostMapping 11:20
Подключаем MySQL 13:46
Configuration 19:41
Extra Fields 21:57
DeleteMapping 23:22
PutMapping 26:37
Почти готово 31:42
Обработка исключений 31:59
Унифицируем Response 39:56

источник

👉@BookJava
👍5