Java библиотека – Telegram
Java библиотека
31.5K subscribers
2.38K photos
91 videos
10 files
2.19K links
Книги, статьи, мемы и многое другое для Java программиста!

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

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

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

Сообщество VK https://vk.com/javatutorial
Download Telegram
🖥 MegaLinter — open-source инструмент для рабочих процессов CI/CD, который анализирует согласованность кода, IAC, конфигурации и скрипты в репозитории

npx mega-linter-runner --install

MegaLinter помогает навести порядок в кодовой базе, поддерживает 60 языков, в том числе Java и готов к использованию из коробки
Можно установить MegaLinter как GitHub Action или внедрить с CI-процесс

🖥 GitHub
🟡 Доки

@javalib #java
Please open Telegram to view this post
VIEW IN TELEGRAM
Please open Telegram to view this post
VIEW IN TELEGRAM
👍83🔥2
Хотите создавать архитектуры, которые выдерживают огромные нагрузки, как в крупнейших российских и международных компаниях?

Присоединяйтесь к курсу «Highload Architect»! Вы научитесь использовать в своих проектах решения, которые выдерживают сотни тысяч и даже миллионы запросов в секунду, сможете правильно оптимизировать работоспособность серверов и станете востребованным специалистом для развивающихся компаний.

👨‍💻 Программа подходит для веб-разработчиков, тимлидов, архитекторов, технических руководителей и SRE-специалистов. Готовы к вызовам высоких нагрузок?

Успейте начать обучение со скидкой 5%🤑 (акция до 30.06)🤑

Пройдите вступительный тест, чтобы занять место в группе по спеццене: https://vk.cc/cy1sOJ

Реклама. ООО «Отус онлайн-образование», ОГРН 1177746618576
4👍3🔥2😁1
Переверни игру за день в офисе Финтеха и Фантеха Яндекса 🙃

Зовём бэкенд-разработчиков на вечеринку JavaKotDay, чтобы поменяться ролями и почувствовать себя яндексоидом ещё до того, как примешь оффер.

Приходи к нам в гости 14 июля, чтобы порулить на встречах по планированию, поважничать в переговорке и приложить руку к сервисам, которыми пользуются миллионы!

А между делом вкусно поедим, посплетничаем у кулера и обсудим планы с нашими CTO. Кто мы? 😜 Фантех — это Кинопоиск, Плюс, Музыка, Афиша и Букмейт. 🤑 Финтех — Пэй, Сплит, Сейвы, ID.

Хочешь на JavaKotDay? Подтверди свои скиллы и реши задачку на сайте →
👍63🔥2
This media is not supported in your browser
VIEW IN TELEGRAM
🖥 Turms — open-source движок для обмена мгновенными сообщениями для 100K~10M одновременных пользователей; написан на Java

git clone --depth 1 https://github.com/turms-im/turms.git
cd turms
docker plugin install grafana/loki-docker-driver:latest --alias loki --grant-all-permissions
docker compose -f docker-compose.standalone.yml up --force-recreate


На изображении показана эталонная архитектура Turms: сервисы, обведенные пунктирными линиями, являются необязательными, а сервисы, обведенные сплошными линиями, — обязательными.

🖥 GitHub
🟡 Доки

@javalib #java
Please open Telegram to view this post
VIEW IN TELEGRAM
👍84🔥2😁1
🔥 Время прокачивать навыки в проектировании и расти!

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

Ответишь успешно — пройдешь на курс «Архитектура и шаблоны проектирования» от OTUS по специальной цене со скидкой.

❗️На курсе ты научишься применять шаблоны проектирования и SOLID в разработке всего за 4 месяца под руководством опытных экспертов.

Именно эти навыки дадут мощное конкурентное преимущество IT-специалистам и повысят твою востребованность и доход!

➡️ ПРОЙТИ ТЕСТ:

https://vk.cc/cy3TIN

💥 Пройдете тест и бонусом получишь:

– Доступ к записям лучших вебинаров курса

– Скидку на онлайн-курс «Архитектура и шаблоны проектирования»

🎁 А при покупке курса индивидуальную консультацию с преподавателем!
👍53🔥2😁1
🖥 Tika — набор инструментов на Java для извлечения текста и метаданных из PPT, XLS и PDF и многих других типов данных

Tika можно использовать как компонент индексации в поисковых системах, в системах, связанных с переводом и во многих других приложениях

