Java библиотека
31.4K subscribers
2.45K photos
90 videos
10 files
2.26K links
Книги, статьи, мемы и многое другое для Java программиста!

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

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

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

Сообщество VK https://vk.com/javatutorial
Download Telegram
🖥CompreFace — это бесплатная и открытая система распознавания лиц, разработанная компанией Exadel. Она предоставляет функции обнаружения, верификации и распознавания лиц, а также определение наличия маски, возраста и пола. CompreFace поддерживает интеграцию через REST API, работает на CPU и GPU и легко разворачивается с помощью Docker. Система не требует глубоких знаний в машинном обучении и включает управление доступом на основе ролей

🔐 Лицензия: Apache 2.0

🖥 GitHub

Подписывайся на наш канал в Max 🟪
Please open Telegram to view this post
VIEW IN TELEGRAM
👍16🔥52
🖥 Паттерн Прототип (Prototype)

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

Использование:


🟡 Когда необходимо создать объект, похожий на уже существующий, без повторного создания его с нуля.
🟡 В случаях, когда создание объекта «вручную» слишком затратно (например, сложная инициализация).
🟡 Если объект имеет много различных вариантов состояния, и требуется быстро получать новый экземпляр с определенным набором свойств.

Преимущества:

1️⃣ Позволяет создавать новые объекты путем клонирования, что может быть гораздо быстрее, чем создание с нуля.
2️⃣ Можно легко менять клонированные объекты, не затрагивая исходный.
3️⃣ Клонирование полезно для объектов с множеством состояний или структур (например, сложные графические объекты).

Недостатки:

1️⃣ Если объект имеет сложные вложенные структуры, потребуется реализация глубокого копирования, что может быть сложно и затратно.
2️⃣ Для копирования объектов может потребоваться много памяти, особенно если объекты большие.
3️⃣ Клон напрямую зависит от структуры исходного объекта, что может затруднить масштабирование или изменение логики.

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

Подписывайся на наш канал в Max 🟪
Please open Telegram to view this post
VIEW IN TELEGRAM
👍12🔥43
Forwarded from Java Guru 🤓
Что будет результатом запуска, если активный профиль не задан?
4🔥4
Монолитная архитектура часто воспринимается как что-то устаревшее. Но на практике именно монолит остаётся основой большинства production-систем — особенно там, где важны скорость разработки, прозрачность логики и предсказуемость сопровождения.

На открытом уроке OTUS разберём разработку монолитного приложения со Spring, используя Kotlin. Поговорим о плюсах и минусах монолитной архитектуры, разберём фреймворк Spring и особенности его использования в Kotlin-проектах. Покажем, как интегрировать транспортные модели, собрать приложение и подготовить его к запуску.

Вы увидите полный путь от архитектурного решения до работающего приложения. Попрактикуетесь в разработке монолита, разберётесь в особенностях Spring + Kotlin и научитесь упаковывать приложение в Docker. Урок будет полезен backend-разработчикам, которые хотят глубже понимать архитектуру, уверенно работать со Spring и собирать production-готовые сервисы.

Встречаемся 4 февраля в 19:00 МСК в преддверии старта курса «Kotlin Backend Developer. Professional».
Регистрация открыта:
https://vk.cc/cTPdQW

Реклама. ООО «Отус онлайн-образование», ОГРН 1177746618576
4👍2🔥2
🖥 useful-java-links — коллекция полезных ссылок для Java-разработчиков, охватывающая различные категории, такие как библиотеки, фреймворки, утилиты и ресурсы для обучения. Особое внимание уделено инструментам для работы с базами данных, поисковыми системами, Big Data и машинным обучением

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

🖥 Github

Подписывайся на наш канал в Max 🟪
Please open Telegram to view this post
VIEW IN TELEGRAM
7👍3🔥3
🏆 Платформа MWS GPT заняла 1-е место в номинации «Лучшее ИИ‑решение для бизнеса и промышленности» на конкурсе «Проект года» от Global CIO.

🔹 Что умеет сервис:

— работа с разными LLM в одном окне
— доступ к 70+ моделям, включая сверхбольшие Qwen и Kimi (от 235 миллиарда до триллиона параметров);
— сценарии от анализа документов до генерации кода и отчетов
— дообучение открытых моделей и function calling (построить график, обратиться к базе данных)
— запуск решений на инфраструктуре MWS с высокой устойчивостью к нагрузкам.

🔹 Дополнительно:

— собственный чат с сохранением и шерингом промптов
— конструктор приложений без разработчиков
— агентская архитектура: модель может выбирать нужные инструменты сама
— работа как в облаке (с быстрым GPU‑масштабированием), так и on‑premise-формате.
3👍3🔥2😁2
🖥 HyperCeiler — это модуль для улучшения работы операционных систем MIUI и HyperOS, разработанный для Android. Он предоставляет функции, которые помогают оптимизировать пользовательский интерфейс и исправить некоторые ограничения системы

