Java библиотека
31.6K subscribers
2.32K photos
78 videos
8 files
2.05K links
Книги, статьи, мемы и многое другое для Java программиста!

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

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

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

Сообщество VK https://vk.com/javatutorial
Download Telegram
Интерфейс Supplier

Интерфейс Supplier — это функциональный интерфейс в языке программирования Java, определенный в пакете java.util.function. Он представляет собой интерфейс, который может использоваться для предоставления значений, но не принимает аргументов. В этом интерфейсе есть один метод, который не принимает аргументов и возвращает значение.

Метод Supplier:
T get();

Где T — это тип возвращаемого значения.

Supplier может быть полезным, когда вам нужно получить значение, но не требуется передавать какие-либо аргументы для его получения. Этот интерфейс часто используется, например, в лямбда-выражениях и стримах для предоставления значений.
👍215🔥2
Что нужно знать для работы с PostgreSQL?

Расскажет опытный эксперт на бесплатном практическом уроке «MVCC, vacuum и autovacuum в PostgreSQL» от OTUS

На вебинаре мы разберём как работают MVCC, vacuum и autovacuum в postgres

Расскажем как работают мультиверсионирование и механизмы оптимизации в PostgreSQL

Встречаемся 12 февраля в 20:00 мск в рамках курса «Базы данных». Доступна рассрочка на обучение!

👉 Регистрация
https://otus.pw/Wwao/?erid=LjN8KXrJ5
👍53🎉3
Как обеспечить безопасность в Docker контейнерах?

💻Расскажет Senior DevOps Engineer Андрей Бирюков на бесплатном практическом уроке от OTUS, где вы вместе с экспертом обсудите:

- разбор практик безопасной сборки, тестирования и Run-Time защиты Docker контейнеров;
- Docker Security топ-10 лучших практик;
- обзор Cloud Native Buildpacks.

👉Встречаемся 14 февраля в 20:00 мск в рамках курса «Внедрение и работа в DevSecOps».

Пройдите короткий тест прямо сейчас, чтобы занять место на уроке и получить запись: https://otus.pw/xIzu/


Реклама. ООО «Отус онлайн-образование», ОГРН 1177746618576, www.otus.ru
4👍2😁1
Метод compareTo()

Используется для сравнения двух объектов. Обычно он применяется к объектам, реализующим интерфейс Comparable, чтобы определить их относительный порядок. Вот как обычно выглядит сигнатура метода compareTo():

int compareTo(T obj)

где T — это тип объектов, с которыми сравнивается текущий объект. Метод возвращает отрицательное целое число, ноль или положительное целое число в зависимости от того, как текущий объект сравнивается с переданным объектом obj.

Отрицательное число указывает на то, что текущий объект меньше, чем объект obj.
Ноль указывает на то, что текущий объект равен объекту obj.
Положительное число указывает на то, что текущий объект больше, чем объект obj.
👍167
Предметно-ориентированное проектирование в Enterprise Java (2020) PDF

В книге подробно рассматриваются реализации шаблонов предметно-ориентированного проектирования с применением различных инструментальных средств и рабочих программных сред из Enterprise Java Space. При таком подходе читатель получает завершенную картину и возможность практического применения любого из этих средств в процессе предметно-ориентированного проектирования.
В начальных главах описывается эталонная реализация проекта Cargo Tracker - создание монолитного приложения с использованием платформы Jakarta EE. Затем рассматривается полный процесс преобразования монолитного приложения в архитектуру, основанную на микросервисах. В заключительных главах демонстрируется создание версии приложения с использованием шаблонов CQRS и Event Sourcing (ES); основной рабочей средой является Axon Framework.
👍95🔥3
⁉️Как написать проект одновременно на двух языках – Kotlin и Rust?

 👨‍🏫Расскажет Сергей Окатов – кандидат физико-математических наук, руководитель управления разработки БФТ.ЦР. Встречаемся на бесплатном практическом уроке от OTUS, где мы:

- расскажем о двух молодых и активно развивающихся языках, вошедших в TIOBE-20; - обсудим их преимущества, недостатки и причины, почему они занимают ниши популярных языков Java, JS и C/C++;
- изучим сочетание преимуществ обоих языков;
- продемонстрируем, как можно интегрировать их в одном проекте.

📆Занятие пройдёт 13 февраля в 19:00 мск и будет приурочено к старту курса «Kotlin Backend Developer. Professional». Доступна рассрочка на обучение!

 ➡️Пройдите бесплатный тест прямо сейчас, чтобы занять место на открытом уроке и получить запись: https://otus.pw/gf30/