🖥 GitHub
🟡 Wiki

@javalib #java
Please open Telegram to view this post
VIEW IN TELEGRAM
👍143🔥2🍾1
Можно ли считать Final переменную константой?

Поскольку у нас не получится присвоить новое значение для final переменной, кажется, что это переменные константы. Но это только на первый взгляд. Если тип данных, на который ссылается переменная — immutable, то да, это константа.

А если тип данных mutable, то есть изменяемый, при помощи методов и переменных можно будет изменить значение объекта, на который ссылается final переменная, и в таком случае назвать ее константой нельзя. Так вот, на примере видно, что часть финальных переменных действительно константы, а часть — нет, и их можно изменить.


@javalib #java
👍274🔥3😁1
erid: LjN8KVFn7

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

Ищи новую работу с удовольствием. Переходи на канал Лиги Цифровой Экономики. Там мы говорим о технологиях, новостях и трендах мира ИТ, а также предлагаем актуальные вакансии для роста твоей карьеры.

Все подробности ищи у нас в канале.

https://news.1rj.ru/str/digitalleague
6👍3🔥2😁1
🖥 fastjson2 — очень быстрая библиотека Java для работы с JSON

<dependency>
<groupId>com.alibaba.fastjson2</groupId>
<artifactId>fastjson2</artifactId>
<version>2.0.51</version>
</dependency>


Особенности fastjson2:

— скорость работы fastjson2 намного больше, чем у других популярных JSON библиотек, включая jackson/gson/org.json, бенчмарки тут

— fastjson2 поддерживает новые возможностей JDK, включая JDK 11/JDK 17, имеется поддержка Record, поддержка GraalVM Native-Image

— fastjson2 поддерживает JSONPath, поддерживает синтаксис SQL:2016 JSONPath

🟡 Доки
🖥 GitHub

@javalib #java
Please open Telegram to view this post
VIEW IN TELEGRAM
Please open Telegram to view this post
VIEW IN TELEGRAM
👍234🔥2😁1
Контейнер Optional

Optional — это контейнер, который может содержать какое-то значение или не содержать ничего.
Он используется для обозначения отсутствия значения вместо null. Это позволяет избежать ошибок NullPointerException.

Optional появился в Java 8. Он представлен классом java.util.Optional.
Чтобы создать экземпляр Optional, используются статические методы:
— empty() для пустого Optional.
— of() для Optional с заданным значением.

Для получения значения из Optional используются методы get(), или orElse() с указанием значения по умолчанию. Также есть методы фильтрации значений, например filter(), map() и flatMap().
👍219🔥3😁1
👩‍💻 Тест по Java от OTUS

Проверь насколько хорошо ты знаешь Java и готов освоить Spring!

Ответишь — пройдешь на продвинутый курс "Разработчик на Spring Framework" от OTUS по специальной цене.

➡️ ПРОЙТИ ТЕСТ: https://vk.cc/cy7VhS

🎫 Курс можно приобрести в рассрочку

Реклама. ООО «Отус онлайн-образование», ОГРН 1177746618576, www.otus.ru
Please open Telegram to view this post
VIEW IN TELEGRAM
3👍3🔥2😁1
Предположим, есть метод, который может выбросить IOException и FileNotFoundException в какой последовательности должны идти блоки catch? Сколько блоков catch будет выполнено?

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

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

@javalib #java
👍204🔥4
🖥 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
🟡 Доки

@javalib #java
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥9👍54
charBuffer

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

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

В этом примере создается строка «Hello». Затем из этой строки получаем буфер символов методом charBuffer().
В цикле посимвольно читаем из буфера символы и выводим их на экран.
👍194🔥4😁1
Java Guru - вопросы и задачи с собеседований. Канал с помощью которого ты точно получишь оффер!

👩‍💻 Android Developer - канал для андроид разработчиков! Статьи, вопросы и задачи с собеседований, лайфхаки.

👩‍💻 Kotlin Developer - самый топовый канал для котлин разработчика!

📕 Книги для Java программиста - канал с книгами по Java. Постоянно выходят новинки как на русском так и на английском языке!

📰 Java News - канал с последними новостями из мира Java!
Please open Telegram to view this post
VIEW IN TELEGRAM
👍64🔥2
🖥 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

@javalib #java
Please open Telegram to view this post
VIEW IN TELEGRAM
👍423🔥2😁1