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

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

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

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

Сообщество VK https://vk.com/javatutorial
Download Telegram
Что делать, когда уже выучил Java Core, но его не хватает для трудоустройства?

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

Комплексная программа «Java-разработчик. Middle Developer» в гибридном формате с упором на практику с экспертом поможет превратить  ваши навыки Java в профессиональное мастерство!

В рамках обучения вы будете работать над реальными проектами и сможете получить ценный практический опыт в области разработки.

Старт курса — август 2024 г. Набор уже идет!
Рассрочка без %. Онлайн-формат.
Удобное расписание.

Начните с бесплатного мини-курса, чтобы понять подойдет вам обучение или нет.  
👍52🔥2
Почему Map не наследуется от Collection?

Это связано с различиями в их целях и использовании. Интерфейс Collection представляет собой общие методы для работы с группой объектов, таких как добавление, удаление и проверка наличия элемента. Он ориентирован на работу с коллекциями объектов, где каждый объект является элементом коллекции.

Интерфейс Map, с другой стороны, представляет собой отображение ключей на значения. Он не рассматривает элементы коллекции как отдельные объекты, а предоставляет доступ к значению, связанному с определенным ключом. Это более общий и мощный подход, который не сводится к работе с отдельными элементами коллекции.

Интерфейс Map включает в себя методы для управления парами ключ-значение и обеспечивает эффективный доступ к значениям по ключу. По этим причинам он не является подтипом Collection. Однако, классы, реализующие интерфейс Map, часто предоставляют методы, которые позволяют работать с элементами коллекции или возвращают представление коллекции ключей, значений или записей (ключ-значение).

Таким образом, хотя Map и Collection предоставляют абстракции для работы с группой объектов, они решают разные задачи, и поэтому не существует иерархического отношения наследования между ними.
🔥26👍85😁2
⚡️ Узнайте, как манипулировать байт кодом Java-приложений!

На открытом уроке курса «Java Developer. Advanced» разберем, как просматривать и читать байт код классов и для чего это может быть нужно. Научитесь создавать утилиты для изменения байт кода существующих классов в runtime. Это знание поможет вам улучшить производительность ваших приложений и решать сложные задачи.

Вебинар будет полезен Java-разработчикам, которые сталкиваются с вопросами производительности приложений.

Встречаемся 7 августа в 20:00 мск.

Спикер — Tech Lead в одном из крупнейших российских банков и кандидат технических наук.

👉 Регистрируйтесь прямо сейчас, чтобы посетить бесплатное занятие: https://vk.cc/cz2sa2

Реклама. ООО «Отус онлайн-образование», ОГРН 1177746618576
Please open Telegram to view this post
VIEW IN TELEGRAM
👍62🔥2
🖥 SchemaSpy — инструмент на Java для простого документирования БД

java -jar schemaspy.jar -t mssql05 -dp C:/sqljdbc4-3.0.jar -db DATABASE -host SERVER -port 1433 -s dbo -u USER -p PASSWORD -o DIRECTORY


Обязательно попробуйте SchemaSpy, если вдруг кто не был знаком с этим инструментом.
SchemaSpy сильно упрощает создание документации БД, построение сопутствующих диаграмм и тому подобного.

🖥 GitHub
🟡 Доки

@javalib #java
Please open Telegram to view this post
VIEW IN TELEGRAM
Please open Telegram to view this post
VIEW IN TELEGRAM
👍146🔥2
Sync vs Async: какой способ связи между микросервисами выбрать?

14 августа в 20:00 мск узнайте, как оптимизировать межсервисное взаимодействие и сделать вашу архитектуру непробиваемой.

Мы разберем основные типы межсервисного взаимодействия: синхронное и асинхронное API. Вы узнаете плюсы и минусы каждого подхода, а также поймете важность версионирования API. Мы расскажем о балансе между оркестрацией и хореографией, различиях между Anemic API и Rich API и введем вас в мир IDL (Interface Definition Language) и принципа «API design first».

👨‍💻🛠👨🏻‍💻 Вебинар подходит разработчикам и архитекторам ПО, работающим с микросервисной архитектурой, а также backend и fullstack-разработчикам, стремящимся улучшить межсервисное взаимодействие. DevOps-инженеры и специалисты по API дизайну и интеграции также найдут здесь массу полезной информации.