Реклама. ООО "ОТУС ОНЛАЙН-ОБРАЗОВАНИЕ". ИНН 9705100963. erid: LjN8JwyAh
👍931
👩‍💻 Client, Resource Server, Login - Spring Security OAuth 2.0

В одном из предыдущих роликов автор рассказал теорию об OAuth 2.0 и OIDC, а на этот раз предлагает перейти к практике. Spring Security реализует практически полноценную поддержку протокола авторизации OAuth 2.0 и его расширения аутентификации OpenID Connect (OIDC), и с минимальными изменениями в своём проекте вы можете внедрить поддержку этих протоколов. В этом ролике автор рассматривает возможность применения Spring Security OAuth 2.0 для реализации сервера ресурсов, клиента и логина в веб-приложениях на основе Spring WebMVC и Spring Webflux. Так же в качестве сервера авторизации снова будет рассмотрен Keycloak, а так же процесс его настройки.
Please open Telegram to view this post
VIEW IN TELEGRAM
14👍4🔥3💯1
Отус приглашает 15 февраля в 20:00 мск на бесплатный вебинар «Роль Apache Kafka в логировании».

Вебинар является частью продвинутого онлайн-курса "Observability: мониторинг, логирование, трейсинг".

➡️ Регистрация на вебинар: https://vk.cc/cuuEWc

На вебинаре мы разберём:
роль брокера в Kafka;
как Kafka интегрируется в общую систему сбора данных;
индексы в Kafka;
взаимодействие с общим стеком логирования.

Реклама. ООО «Отус онлайн-образование», ОГРН 1177746618576, www.otus.ru
Please open Telegram to view this post
VIEW IN TELEGRAM
8👍2🔥21
Можно ли считать Final переменную константой?

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

А если тип данных mutable, то есть изменяемый, при помощи методов и переменных можно будет изменить значение объекта, на который ссылается final переменная, и в таком случае назвать ее константой нельзя. Так вот, на примере видно, что часть финальных переменных действительно константы, а часть — нет, и их можно изменить.
22👍13🔥2
💯Как автоматизатору тестирования на Java прокачать резюме?

Освоить крутой инструмент на бесплатном практическом уроке «Selenium Grid 4, многопоточное выполнение JUnit/TestNG» от OTUS, где мы:

- познакомимся с Selenium Grid 4 и настроим его;
- научимся запускать тесты с помощью Selenium Grid 4;
- рассмотрим параллельный запусĸ тестов через JUnit/TestNG.

🗓Занятие пройдёт 14 февраля в 20:00 мск и будет приурочено к старту курса «Java QA Engineer. Professional». Доступна рассрочка на обучение!

➡️Пройдите бесплатный тест прямо сейчас, чтобы занять место на открытом уроке и получить запись: https://otus.pw/NQn4/

Реклама. ООО «Отус онлайн-образование», ОГРН 1177746618576
Please open Telegram to view this post
VIEW IN TELEGRAM
👍73🔥2😁2
JAVA FROM EPAM (2020)

Пособие предназначено для программистов, начинающих и продолжающих изучение технологий Java SE. В книге рассматриваются основы языка Java и концепции объектно-ориентированного и функционального программирования. Также изложены аспекты применения библиотек классов языка Java, включая файлы, коллекции, Stream API, сетевые и многопоточные приложения, а также взаимодействие с СУБД и ХМL. В конце каждой главы даются теоретические вопросы по изученной главе, тестовые вопросы по материалу главы и задания для выполнения. В приложениях приведены дополнительные материалы с кратким описанием технологий Log4J2 и TestNG.
🔥17👍84🎉3
Java Guru - вопросы и задачи с собеседований. Канал с помощью которого ты точно получишь оффер!

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

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

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

📰 Java News - канал с последними новостями из мира Java!
Please open Telegram to view this post
VIEW IN TELEGRAM
👍63🔥3😁1
Можно ли в конструкторе использовать return?

Можно, но без возвращаемого значения справа от return. То есть можно использовать return как вспомогательную конструкцию при вычислениях в конструкторе, чтобы срочно закончить (прервать) выполнение дальнейшего кода и завершить инициализацию объекта.

Например, у нас есть класс Cat, и если Cat бездомный — isHomeless = true, нам нужно закончить инициализацию и не заполнять другие поля (ведь они нам неизвестны, так как котик бездомный).

Но если говорить о конкретных значениях, конструктор не может использовать return для возврата какого-то значения, потому что:

При объявлении конструктора у вас не будет ничего похожего на возвращаемый тип;

Как правило, конструктор неявно вызывается во время создания экземпляра;

