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
Класс java.lang

Класс java.lang — это базовый пакет, который автоматически импортируется в любую программу на Java.

Содержит фундаментальные классы, как Object, String, Integer и т. д., определяет общие классы-исключения, такие как NullPointerException, ArithmeticException, класс Math с математическими функциями, System для взаимодействия с системой.

Также включает класс Thread для многопоточного программирования, интерфейсы Cloneable, Runnable, Comparable, определяет класс Class, представляющий классы времени выполнения.
1👍214🔥4🍾2
Хотите узнать, как использовать Kafka Streams Processor API для создания эффективных приложений?

Всего за пару часов узнаете, как разрабатывать эффективные и мощные приложения потоковой обработки, и сможете применять эти знания в своих проектах.

Присоединяйтесь к открытому вебинару 27 августа в 20:00 мск!

Урок будет полезен разработчикам и архитекторам.

Спикер Вадим Заигрин — опытный разработчик, Data Engineer и Data Scientist, Team Lead команд инженеров данных на разных проектах.

Встречаемся в преддверии старта курса «Apache Kafka». Все участники вебинара получат специальную цену на обучение!

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

Реклама. ООО «Отус онлайн-образование», ОГРН 1177746618576, www.otus.ru
14👍4🔥2
🌟 Voyager — это библиотека Java (и Python) для быстрого приближенного поиска ближайших соседей

pip install voyager

Voyager может использоваться как из Python, так и из Java;
библиотека опирается на алгоритм HNSW, основанный на пакете hnswlib, плюс использует много дополнительных функций.
Voyager активно используется в продакшене в Spotify

🖥 GitHub
🟡 Доки
🟡 Видео про Voyager

@javalib #java
Please open Telegram to view this post
VIEW IN TELEGRAM
Please open Telegram to view this post
VIEW IN TELEGRAM
110👍7🔥2
'result = 1 == 2
print(result)  # True


Сентябрь — время знаний и… осенних спецусловий на курсы Cлёрма!

С 22 августа по 15 сентября: для вас — два курса по цене одного, для нас — открытие учебного сезона 🛎

К каждому старту курса в этот период мы добавили видеокурс, который отлично дополнит основной материал и достанется вам бесплатно. 

Ближайшие старты наших курсов:

⚙️ Python для инженеров
⚙️ Golang для инженеров
⚙️ Ansible: Infrastructure as Code
⚙️ DevOps Upgrade
⚙️ Администрирование Linux. Мега
⚙️ Kubernetes для разработчиков
⚙️ Data Science

⚡️Подробнее об акции — на этой странице: slurm.io/set2024

Присоединяйтесь! Будем учиться и снижать риски возникновения осенней хандры 🫡

Реклама ООО «Слёрм» ИНН 3652901451
1👍53🔥2
Локальные переменные в лямбда-выражениях

Java позволяет использовать локальные переменные внутри лямбда-выражений, но с одним важным ограничением: переменные должны быть эффективно финальными (effectively final).

Это означает, что после их инициализации переменные не могут быть изменены.

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


@javalib #java
115🔥6
👩‍💻 Типы данных Java: идентификаторы и примитивы

Хотите глубже понять типы данных в Java? Ждем вас на открытом вебинаре 2 сентября в 20:00 мск,

где мы разберем:

➡️ как работать с идентификаторами и примитивами в Java;
➡️ как решать задачи, аналогичные экзаменационным, и набить руку на примерах;
➡️ все возникающие вопросы.

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

Спикер Дмитрий Коган — опытный разработчик, председатель совета предприятия в DXC, публицист, спортивный журналист и блогер.

Встречаемся в преддверии старта курса «Углубленное изучение языка Java».
Все участники вебинара получат специальную цену на обучение!

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

Реклама. ООО «Отус онлайн-образование», ОГРН 1177746618576, www.otus.ru
Please open Telegram to view this post
VIEW IN TELEGRAM
14👍2🔥21
🖥 ProGuard — оптимизатор и обфускатор байткода на Java

ProGuard — это open-source минификатор, оптимизатор и обфускатор байткода Java.
Какие действия выполняет ProGuard?

— обнаруживает и удаляет неиспользуемые классы, поля, методы и атрибуты

— оптимизирует байткод и удаляет неиспользуемые инструкции

— переименовывает оставшиеся классы, поля и методы, используя короткие имена

🖥 GitHub

@javalib #java
Please open Telegram to view this post
VIEW IN TELEGRAM
1👍114🔥3
Интерфейс Delayed

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