🔴 Регистрируйтесь прямо сейчас, чтобы не пропустить занятие: https://vk.cc/cz2V8N

Реклама. ООО «Отус онлайн-образование», ОГРН 1177746618576
👍53🔥2
System.arraycopy

System.arraycopy используется для копирования элементов из одного массива в другой. Этот метод предоставляет эффективный способ копирования данных между массивами. Синтаксис System.arraycopy:

public static void arraycopy(Object src, int srcPos, Object dest, int destPos, int length)

Параметры метода включают:

src: Исходный массив, из которого вы хотите скопировать элементы.
srcPos: Начальная позиция в исходном массиве, с которой начнется копирование.
dest: Целевой массив, в который вы хотите скопировать элементы.
destPos: Начальная позиция в целевом массиве, куда будут скопированы элементы.
length: Количество элементов, которое вы хотите скопировать.
👍186🔥31
Не знаете, как правильно реализовать аварийное восстановление (DR) и высокую доступность (HA)?

А теперь представьте, что вы освоили основы DR и HA, понимаете их взаимосвязь и умеете применять архитектурные паттерны для обеспечения надежности и доступности.

Присоединяйтесь к открытому вебинару «Связь DR и HA в современных архитектурных решениях» 14 августа в 20:00 мск и сделайте этот прыжок в будущее! Там мы обсудим все эти проблемы и даже больше, а также разберем возникающие вопросы.

💻 Урок будет полезен Backend- и Fullstack-разработчикам, DevOps-инженерам, архитекторам ПО, IT-менеджерам и руководителям проектов.

🔴 Регистрируйтесь прямо сейчас, чтобы не пропустить мероприятие: https://vk.cc/cz48I4

Реклама. ООО «Отус онлайн-образование», ОГРН 1177746618576
6👍4🔥2
🖥 SonarSource — статический анализатор Java кода

<properties>
<sonar.sources>src/main/java,src/main/webapp</sonar.sources>
</properties>


SonarSource — это анализатор кода для Java-проектов, помогающий писать чистый код.
SonarSource имеет 600+ правил для анализа кода + можно создавать собственные правила;
также анализатор позволяет отслеживать разные метрики, такие как когнитивная сложность кода

🖥 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
📚 Пройди тест на знание Java и получи доступ к 7️⃣2️⃣ открытым урокам по Java

Два открытых урока можно посмотреть без регистрации и оценить формат обучения. Для доступа ко всем открытым урокам из курса «Java Developer. Professional» от OTUS необходимо пройти входное тестирование: ответить на 20 вопросов и уложиться в тайминг.

📊 -Курс рассчитан на профессионалов с практическим опытом работы на Java.
На курсе вы освоите:
- создание современных Java-приложений;
- основы функционирования JVM (сборка мусора, byteCode);
- приемы применения многопоточности;
- решение задач уровня Middle+;
- современные фреймворки Spring WebFlux, Kafka, реактивный Postgres и Kubernetes;
- написание кода чище и быстрее.

Забудьте о скучном обучении — здесь вас ждут настоящие челленджи и нестандартные практические решения. А еще сильные проекты для портфолио и карьерный сапорт! 📅 Старт группы уже 29 августа 2024г. Доступна рассрочка на обучение.

➡️ НАЧАТЬ ТЕСТИРОВАНИЕ

Реклама. ООО «Отус онлайн-образование», ОГРН 1177746618576, www.otus.ru
Please open Telegram to view this post
VIEW IN TELEGRAM
4👍4🔥2
LambdaMetafactory

LambdaMetafactory — это класс в Java, который используется для создания объектов функциональных интерфейсов.

Как работает LambdaMetafactory:

1. LambdaMetafactory используется для создания CallSite, который представляет собой фабричный метод, возвращающий обработчик целевого метода.
2. Обработчик метода — это реализация функционального интерфейса, которая использует invokeExact для вызова целевого метода.
3. Если в лямбда-выражении есть захваченные переменные, то invokeExact принимает эти переменные как фактические параметры.
4. В Oracle JRE 8 metafactory динамически генерирует Java-класс, используя ObjectWeb Asm, который и создает класс-реализацию функционального интерфейса.
👍144
🖥 Karate — open-source инструмент для упрощения тестирования Java-приложений