🌟 Для его использования требуется root-доступ и настройка через LSPosed. Модуль поддерживает версии Android 13-15 и включает множество системных приложений и служб

🔐 Лицензия: AGPL-3.0

🖥 Github

Подписывайся на наш канал в Max 🟪
Please open Telegram to view this post
VIEW IN TELEGRAM
👍53🔥3
ServletConfig

Это интерфейс в Java, который предоставляет информацию о настройках сервлета. Каждый сервлет веб-приложения имеет свой объект ServletConfig, который позволяет сервлету получать доступ к параметрам и настройкам, определенным в файле развёртывания (web.xml) или в других конфигурационных файлах. Это полезно для настройки и переопределения поведения сервлета без изменения его исходного кода.

Подписывайся на наш канал в Max 🟪
Please open Telegram to view this post
VIEW IN TELEGRAM
👍62🔥2
🖥 LWJGL — это open-source Java-библиотека, обеспечивающая кроссплатформенный доступ к популярным нативным API, полезным при разработке графических (OpenGL, Vulkan, bgfx), аудио (OpenAL, Opus), параллельных (OpenCL, CUDA) и XR (OpenVR, LibOVR, OpenXR) приложений

Доступ, предоставляемый библиотекой LWJGL, является высокопроизводительным, но в то же время обернут в безопасный для типов и удобный для пользователя слой, подходящий для экосистемы Java.

🖥 GitHub
🟡 Быстрый старт

Подписывайся на наш канал в Max 🟪
Please open Telegram to view this post
VIEW IN TELEGRAM
👍11🔥421
🥹Вы только стали тимлидом или планируете эту роль, но в голове вопросы: «Что дальше? На что тратить время? Как развиваться, если не справляюсь с прежней работой?»

На бесплатном вебинаре онлайн-курса «TeamLead в IT» разберем:
- Дорожную карту ключевых компетенций тимлида
- Какие требования реально предъявляют работодатели
- Почему роль тимлида так отличается в разных компаниях и как в этом найти себя

Спикер: Михаил Савинов — CTO в Мокка. Вы получите четкие ориентиры для роста и избавитесь от неопределенности.

Этот вебинар — старт вашего осознанного пути. Чтобы не просто закрыть пробелы, а системно вырасти в лидера, приглашаем на курс «TeamLead в IT», где каждая компетенция отрабатывается на практике. До 15.02 на курс действует уменьшающаяся скидка 10% 🎁

👉 Зарегистрируйтесь на вебинар и оцените уровень экспертизы: регистрация

Реклама. ООО «Отус онлайн-образование», ОГРН 1177746618576
Please open Telegram to view this post
VIEW IN TELEGRAM
👍2🔥21
🖥 Smallville — фреймворк для создания генеративных агентов для видеоигр. Эти агенты — виртуальные персонажи, способные хранить воспоминания, наблюдать за окружением и реагировать на изменения в игровом мире. Они используют модели на основе больших языковых моделей (LLM), таких как ChatGPT, для создания более реалистичных и динамичных NPC, что снижает необходимость ручного программирования взаимодействий

🌟 Репозиторий включает клиентские библиотеки для Java и JavaScript, а также сервер для симуляций

🔐 Лицензия: MIT

🖥 Github

Подписывайся на наш канал в Max 🟪
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥114👍4❤‍🔥1
🎥 Открытый урок «Eclipse Memory Analyzer (MAT): помощь в работе с heap».

🗓 04 февраля в 20:00 МСК
🆓 Бесплатно. Урок в рамках старта курса
«Java Developer. Advanced».

Без MAT сложно найти причины OutOfMemoryError и утечек. Разберём базу и полезные приёмы анализа heap dump.


Что будет на вебинаре:
✔️ Ключевые концепции работы с MAT и навигация по heap dump.
✔️ Экспресс-анализ дампа памяти: где искать утечки и рост объектов.
✔️ Разбор реального дампа в онлайне на предмет memory leak.

В результате вебинара:
Вы сможете самостоятельно проводить анализ дампов памяти. Будете знать возможности MAT и какие задачи решаются с его помощью.

Кому будет интересно:
Подойдёт Java-разработчикам, инженерам сопровождения и SRE, кто сталкивается с OutOfMemoryError и падениями по памяти.

🔗 Ссылка на регистрацию: https://vk.cc/cU0Gyi

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

Жизненный цикл разработки ПО — это структура, описывающая процесс создания программного обеспечения, позволяя планировать и управлять разработкой систематично. Вот основные и часто используемые модели:

🟡 Водопадная модель

- Линейный и последовательный подход, где каждый этап строго следует за предыдущим.
- Проект разбивается на отдельные фазы: Сбор требований, Дизайн, Реализация, Верификация, Поддержка.
- Подходит для проектов с четкими, неизменяемыми требованиями.

🟡 Agile-модель

- Разработка ведется небольшими, управляемыми итерациями, называемыми спринтами, что позволяет быстро реагировать на изменения.
- Включает популярные методологии: Scrum (спринты с командными встречами), Kanban (визуализация задач) и Extreme Programming (XP, акцент на частых релизах).
- Применяется для проектов с неопределенными или часто меняющимися требованиями, благодаря гибкости и акценту на обратную связь.

