В Java можно использовать
✅ Fail-fast означает, что ошибки фиксируются ближе к месту возникновения, за счёт чего стек вызовов проще читать и анализировать
#Java #РазработкаПО
👉 Java Portal
Optional.orElseThrow() для реализации так называемого fail-fast поведения.#Java #РазработкаПО
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥5👍2
Совет по Java: удаляйте неиспользуемые импорты и переменные — это улучшает читаемость кода.
До:
После:
#Java #CleanCode
👉 Java Portal
До:
import java.util.Date; // неиспользуемый импорт
import java.util.Scanner;
public class Greeting {
private int age; // неиспользуемая переменная
public void sayHello() {
Scanner sc = new Scanner(System.in);
System.out.println("Hello, world!");
sc.close();
}
}
После:
import java.util.Scanner;
public class Greeting {
public void sayHello() {
Scanner sc = new Scanner(System.in);
System.out.println("Hello, world!");
sc.close();
}
}
#Java #CleanCode
Please open Telegram to view this post
VIEW IN TELEGRAM
❤3
Используй
Проверяет, ссылаются ли два объекта
#Java #РазработкаПО
👉 Java Portal
Files.isSameFile(path1, path2), чтобы проверить, указывают ли два пути на один и тот же файл. Метод также резолвит симлинки.Проверяет, ссылаются ли два объекта
Path на один и тот же реальный файл в файловой системе.#Java #РазработкаПО
Please open Telegram to view this post
VIEW IN TELEGRAM
👍6
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-совет : можно использовать
✅ Это быстрый способ создать немодифицируемые списки и множества без использования
#Java #Коллекции
👉 Java Portal
List.of() и Set.of() для создания неизменяемых коллекций.Collections.unmodifiableList().#Java #Коллекции
Please open Telegram to view this post
VIEW IN TELEGRAM
Совет по Java: ловите ошибки ещё на этапе компиляции — помечайте переопределённые методы аннотацией
Если сигнатура метода не совпадёт с методом родительского класса или интерфейса, компилятор сразу выдаст ошибку вместо тихого создания нового метода.
#Java #Annotations
👉 Java Portal
@Override.@Override
public void process() {
// logic
}
Если сигнатура метода не совпадёт с методом родительского класса или интерфейса, компилятор сразу выдаст ошибку вместо тихого создания нового метода.
#Java #Annotations
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
👍8
Включить reflection-free Jackson в Quarkus — легко. Настоящая работа начинается с того, чтобы понять, сохраняется ли ваш JSON-контракт.
Автор собрал небольшой API каталога с DTO на record-классах, обобщённым
#java #quarkus
👉 Java Portal
Автор собрал небольшой API каталога с DTO на record-классах, обобщённым
Page<T>, полиморфными payload-ами, кастомным сериализатором и контрактными тестами: baseline против reflection-free режима.#java #quarkus
Please open Telegram to view this post
VIEW IN TELEGRAM
The-Main-Thread
Quarkus Reflection-Free Jackson Serializers: Migrate with Contract Tests
Use a small catalog API to enable reflection-free Jackson, keep tricky JSON payloads honest with contract tests, and benchmark the change without guessing.
👍3❤2
Выражения
✅ Если пропустить константу
✅ Исправить это можно, обработав все значения
✅ Более безопасный рефакторинг и меньше скрытых ошибок
#Java #JavaDev
👉 Java Portal
switch в Java 14+ являются исчерпывающими (exhaustive): компилятор проверяет, что обработаны все возможные значения.✅ Если пропустить константу
enum, компиляция завершится ошибкой✅ Исправить это можно, обработав все значения
enum или добавив ветку default✅ Более безопасный рефакторинг и меньше скрытых ошибок
#Java #JavaDev
Please open Telegram to view this post
VIEW IN TELEGRAM
👍2
Extension API в JUnit 5 заменяет
✅ Единая модель: реализуете lifecycle-хуки вроде
✅
✅ Extensions компонуются: можно навесить несколько расширений через
Демо-проект на GitHub: https://github.com/mcasari/codingstrain/tree/main/x-posts-examples/junit5-extension-api-demo
#Java #JUnit5
👉 Java Portal
@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
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
Лишние импорты и неиспользуемые переменные создают визуальный шум, усложняют навигацию по коду и затрудняют поддержку. Большинство IDE умеют автоматически находить и удалять такой код.
#Java #CleanCode
Please open Telegram to view this post
VIEW IN TELEGRAM