<dependency>
<groupId>com.intuit.karate</groupId>
<artifactId>karate-core</artifactId>
<version>${karate.version}</version>
<scope>test</scope>
</dependency>


Karate — объединяет в себе API-тестирование, создание моков, тестирование производительности и тестирование UI. Синтаксис Karate нейтрален к Java и прост даже для непрограммистов. Автоматически создаёт HTML-отчеты, а тесты можно запускать параллельно для повышения скорости.

🖥 GitHub
🟡 Доки

@javalib #java
Please open Telegram to view this post
VIEW IN TELEGRAM
Please open Telegram to view this post
VIEW IN TELEGRAM
👍8🔥7🎉32
SocketHandler

SocketHandler — это класс в Java, который используется для отправки сообщений журнала на сервер журнала. Он наследуется от класса Handler и реализует интерфейс StreamHandler.
👍107🔥3
Метод insert()

Метод insert() используется для вставки элемента в список в заданную позицию. Он принадлежит интерфейсу List и его реализациям, таким как ArrayList.

Этот метод вставляет указанный элемент element по заданному индексу index и сдвигает все последующие элементы вправо.

*Индексы начинаются с 0.
*Если индекс меньше 0 или больше размера списка, будет выброшено исключение.
11👍8🔥3🎅1
Не знаете, как эффективно управлять конфигурацией и обеспечивать консенсус данных? Ваши проекты сталкиваются с проблемами масштабируемости и надежности?

А теперь представьте, что ваши системы работают как часы, координация и синхронизация на высшем уровне, а конфигурация управляется легко и без ошибок. Вы освоили Apache Zookeeper и ваши проекты достигают новых высот надежности и масштабируемости!

Присоединяйтесь к открытому вебинару 21 августа в 20:00 мск. Там мы решим все эти проблемы и ответим на возникающие вопросы.

👨‍💻🛠👨🏻‍💻 Урок будет полезен разработчикам, DevOps-инженерам, администраторам систем и сетей, архитекторам ПО и всем, кто хочет глубже понять работу Apache Zookeeper.

🔴 Запишитесь прямо сейчас, чтобы не пропустить мероприятие: https://vk.cc/czgv33

Реклама. ООО «Отус онлайн-образование», ОГРН 1177746618576
👍43🔥3🎅1
🖥 Micronaut — современный фреймворк на базе JVM для создания легко тестируемых приложений

curl -s https://get.sdkman.io | bash
source "$HOME/.sdkman/bin/sdkman-init.sh"
sdk install micronaut


Micronaut — это JVM-фреймворк для создания микросервисов на Java, Kotlin или Groovy. Создатель фреймворка Graeme Rocher. Он создал структуру Grails и применил многие свои знания для создания Micronaut.

Micronaut предоставляет множество преимуществ в качестве платформы.

— Быстрое время запуска

— Низкое потребление памяти

— Эффективное внедрение зависимостей во время компиляции

— Фреймворк реактивный.

🖥 GitHub
🟡 Доки

@javalib #java
Please open Telegram to view this post
VIEW IN TELEGRAM
Please open Telegram to view this post
VIEW IN TELEGRAM
👍205🔥4😁3
👩‍💻 Знакомство с Java Instrumentation API & Java agent

Ждем вас на открытом уроке, где вы узнаете, что такое Java Instrumentation API и для чего нужны агенты. В онлайне изучим агент, позволяющий изменять код бизнес-классов для добавления дополнительных trace-логов для отладки приложения.

Вебинар подходит Java-разработчикам, которые сталкиваются с вопросами производительности приложений.

После занятия вы сможете писать и подключать Java-агенты самостоятельно, а также будете иметь представление о возможностях Java Instrumentation API.

Встречаемся 22 августа в 20:00 мск.

Спикер — Tech Lead в одном из крупнейших российских банков и кандидат технических наук.

👉 Запишитесь на вебинар и прокачайте свои навыки работы с Java: https://vk.cc/czjaoq

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