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
This media is not supported in your browser
VIEW IN TELEGRAM
🖥 PMD — расширяемый многоязычный статический анализатор кода, написанный на Java

cd $HOME
wget https://github.com/pmd/pmd/releases/download/pmd_releases%2F7.2.0/pmd-dist-7.2.0-bin.zip
unzip pmd-dist-7.2.0-bin.zip
alias pmd="$HOME/pmd-bin-7.2.0/bin/pmd"
pmd check -d /usr/src -R rulesets/java/quickstart.xml -f text


PMD находит неиспользуемые переменные, пустые блоки catch, ненужное создание объектов и всё в таком духе. В основном он работает с Java и Apex, но поддерживает 16 других языков. В комплект входит 400+ встроенных правил.

PMD легко можно кастомизировать с помощью пользовательских правил. Использует JavaCC и Antlr для разбора исходных файлов на абстрактные синтаксические деревья (AST) и запускает правила на их основе для поиска нарушений. Правила могут быть написаны на языке Java или с помощью запроса XPath.

🖥 GitHub
🟡 Доки

@javalib
Please open Telegram to view this post
VIEW IN TELEGRAM
👍184🔥3
🚀 Готовься к переменам в мире IT с нашим практическим курсом по Domain Driven Design!

😰 Устал от запутанной инфраструктуры, вперемешку с бизнес логикой? Мы знаем, как это тяжело. Писать тесты становится неприятно и больно, приходится много мокать, тесты получаются огромными, хрупкими.. Но есть решение! Присоединяйся к нашему курсу, где мы разложим все по полочкам за 10 вебинаров, начиная с 17 июня.

🔝 Прими вызов и стань частью передовой волны технологического прогресса. Успей зарегистрироваться сейчас https://microarch.ru/courses/hexagonal-architecture?utm_source=posev&utm_medium=erid:2VtzqxRjeES&utm_campaign=18

🎓 На нашем курсе ты изучишь:
Основы Domain-Driven Design и его важность для разработчиков.
Создание эффективных и масштабируемых сервисов с использованием DDD.
Применение шаблонов проектирования и принципов DDD для оптимизации кода и повышения производительности.

💡 Зачем тебе этот курс?
🌟 Плюс, ты получишь:
— Новые подходы к разработке, в том числе и использование подходов ядра и слоев в онион-архитектуре.
— Шанс быть первым внедрившим новые методы в отделе.
— Стань Senior Developer или Team Lead.
— Пиши код как профессионал, а не как в учебниках.
— Получи признание в компании и увеличь свою заработную плату.

🌟 Присоединяйся к нам прямо сейчас и стань экспертом в разработке успешных проектов: https://microarch.ru/courses/hexagonal-architecture?utm_source=posev&utm_medium=erid:2VtzqxRjeES&utm_campaign=18

Реклама. ИП Ветчинкин К.Е. ИНН: 773376451099 Erid: 2VtzqxRjeES
👍63🔥2
Приходите на наш Я.Субботник по JVM — 29 июня в Новосибирске!

Вас ждёт митап о том, как мы пишем код на Java, Scala и Kotlin.

В программе — доклады крутых спикеров, нетворкинг и афтерпати. Расскажем про pattern matching, процессы и факапы на складах Маркета, а еще про архитектуру наших систем.

Программа получилась насыщенной — зарегистрироваться можно по ссылке.

До встречи на Субботнике! ☀️
5👍3🔥3
🖥 JavaCV — удобный интерфейс для работы с OpenCV, FFmpeg и не только

dependencies {
implementation("org.bytedeco:javacv-platform:1.5.10")
}


JavaCV использует обертки из JavaCPP Presets широко используемых библиотек в области компьютерного зрения (OpenCV, FFmpeg, libdc1394, FlyCapture, Spinnaker, OpenKinect, librealsense, CL PS3 Eye Driver, videoInput, ARToolKitPlus, flandmark, Leptonica и Tesseract) и предоставляет служебные классы для упрощения их использования в Java.

