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
FileChannel

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

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

FileChannel эффективнее потокового ввода-вывода, т. к. избавляет от накладных расходов на создание объектов и буферизацию.
Используется в приложениях, где нужна высокая производительность работы с файлами.
👍202
Уже 26 февраля в Слёрме стартует 6 поток курса «Apache Kafka для разработчиков». Это углублённый курс с практикой на Java или Golang и платформой Spring+Docker+Postgres. 

10 часов чистой практики, 5 АМА-сессий со спикерами Слёрма, запись курса на два года, а на выходе – сертификат и новый стек ценных навыков.
Всего 5 недель заменят месяцы поиска литературы и чтения документации.

Ты сможешь мастерски:
⚡️ Создавать типовые приложения с использованием Кафки;
⚡️ Настраивать приложения так, чтобы они не развалились в проде;
⚡️ Строить архитектуру между микросервисами.

Ты пообщаешься со спикерами в реальном времени, получишь ответы на все вопросы и станешь частью профессионального комьюнити.

➡️ Занимай место по ссылке.

Реклама. ООО «Слёрм» г. Лиски, ИНН 3652901451
10👍3🔥2
Интерфейс Delayed

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

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

Этот интерфейс реализуется классами, которые должны храниться в очереди с задержкой, например в DelayQueue.
👍204🔥2
Класс java.lang

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

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

Также включает класс Thread для многопоточного программирования, интерфейсы Cloneable, Runnable, Comparable, определяет класс Class, представляющий классы времени выполнения.
👍21🔥64
💗 Если задуматься, с работой мы выстраиваем отношения так же, как с окружающими. И раз есть четыре типа привязанности к близким, то и к работе они должны быть.

Нашли классный тест от Карьерного маркетплейса hh.ru как раз на эту тему. Всего пять вопросов — и вы узнаете, какой тип привязанности ваш. А ещё вместе с результатами вы получите скидку 14% на карьерную консультацию с 12 по 19 февраля.

Реклама. ООО «Хэдхантер»‎, 129085, г. Москва, ул. Годовикова, д.9, стр.10, ОГРН 1067761906805. erid: 2VtzqvcEeTs
Подробнее об условиях акции.
👍74🎉1
Java varargs

Java varargs (variable arguments) — это механизм, предоставляемый Java, который позволяет методу принимать переменное количество аргументов одного типа. Он позволяет передавать любое количество аргументов заданного типа в метод, без явного указания массива аргументов.

Для объявления переменного количества аргументов в Java используется троеточие (...) после типа данных аргумента в определении метода.
👍193
Как проходит техническое собеседование инженеров мобильной разработки в RuStore

Старший Android-разработчик в команде монетизации RuStore рассказывает, из каких ингредиентов можно собрать полезное и эффективное техническое интервью.

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

Читать статью
8👍3
👩‍💻 Java в контейнере: особенности эксплуатации

Java и контейнеры Linux — технологии совсем неновые, да и использовать их вместе начали отнюдь не вчера. Многие из нас имеют такой стек в промышленной эксплуатации, и вроде бы даже все работает.

Но, если что-то может пойти не так, надо ставить вопрос не «если», а «когда». Что же может пойти не так в контейнеризованной JVM? Чтобы дать некоторые ответы на этот вопрос, копнуть придется глубоко. В докладе освещены нюансы работы Linux, контейнеризации и JVM друг с другом.

Основные темы
доклада: использование ресурсов системы и особенности работы лимитов, сетевые особенности контейнеров и диагностика JVM в контейнере.
Please open Telegram to view this post
VIEW IN TELEGRAM
👍94🔥3
Уже год работаешь в ИТ и готов к росту и масштабным проектам?🚀 Прокачай скиллы c Холдингом Т1!

Приглашаем Java-разработчиков в Открытую школу Т1 — программу найма в формате ИТ-интенсива: offer week + обучение без отрыва от работы.

🤚Поможем улучшить навыки и освоить новые перспективы, если ты готов к переменам в карьере, имеешь опыт работы Java-разработчиком от года и хочешь присоединиться к команде лидера* ИТ-рынка — Холдинга Т1!

📚В программу включили блоки по spring framework, docker, SOLID и др. Подробнее на сайте.

📌Как это работает?
🔹Подай заявку на сайте
⬇️Рассмотрим резюме, если твой профиль подойдет, то попросим пройти тестирование👌 При успешном прохождении — зачислим в группу
🔹Лучшим назначим интервью и направим оффер!

Формат обучения: онлайн (8 часов в неделю) Программа длится 1 месяц

🏳️Принимаем заявки до 25 февраля!

*По версии CNews Analytics 2022, TAdviser 2021 и RAEX 2023
👍74🔥2
Алгоритмы (2023) PDF

В этом руководстве содержатся основные сведения об алгоритмах: анализируются различные типы алгоритмов, рассматриваются мето-ды их построения (рекурсия, динамическое программирование и др.), приводятся практические примеры. В конце каждой главы приводятся упражнения, направленные на закрепление пройденного.Для изучения материала требуется знание основ дискретной математики и методов доказательств, а также представление об основных вычислительных задачах и алгоритмах. Желателен практический опыт работы с языком программирования, поддерживающим косвенную адресацию и рекурсию.Издание адресовано студентам и преподавателям технических вузов, а также тем, кто хочет изучить основы алгоритмизации.
19👍8🔥4😁3
Как используется класс Future?

