Java библиотека
31.7K subscribers
2.39K photos
82 videos
9 files
2.15K links
Книги, статьи, мемы и многое другое для Java программиста!

По сотрудничеству и рекламе: @NadikaKir

Канал в перечне РКН: https://vk.cc/cJrT4A

Мы на бирже: https://telega.in/c/javalib/

Сообщество VK https://vk.com/javatutorial
Download Telegram
Media is too big
VIEW IN TELEGRAM
🖥 Изучаешь Java - создай проект. Перезагрузка.

Выпуск 4. Делаем начальный вариант ГРН на Spring Boot.

В
этом выпуске мы посмотрим, как просто можно сформировать начальный вариант web-приложения на Spring Boot.

🌐🗣СМОТРЕТЬ VKVIDEO

Java библиотека #java
Please open Telegram to view this post
VIEW IN TELEGRAM
👍62🔥2
Предположим, есть метод, который может выбросить IOException и FileNotFoundException в какой последовательности должны идти блоки catch? Сколько блоков catch будет выполнено?

Общее правило: обрабатывать исключения нужно от «младшего» к старшему. Т.е. нельзя поставить в первый блок catch(Exception ex) {}, иначе все дальнейшие блоки catch() уже ничего не смогут обработать, т.к. любое исключение будет соответствовать обработчику catch(Exception ex).

Таким образом, исходя из факта, что FileNotFoundException extends IOException сначала нужно обработать FileNotFoundException, а затем уже IOException.

Java библиотека #java
Please open Telegram to view this post
VIEW IN TELEGRAM
👍183🔥3
Лайфхаки визуального сторителлинга 😉

Рассказываем, почему это полезно и как его построить, чтобы было понятно всем: и менеджерам, и разработчикам, и дизайнерам

И да, вы справитесь, даже если не умеете рисовать! Александр Зинченко, СТО Яндекс 360, поделился инструментами для быстрых и удобных скетчей. А ещё рассказал про сложности передачи идей в проектных командах, которые можно решить с помощью визуального сторителлинга 😎

Больше интересной и полезной информации в канале от команды Яндекс 360
Please open Telegram to view this post
VIEW IN TELEGRAM
Please open Telegram to view this post
VIEW IN TELEGRAM
👍43🔥2
🖥 Fixture Monkey — инструмент на Java для автоматической генерации объектов для тестов

<dependency>
<groupId>com.navercorp.fixturemonkey</groupId>
<artifactId>fixture-monkey-starter</artifactId>
<version>1.0.20</version>
<scope>test</scope>
</dependency>


Fixture Monkey позволяет упростить написание тестов, облегчая генерацию необходимых тестовых объектов.
При этом можно повторно использовать одни и те же конфигурации объектов в нескольких тестах.

🖥 GitHub
🟡 Доки

Java библиотека #java
Please open Telegram to view this post
VIEW IN TELEGRAM
👍75🔥2😁1
charBuffer

Метод charBuffer() используется для получения буфера символов из строки. Он принадлежит java.nio.

Этот метод возвращает объект CharBuffer, который представляет последовательность символов строки.
CharBuffer позволяет эффективно читать и манипулировать символами строки без создания копий.

В этом примере создается строка «Hello». Затем из этой строки получаем буфер символов методом charBuffer().
В цикле посимвольно читаем из буфера символы и выводим их на экран.


Java библиотека #java
Please open Telegram to view this post
VIEW IN TELEGRAM
👍123🔥3
🖥 Instancio — это библиотека Java, которая автоматически создает объекты для юнит тестов

Вместо того, чтобы вручную прописывать данные:
Address address  = new Address();
address.setCity("city");
//...
Person person = new Person();
person.setFirstName("first-name");
person.setLastName("last-name");
person.setAge(22);
person.setGender(Gender.MALE);

можно сделать просто:
Person person = Instancio.create(Person.class);


Эта строка создаёт объект Person() со всеми заполненными полями, в них вписываются случайные значения.
Эти значения можно полностью воспроизвести, если тест упадёт

🖥 GitHub

Java библиотека #java
Please open Telegram to view this post
VIEW IN TELEGRAM
👍164🔥2
🖥 Hilla — современный веб-фреймворк Java

Hilla позволяет быстрее создавать бизнес-приложения — больше не нужно жонглировать эндпойнтами REST или расшифровывать запросы GraphQL.
Hilla объединяет Spring Boot и React, поэтому разработка приложений становится очень быстрой.

🖥 GitHub
🟡 Доки

Java библиотека #java
Please open Telegram to view this post
VIEW IN TELEGRAM
Please open Telegram to view this post
VIEW IN TELEGRAM
👍95🔥4😁2
Работа с коллекциями с помощью Streams

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

👀 Этот простой пример показывает, как с помощью Streams можно легко фильтровать и преобразовывать данные в коллекциях, делая код более лаконичным и понятным.

Java библиотека #java
Please open Telegram to view this post
VIEW IN TELEGRAM
👍145🔥3
🖥 Chronicle-Queue — система на Java для микросекундного обмена сообщениями, сохраняющая всё на диске

<dependency>
<groupId>net.openhft</groupId>
<artifactId>chronicle-queue</artifactId>
<version><!--replace with the latest version, see below--></version>
</dependency>


Chronicle Queue — это система обмена сообщениями с низкой задержкой для высокопроизводительных приложений.

Chronicle Queue — не просто ещё одна реализация очереди, в ней есть несколько важных архитектурных решений.
Не используя для хранения кучу, Chronicle Queue обеспечивает среду, в которой приложения не страдают от сборки мусора — а ведь это одна из самых больших проблем сложных приложений на Java.

Chronicle Queue позволяет добавлять сообщения в конец очереди, читать из очереди, а также поддерживает поиск сообщений.

🖥 GitHub

Java библиотека #java
Please open Telegram to view this post
VIEW IN TELEGRAM
👍10🔥64
Double-brace инициализация

Это нестандартная инициализация объекта, которая использует двойные фигурные скобки для создания и инициализации коллекций, таких как списки (List) или множества (Set) в одной строке. Этот метод инициализации обычно используется для краткости кода, но его использование не является рекомендуемой практикой в реальных проектах из-за своей неочевидности и потенциальных проблем.

Вместо double-brace инициализации лучше использовать стандартные способы создания и инициализации коллекций в Java, такие как вызов конструктора и методов добавления элементов.

Java библиотека #java
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥13👍75