🖥 GitHub

@javalib
Please open Telegram to view this post
VIEW IN TELEGRAM
Please open Telegram to view this post
VIEW IN TELEGRAM
👍164🔥2
Думаете, вы знаете все про ООП?

⚡️Ждем вас на практическом открытом уроке «Еще одно объяснение про ООП» от OTUS, после которого ваше представление об объектах сильно поменяется.

Занятие будет полезно разработчикам на любом языке.

😎Спикер Евгений Тюменцев — директор компании по разработке программного обеспечения и преподаватель с огромным практическим опытом.

🖥Встречаемся 19 июня в 20:00 мск в рамках курса «Архитектура и шаблоны проектирования». Все участники вебинара получат специальную цену на обучение!

🔗Пройдите короткий тест прямо сейчас, чтобы посетить бесплатный урок: https://vk.cc/cxG28v
5👍3🔥2
ConcurrentSkipListSet

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

Основные особенности ConcurrentSkipListSet:

👉 ConcurrentSkipListSet не позволяет хранить дублирующиеся элементы. Если вы попытаетесь добавить в него элемент, который уже существует, операция добавления завершится успешно, но элемент не будет дублироваться.
👉 Элементы в ConcurrentSkipListSet хранятся в отсортированном порядке по их естественному порядку (если элементы реализуют интерфейс Comparable) или с использованием заданного компаратора.
👉 ConcurrentSkipListSet является потокобезопасной структурой данных. Она обеспечивает безопасное чтение и запись элементов из нескольких потоков без необходимости явной синхронизации.

@javalib
👍14🔥32
💡Как быстро и просто моделировать склады в AnyLogic — освойте технологию, расширьте портфолио и пулл своих клиентов.

Приходите на открытый практический урок от OTUS, где мы разберём:

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

🧨Спикер — опытный разработчик, веб-дизайнер и преподаватель.

Встречаемся 17 июня в 20:00 мск в преддверии старта курса «Имитационное моделирование на базе AnyLogic». Все участники вебинара получат специальную цену на обучение!

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

Реклама. ООО «Отус онлайн-образование», ОГРН 1177746618576
Please open Telegram to view this post
VIEW IN TELEGRAM
👍63🔥3
🖥 scoold — Java-клон Stack Overflow, который можно развернуть локально

Scoold — это open-source платформа вопросов и ответов и обмена знаниями.

Scoold может работать где угодно — на Heroku, DigitalOcean, AWS, Azure или у любого VPS-хостинг-провайдера. Scoold легкий, за бэкенд отвечает отдельный сервис под названием Para.
Scoold не требует БД, да и в целом состоит из простых компонентов, потому что вся тяжелая работа возложена на Para.

🖥 GitHub
🟡 Доки

@javalib
Please open Telegram to view this post
VIEW IN TELEGRAM
👍125🔥3😁2
👩‍💻 Зачем Java-разработчикам Redis?

Узнайте на открытом практическом уроке от OTUS, где мы:

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

Спикер Сергей Петрелевич — опытный Java/Kotlin-разработчик, Oracle Certified Professional, Java SE 8 Programmer.

Встречаемся 25 июня в 20:00 мск в рамках курса «Java Developer. Professional».
Все участники вебинара получат специальную цену на обучение!

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

Реклама. ООО «Отус онлайн-образование», ОГРН 1177746618576
Please open Telegram to view this post
VIEW IN TELEGRAM
5🔥4👍3😁2
🖥 Portfolio Performance — open-source инструмент на Java для расчета общей эффективности инвестиционного портфеля

Позволяет записывать всю историю операций: покупки, продажи, оплата налогов, сборы, и т.д.

Обновляет исторические котировки по данным из различных источников: Yahoo Finance, Finnhub.io, Quandl или AlphaVantage.
При желании можно настроить получение котировок с нужных HTML-страниц или из JSON-документов.

