Java Portal | Программирование
12.1K subscribers
1.39K photos
109 videos
42 files
1.41K links
Присоединяйтесь к нашему каналу и погрузитесь в мир для Java-разработчика

Связь: @devmangx

РКН: https://clck.ru/3H4WUg
Download Telegram
image_2026-05-02_07-05-20.png
291.1 KB
Паттерны в Java: паттерн «Строитель» позволяет гибко и прозрачно конструировать сложные объекты. #Java #ПаттерныПроектирования

👉 Java Portal
Please open Telegram to view this post
VIEW IN TELEGRAM
1👍1
Java-совет : можно использовать List.of() и Set.of() для создания неизменяемых коллекций.

Это быстрый способ создать немодифицируемые списки и множества без использования Collections.unmodifiableList().

#Java #Коллекции

👉 Java Portal
Please open Telegram to view this post
VIEW IN TELEGRAM
Совет по Java: ловите ошибки ещё на этапе компиляции — помечайте переопределённые методы аннотацией @Override.

@Override
public void process() {
// logic
}


Если сигнатура метода не совпадёт с методом родительского класса или интерфейса, компилятор сразу выдаст ошибку вместо тихого создания нового метода.
#Java #Annotations

👉 Java Portal
Please open Telegram to view this post
VIEW IN TELEGRAM
👍6
Java : Используй инструменты вроде VisualVM, чтобы профилировать свой проект и находить узкие места в производительности. #Java #Performance

👉 Java Portal
Please open Telegram to view this post
VIEW IN TELEGRAM
👍9
Включить reflection-free Jackson в Quarkus — легко. Настоящая работа начинается с того, чтобы понять, сохраняется ли ваш JSON-контракт.

Автор собрал небольшой API каталога с DTO на record-классах, обобщённым Page<T>, полиморфными payload-ами, кастомным сериализатором и контрактными тестами: baseline против reflection-free режима.

#java #quarkus

👉 Java Portal
Please open Telegram to view this post
VIEW IN TELEGRAM
👍32
Выражения switch в Java 14+ являются исчерпывающими (exhaustive): компилятор проверяет, что обработаны все возможные значения.

Если пропустить константу enum, компиляция завершится ошибкой
Исправить это можно, обработав все значения enum или добавив ветку default
Более безопасный рефакторинг и меньше скрытых ошибок
#Java #JavaDev

👉 Java Portal
Please open Telegram to view this post
VIEW IN TELEGRAM
👍3
Extension API в JUnit 5 заменяет @RunWith, Runner и @Rule из JUnit 4.

Единая модель: реализуете lifecycle-хуки вроде BeforeEachCallback вместо эксклюзивного Runner
ParameterResolver инжектит зависимости в тесты, без наследования от базового класса

Extensions компонуются: можно навесить несколько расширений через @ExtendWith.
Демо-проект на GitHub: https://github.com/mcasari/codingstrain/tree/main/x-posts-examples/junit5-extension-api-demo

#Java #JUnit5

👉 Java Portal
Please open Telegram to view this post
VIEW IN TELEGRAM
Please open Telegram to view this post
VIEW IN TELEGRAM
👍1🔥1
💡 Java: Удаляйте неиспользуемые импорты и переменные для повышения читаемости кода.

Лишние импорты и неиспользуемые переменные создают визуальный шум, усложняют навигацию по коду и затрудняют поддержку. Большинство IDE умеют автоматически находить и удалять такой код.

#Java #CleanCode

👉 Java Portal
Please open Telegram to view this post
VIEW IN TELEGRAM
💡 Java: Используйте default-методы в интерфейсах для сохранения обратной совместимости (начиная с Java 8).

Если добавить новый default-метод в интерфейс, существующие реализации не придётся менять. Они автоматически получат реализацию по умолчанию.

#Java #Interfaces

👉 Java Portal
Please open Telegram to view this post
VIEW IN TELEGRAM
👍41
Java: По возможности не возвращайте из методов изменяемые внутренние коллекции, чтобы:
Не раскрывать внутреннее состояние объекта, повышая безопасность.
Иметь возможность менять реализацию без риска сломать другие части приложения.

#Java #JavaDev

👉 Java Portal
Please open Telegram to view this post
VIEW IN TELEGRAM
👍6
Java: Используйте блоки try-catch только там, где это действительно необходимо. Не применяйте исключения для управления логикой выполнения программы. #Java #BestPractices

👉 Java Portal
Please open Telegram to view this post
VIEW IN TELEGRAM
1