🟡 V-модель (Модель верификации и валидации)

- Расширение водопадной модели, где для каждой фазы разработки предусмотрена фаза тестирования, формирующая визуальную «V»-структуру.
- Подходит для проектов, где критична строгая проверка и верификация на каждом этапе.

🟡 Итеративная модель

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

🟡 Спиральная модель

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

🟡 Модель "Большой взрыв"

- Минимальное планирование, основное внимание уделяется коду, и только в конце идет интеграция и тестирование.
- Применяется для небольших проектов или для экспериментов, когда структура не важна и требуется быстрый результат.

🟡 RAD-модель (Быстрая разработка приложений)

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

🟡 Инкрементальная модель

- Продукт разрабатывается и тестируется по частям (инкрементам), каждый из которых добавляет новую функциональность.
- Удобна для проектов с определенными частями функционала, которые можно разрабатывать независимо друг от друга.
- Каждая модель имеет свои плюсы и минусы. Выбор подходящей модели зависит от сложности проекта, стабильности требований, нужной гибкости и степени важности тестирования.

Какая модель используется на вашем текущем проекте?

Подписывайся на наш канал в Max 🟪
Please open Telegram to view this post
VIEW IN TELEGRAM
👍113🔥3
А вы справитесь с тестом по HighLoad?

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

Пройдите тест, проверьте свои знания для обучения на курсе «Highload Architect» от OTUS. А так же и получите скидку 🎁 до 15.02.2026 - подробности у менеджера.

➡️ Пройти Тест https://vk.cc/cU79VC

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

❗️Практическое обучение проводится в прямом эфире — вебинары не являются предзаписанными.

Реклама. ООО «Отус онлайн-образование», ОГРН 1177746618576
Please open Telegram to view this post
VIEW IN TELEGRAM
3🔥2
❗️ Совет по Java: компактный конструктор в записях!

⭐️ Компактная форма помогает разработчикам сосредоточиться на проверке и нормализации параметров без утомительной работы по присвоению параметров полям!

Подписывайся на наш канал в Max 🟪
Please open Telegram to view this post
VIEW IN TELEGRAM
👍244🔥4
Задачи с собеседований: Поиск первого уникального символа в строке (jun+)

— Как найти первый уникальный символ в строке?

🔘 Ключевые моменты:

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

Реализация через Map на картинке 👆

Подписывайся на наш канал в Max 🟪
Please open Telegram to view this post
VIEW IN TELEGRAM
👍12🔥42
🖥 awesome-low-level-design — полезный репозиторий, который предназначен для изучения низкоуровневого проектирования (Low-Level Design, LLD) и подготовки к собеседованию на эту тему

🌟 Здесь содержатся ресурсы по основным принципам ООП, SOLID, паттернам проектирования, диаграммам UML и другим концепциям, а также задачи для практики проектирования различных систем. Решения задач написаны на разных ЯП, в том числе и на Java!

🔐 Лицензия: GPL-3.0

🖥 GitHub

Подписывайся на наш канал в Max 🟪
Please open Telegram to view this post
VIEW IN TELEGRAM
5👍2
👩‍💻 Шпаргалка по основным командам Docker

От запуска контейнеров до их управления — все ключевые команды в одном месте. Сохраняйте, чтобы не потерять.

Подписывайся на наш канал в Max 🟪
Please open Telegram to view this post
VIEW IN TELEGRAM
👍85🔥1
🔴 Завтра тестовое собеседование с Java-разработчиком

11 февраля(уже завтра!) в 19:00 по мск приходи онлайн на открытое собеседование, чтобы посмотреть на настоящее интервью на Middle Java-разработчика.

Как это будет:
📂 Сергей Чамкин, старший разработчик из Uzum, ex-WildBerries, будет задавать реальные вопросы и задачи разработчику-добровольцу
📂 Cергей будет комментировать каждый ответ респондента, чтобы дать понять чего от вас ожидает собеседующий на интервью
📂 В конце можно будет задать любой вопрос Сергею

Это бесплатно. Эфир проходит в рамках менторской программы от ШОРТКАТ для Java-разработчиков, которые хотят повысить свой грейд, ЗП и прокачать скиллы.

Переходи в нашего бота, чтобы получить ссылку на эфир →
@shortcut_sh_bot

Реклама.
О рекламодателе.
Please open Telegram to view this post
VIEW IN TELEGRAM
👍32🔥2
🖥 MineDojo — это исследовательская платформа, разработанная для создания многоцелевых ИИ-агентов с помощью среды Minecraft.

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

🌟 MineDojo создан для поддержки исследований в области ИИ, обучая агентов на большом количестве сценариев и примеров поведения. Платформа включает в себя предварительно настроенные задачи и сценарии, а также возможности для создания собственных агентов

🖥 Github

Подписывайся на наш канал в Max 🟪
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥6👍2