Все данные хранятся в XML для дальнейшей обработки и могут быть экспортированы в CSV или JSON.

🖥 GitHub
🟡 Страничка Portfolio Performance

@javalib
Please open Telegram to view this post
VIEW IN TELEGRAM
Please open Telegram to view this post
VIEW IN TELEGRAM
👍84🔥2
Внимание, разработчики! Приглашаем вас на открытый вебинар по алгоритмам и структурам данных от опытного практикующего эксперта💯

Ждём вас на уроке «Визуальное сравнение 1-2-3 алгоритмов сортировок» от OTUS, где мы:
- подробно рассмотрим три алгоритма сортировок: Пузырьком, Вставкой и Шелла;
- сравним их по различным критериям: сложность и количество обменов, стабильность и адаптивность;
- напишем алгоритмы и сравним их быстродействие;
- продемонстрируем их работу на игральных картах🂱️

🔥 Спикер Евгений Волосатов — программист баз данных и преподаватель с огромным и разнообразным опытом, автор статей и учебных программ по 🔥 C#, Java, PHP🔥.

Встречаемся 1 июля в 20:00 мск в преддверии старта курса «Алгоритмы и структуры данных». Все участники вебинара получат специальную цену на обучение.

🔴 Ссылка для регистрации: https://vk.cc/cxKJMI

Реклама. ООО «Отус онлайн-образование», ОГРН 1177746618576
👍43🔥2😁2
👩‍💻 GraphQL в Spring Boot и проблема N + 1

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

Относительно недавно в Spring Boot появился компонент для работы c GraphQL и мы сделаем проект на его основе. Для удобства отладки также подключим отладочный веб-интерфейс graphiql.

Ещё
рассмотрим проблему N+1, когда для каждого элемента результирующего списка выполняется дополнительный запрос.

#spring #graphql #kotlin
Please open Telegram to view this post
VIEW IN TELEGRAM
🎉11👍54
🚀 От новичка до Middle+ в Java-разработке под руководством лучших экспертов ниши!

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

📌После онлайн-курса «Специализация Java-разработчик» от OTUS вы сможете:

- создавать современные приложения на Java;
- работать с реляционными базами данных;
- разрабатывать серверные веб-приложения;
- претендовать на позиции Middle Java Developer.

Вы освоите самые востребованные инструменты и лучшие практики.

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

🎁 Успей на курс! Только до 23 июня скидка 10%, подробности у наших менеджеров - просто оставь заявку.

Старт уже 28 июня.

👉 Изучите подробности и оставьте заявку, чтобы получить специальную цену на курс: https://vk.cc/cxMTok

Реклама. ООО «Отус онлайн-образование», ОГРН 1177746618576
Please open Telegram to view this post
VIEW IN TELEGRAM
👍32🔥2😁1
👍45😁304🔥4💯3
👩‍💻 Алгоритм определения анаграмм

Если одно слово состоит из того же набора букв, что и другое, то эти слова друг для друга являются анаграммами. В этом видео разберём алгоритм проверки таких слов на Java.

Рассмотрим два варианта реализации алгоритма. Один из них использует мапу, второй - стандартную сортировку массивов.
Please open Telegram to view this post
VIEW IN TELEGRAM
👍74🔥3
🖥 CloudStack — open-source решение на Java для для развёртывания и управления большими сетями виртуальных машин

CloudStack — это готовое решение, которое включает в себя весь набор функций, необходимых для laaS-облака: управление вычислениями, гибкое настраивание сети, управление пользователями и учетными записями, полный и открытый собственный API, учет ресурсов и удобный интерфейс (UI).

🖥 GitHub
🟡 Доки

@javalib
Please open Telegram to view this post
VIEW IN TELEGRAM
Please open Telegram to view this post
VIEW IN TELEGRAM
7👍2