Основные методы:
getDelay(TimeUnit unit) — возвращает оставшееся время задержки в указанных единицах измерения.
compareTo(Delayed o) — сравнивает текущий объект с переданным по оставшемуся времени задержки.

Этот интерфейс реализуется классами, которые должны храниться в очереди с задержкой, например в DelayQueue.
1👍153🔥2
📚 Пройди тест на знание Java и получи доступ к 🌿🌿 открытым урокам по Spring

🕗 Два открытых урока можно посмотреть без регистрации и оценить формат обучения. Для доступа ко всем открытым урокам из курса «Разработчик на Spring Framework» от OTUS необходимо пройти входное тестирование: ответить на 21 вопрос и уложиться в тайминг.

📊 -Курс рассчитан на профессионалов с практическим опытом работы на Java.
- Мы будем 5 месяцев погружать вас в теорию и практику Spring Framework.
- Дадим 18 практических работ. Процесс review сдаваемой работы максимально приближен к тому, каким он мог быть на реальном проекте. Помимо этого, мы попросим вас сдать дипломную работу, каких скучных записанных занятий, только живые онлайн-лекции, интересные практические задачи и развернутая обратная связь от лучших экспертов ниши. 📅 Старт группы уже 30 сентября 2024г. Доступна рассрочка на обучение.

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

Реклама. ООО «Отус онлайн-образование», ОГРН 1177746618576, www.otus.ru
Please open Telegram to view this post
VIEW IN TELEGRAM
1👍64🔥3
🖥 CATS — это фаззер REST API и инструмент тестирования для эндпойнтов OpenAPI, написанный на Java

brew tap endava/tap
brew install cats


CATS автоматически генерирует тесты, запускает их и сообщает о результатах, требуя минимальных усилий по написанию кода. Тесты также не требуют обслуживания.

🖥 GitHub
🟡 Доки

@javalib #java
Please open Telegram to view this post
VIEW IN TELEGRAM
Please open Telegram to view this post
VIEW IN TELEGRAM
1👍154🔥4😁3
Хотите уверенно проектировать гибкие, масштабируемые и надежные системы, используя современные архитектурные практики?

Присоединяйтесь к онлайн-курсу «Software Architect», где за 4 месяца под руководством практикующих экспертов вы разберёте:
✔️ актуальные тактики по работе с атрибутами качества архитектуры: доступность, отказоустойчивость, безопасность и многое другое;
✔️ основные паттерны и стили архитектуры, их плюсы, минусы и подводные камни;
✔️ технологические домены, включая бекенд, BigData, мобильную разработку, фронтенд и хранилища данных.

👨‍💻🛠👨🏻‍💻 Программа разработана для архитекторов, разработчиков и тимлидов.

Старт группы уже 30 августа. Доступна рассрочка и 🎁 10% скидка по промокоду otus10 до 31.08 включительно!

➡️ Пройдите тест прямо сейчас, чтобы чтобы активировать скидку и получить доступ ко всем открытым урокам курса: https://vk.cc/czZZ81

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

FileChannel используется для работы с файлами на низкоуровневом вводе-выводе.

Основные возможности класса FileChannel:
— Чтение данных из файла и запись данных в файл.
— Работа с файлом по смещениям. Можно получить текущее смещение в файле, переместить указатель чтения/записи в нужное смещение.
— Маппинг файлов в память. Файл можно отобразить в память и работать с его содержимым как с массивом байтов.
— Блокировка частей файла. Позволяет защитить критические участки файла от одновременной записи.
— Асинхронная работа с файлами.

FileChannel эффективнее потокового ввода-вывода, т. к. избавляет от накладных расходов на создание объектов и буферизацию.
Используется в приложениях, где нужна высокая производительность работы с файлами.
112👍10🔥3❤‍🔥2
🎯 Хотите стать Java-разработчиком, но думайте, что изучение основ программирования — это скучно?

Только не в нашем формате! Ждём вас на онлайн-курсе «Специализация Java-разработчик». Только живые вебинары, вы освоите самые востребованные инструменты и лучшие практики.

Ознакомится с курсом можно на бесплатном открытом уроке «Введение в Java Collections: обзор интерфейсов и их имплементаций».

📌 Урок пройдет 11 сентября в 20:00 мск.

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

Реклама. ООО «Отус онлайн-образование», ОГРН 1177746618576, www.otus.ru
Please open Telegram to view this post
VIEW IN TELEGRAM
14👍3🔥2
🖥 TornadoVM — плагин, позволяющий автоматически запускать программы Java на гетерогенном оборудовании