Конструктор — это не метод: это отдельный механизм, единственная цель которого — инициализировать переменные экземпляра.
👍288🔥5
Облачные технологии. Практическое руководство по созданию инновационных приложений (2024) PDF, ePUB, rtf

Эта книга представляет собой всестороннее руководство по разработке приложений с использованием современных облачных технологий. В ней рассматриваются ключевые аспекты от базовых концепций облачных вычислений до передовых методик и стратегий оптимизации. Читатели получат углубленное понимание моделей облачных вычислений, архитектуры облачных приложений и эффективного использования облачных сервисов и ресурсов. Книга акцентирует внимание на вопросах безопасности в облачных средах и предлагает конкретные рекомендации по управлению доступом, шифрованию данных и мониторингу безопасности. Особое внимание уделяется управлению и мониторингу облачных ресурсов, оптимизации расходов на облачные вычисления, а также внедрению DevOps-практик для ускорения цикла разработки. Книга также затрагивает разработку облачных мобильных приложений, интеграцию с устройствами IoT и использование контейнеризации с оркестрацией.
👍195🔥2😁2
♨️ Анализировать множество показателей и не перегружать приложение?
С Java Flight Recorder – это легко.


JFR:
- Регистрирует множество событий внутри виртуальной машины Java
- Не ухудшает производительность
- Помогает детально разобраться в причинах сбоев и ошибок

Хотите освоить?

Приглашаем java-разработчиков и тестировщиков
на бесплатный онлайн-урок «Обзор инструмента Java Flight Recorder»!

Вы узнаете:
что такое Java Flight Recorder и для каких целей используется
как запустить и остановить JFR
как настроить интересующий вас профиль по событиям JVM
как прочитать готовый журнал с помощью Java Mission Control

Ведущий – Александр Царёв, техлид в Сбере.

После открытого урока вы сможете записаться на курс для продвинутых разработчиков «Java Developer. Advanced».

Событие начнётся 14 февраля в 20:00 МСК
Участие бесплатное

🤝 Зарегистрироваться!

Реклама. ООО «Отус онлайн-образование», ОГРН 1177746618576
Please open Telegram to view this post
VIEW IN TELEGRAM
👍63🔥2
Метод putAll()

Метод putAll() принадлежит интерфейсу Map и используется для добавления всех элементов из одной карты (Map) в другую. Этот метод принимает в качестве аргумента другую карту и добавляет все ее записи в вызывающую карту.

Например, если у вас есть две карты, содержащие данные, и вам нужно объединить их для выполнения операций на полном объеме данных, метод putAll() предоставляет простой способ объединения.
👍16🔥54
Программируй Event Sourcing системы и получи преимущество на рынке!

Уникальный для русскоязычного сегмента курс от преподавателя Спб НИУ ИТМО и разработчика ПО Андрея Суховицкого

Целишься на позиции senior или architect? Хочешь знать больше, чем твои коллеги? Этот курс для тебя!

На курсе ты:
Разберешься в event-driven системах
Узнаешь Event sourcing, паттерн CQRS лучше, чем 99.9% разработчиков
Пройдешь путь создания Kafka, узнаешь best practice для RabbitMQ и как масштабировать свои системы
Твердо поймешь основы Domain-driven design
Глубоко залезешь в паттерн Saga и реализуешь распределенную транзакцию
Будешь уверен в себе на system design интервью

Твоими менторами станут ребята из Амазон, Револют, Яндекс и Озон.

❗️Старт курса - 15 февраля, лекции и задания доступны уже сейчас! ❗️
Промокод JAVALIB на 10% до 15 февраля

Переходи по ссылке и начинай учиться!
🔥93🎅3👍2
👩‍💻 Spring по верхам: Безопасность REST-сервиса

В серии коротких роликов "Spring по верхам" автор вкратце рассказывает о применении экосистемы Spring при разработке приложений на платформе Java.
Четвёртый
ролик посвящён использованию Spring Security для управления доступом к данным при разработке REST-сервисов.
Please open Telegram to view this post
VIEW IN TELEGRAM
9👍3🔥2
🔥 Хардовый Тест по Java QA (не для новичков), который проходит всего 30% 🔥

Оцените свой уровень пройдя короткий тест по автоматизации тестирования на Java! Результат сразу!

👉🏻 ПРОЙТИ ТЕСТ: https://otus.pw/DqAv/

Пройдите тест, смотрите наши открытые уроки - и приходите учиться на онлайн-курс «Java QA Engineer. Professiona». Ждем!

🎁 Сможете успешно пройти тест, получите запись урока с курса бесплатно!

Реклама. ООО «Отус онлайн-образование», ОГРН 1177746618576, www.otus.ru
👍4😁422🔥2