Класс Future является частью пакета java.util.concurrent, и он используется для представления результата асинхронной операции или задачи, которая выполняется в фоновом потоке. Future позволяет вам управлять и получать результаты выполнения задачи в будущем, даже если она еще не завершилась.
👍237🔥4
🔥 Хардовый Тест по Java QA (не для новичков), который проходит всего 30% 🔥

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

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

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

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

Реклама. ООО «Отус онлайн-образование», ОГРН 1177746618576, www.otus.ru
6👍4🔥3
Задача с LeetCode (Max Consecutive Ones)

Дан массив, состоящий только из ноликов и единиц. Необходимо вычислить максимальную длину подмассива, в котором присутствуют только единицы (1, 1, 0, 1, 1, 1 | Длина — 3).

Переменные count и max равны 0. count используется для подсчета текущего количества последовательных единиц, а max — для хранения максимального значения.

Внутри цикла for проверяется, является ли текущий элемент массива nums[i] равным 1. Если да, то увеличиваем значение count на 1. Если нет, то count присваивается значение 0, так как последовательность прерывается.

Функция Math.max(count, max) находит максимальное значение между count и max. Значение count обновляется на каждой итерации цикла, поэтому теперь max будет содержать максимальное количество последовательных единиц на текущей итерации.
👍226🔥62
🔥 Хардовый тест для разработчиков (не для новичков), который проходит всего 30% 🔥

👉 Пройдите тест из 20 вопросов онлайн-курса «Kotlin Backend Developer. Professional» и узнайте, осилите ли вы обучение в OTUS. 

🟢 Пройти тест: https://otus.pw/fO3M/

💣 Все, кто успешно пройдет тест, получит доступ к открытому уроку курса для знакомства с форматом обучения и спец.цену на курс.

💻 За 5 месяцев обучения на курсе вы:
— использовать язык Kotlin для разработки серверных приложений
— применять асинхронное и многопоточное программирование с корутинами
— использовать Kotlin совместно с различными фреймворками: Spring, Ktor, бессерверными библиотеками
— строить хранилища на базе SQL, NoSQL и NewSQL (Postgres, Cassandra, ArcadeDb)

Реклама. ООО "ОТУС ОНЛАЙН-ОБРАЗОВАНИЕ". ИНН 9705100963. erid: LjN8KPA8j
👍8🔥43
Декоратор - Шаблоны проектирования в деталях

Декоратор - популярный шаблон проектирования, используемый в тех случаях, когда требуется добавить некоторому объекту новое поведение или состояние без использования наследования.

В рамках серии роликов "Шаблоны проектирования в деталях" автор рассказывает о популярных шаблонах проектирования с примерами кода на языке программирования Java
.
👍153🔥3
Начал изучать Java?☕️

Приходи на бесплатный урок «Основы объектно-ориентированного программирования в Java» от OTUS.

На вебинаре обсудим основы ООП, лежащего в основе языка Java, посмотрим как его использовать при написании кода, и какие преимущества он предоставляет.

Урок будет полезен тем, кто хочет:
— Начать изучать Java с нуля.
— Не знает с какой стороны подойти к теме ООП (не только в языке Java).

Занятие пройдёт 22 февраля в 20:00 мск и будет приурочено к старту курса «Java-разработчик». Программа обновлена и полностью отвечает современным требованиям рынка.

➡️ Для бесплатного участия и получения записи регистрируйтесь прямо сейчас: регистрация

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

Метод before() используется для сравнения порядка двух объектов типа Date.
Он позволяет проверить, идет ли одна дата перед другой.

Метод before() определен в классе java.util.Date и имеет следующий формат:
boolean before(Date date)

Он сравнивает текущий объект Date с датой, переданной в качестве параметра, и возвращает:
— true, если текущая дата идет раньше переданной даты.
— false, если текущая дата идет позже переданной даты или эти даты равны.

Этот метод часто используется для сравнения и сортировки дат, например:
— Проверить, было ли какое-то событие до определенной даты.
— Отсортировать список дат по возрастанию или убыванию.
— Найти самую раннюю или самую позднюю дату в наборе.

В этом примере создаются две даты, с помощью метода before() мы проверяем, идет ли date1 раньше date2.
Так как date1 содержит более раннюю дату, то метод before() возвращает true.
👍195🔥4
👩‍💻 Пройди тест по Java и проверь свои знания.

Ответишь
— пройдешь на продвинутый курс "Java Developer. Professional" от OTUS по специальной цене + получишь доступ к записям открытых уроков курса курса

🔝 Обновленная, расширенная программа

Группа стартует 29 февраля - успей присоединится на выгодных условиях.

👉 ПРОЙТИ ТЕСТ: https://otus.pw/0OlQ/

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

Третий ролик серии «SOLID в деталях» посвящён принципу подстановки Барбары Лисков (Liskov Substitution Principle; LSP).

В серии роликов «SOLID в деталях» автор постарается подробно рассказать о принципах SOLID, а так же продемонстрировать их практическое применение.
👍10🔥53🎉2