Пару месяцев назад вышла стабильная версия open-source проекта TornadoVM 1.0 для запуска Java на гетерогенном оборудовании: CPU, GPU и FPGA.

TornadoVM — это плагин к OpenJDK и другим дистрибутивам JDK (например, GraalVM, Red Hat Mandrel, Amazon Corretto, Microsoft OpenJDK, Azul Zulu), который позволяет разработчикам автоматически запускать программы Java на гетерогенном оборудовании. TornadoVM нацелен на устройства, совместимые с OpenCL, PTX и Level-Zero, которые включают в себя многоядерные процессоры, выделенные графические процессоры (Intel, NVIDIA, AMD), интегрированные графические процессоры (Intel HD Graphics и ARM Mali) и FPGA (Intel и Xilinx).

В версии TornadoVM 1.0 появился новый API для размещения объектов вне кучи и коллекций массивов, улучшенная обработка внутреннего байт-кода, поддержка большего количества математических операций в OpenCL/PTX/SPIR-V, 16 векторных типов данных для float/double/int, поддержка драйвера Mesa Rusticl OpenCL, улучшение порядка устройств по умолчанию на основе максимального размера потока, обновление программы установки, а также значительно доработана документация проекта.

🖥 GitHub
🟡 Доки

@javalib #java
Please open Telegram to view this post
VIEW IN TELEGRAM
Please open Telegram to view this post
VIEW IN TELEGRAM
1🔥84👍2
Хотите узнать, как легко и эффективно работать с потоковыми данными с помощью Alpakka?

Всего за пару часов вы разберете работу с потоковыми данными, узнаете, что такое «продьюсер» и «консьюмер», и научитесь применять эти знания в различных областях, где данные отсылаются и принимаются через Kafka.

Присоединяйтесь к открытому вебинару «Потоковая обработка данных с помощью Alpakka» 5 сентября в 20:00 мск!

Урок будет полезен всем, кто работает с потоковыми данными.

Спикер Валентин Шилин — старший программист/аналитик данных в зарубежной компании.

Встречаемся в преддверии старта курса «Apache Kafka». Все участники вебинара получат специальную цену на обучение!

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

Реклама. ООО «Отус онлайн-образование», ОГРН 1177746618576
13👍2🔥2😁1
Инкапсуляция

Инкапсуляция — это принцип ООП, который заключается в сокрытии внутреннего представления класса от внешнего мира. Для этого используются модификаторы доступа: private, protected, public.

Обычно поля класса делаются private или protected, а методы — public. Это позволяет скрыть реализацию класса и предоставить к ней контролируемый доступ через public методы.

При запуске этой программы на выходе мы получим:
John 0
119👍8🔥32
Apache Ignite 3.0 — платформа для распределенного кэширования и вычислений

Недавно вышла стабильная версия Apache Ignite 3.0 — это open-source платформа, предоставляющая возможности для распределенного кэширования и вычислений в реальном времени.

Apache Ignite предлагает разработчикам мощный набор инструментов для работы с большими данными. Платформа позволяет организовать распределенное хранилище данных и обрабатывать их с высокой производительностью, используя CPU и GPU.

В версии Apache Ignite 3.0 были реализованы следующие улучшения:

Новый API для асинхронных операций и улучшенная поддержка транзакций.

Оптимизация работы с распределенными кешами и поддержка новых типов данных.

Интеграция с популярными инструментами для анализа данных, такими как Apache Spark и Apache Flink.

Улучшенная документация и обновленный интерфейс для мониторинга и администрирования.


🖥 GitHub
🟡 Доки

@javalib #java
1👍94🔥3😁2
👩‍💻 Абстрактный класс в Java

Вы пишете код для обслуживания банковских операций и определяете в нем три класса:

🔹 Person, описывает человека;
🔹 Employee, описывает банковского служащего;
🔹 Client, представляет клиента банка.

Классы Employee и Client будут производными от класса Person, так как оба класса имеют общие поля и методы. Поскольку все объекты будут представлять сотрудника или клиента банка, то напрямую мы от класса Person создавать объекты не будем.

Поэтому имеет смысл сделать его абстрактным, как на картинках.

Тем самым мы придерживаемся принципам ООП — наследование и полиморфизм (переопределяем метод display()). Также есть Инкапсуляция благодаря private полям класса Person.

С помощью всего этого, ваш код более гибкий для изменений, более читабельный и поддерживаемый.
Please open Telegram to view this post
VIEW IN TELEGRAM
Please open Telegram to view this post
VIEW IN TELEGRAM
👍138🎉3