Java guru
Відкрити в Telegram
Новости из мира Java, обзоры интересных библиотек и фреймворков, обучающие статьи. Онлайн обсуждения актуальных тем и обмен опытом. Для связи @RodmanDV
Показати більше941
Підписники
Немає даних24 години
+37 днів
+530 день
Архів дописів
941
Telegram бот + ИИ Jlama своими руками
В статье описывается создание телеграм бота на Java, который будет использовать LLM запущеную локально. В статье используюется Jlama – максимально простой движок инференса для LLM, написанной на голой java без тяжеловесных фрэймворков. По факту Jlama дает возможность обслуживать LLM в java окружении напрямую, то есть в той же jvm, где работает наше приложение.
Статья интересна тем, что в ней не используется открытый API ChatGPT или новомодный Deepseek, а используется локально развернутый Jlama.
https://habr.com/ru/articles/877746/
941
Подключение к GigaChat API на Java: пошаговое руководство
Статья о том как подключиться к API GigaChat в IntelliJ IDEA на Java и настроить безопасное соединение с использованием SSL-сертификатов.
https://habr.com/ru/articles/854820/
941
Применимость Java в искусственном интеллекте: 7 библиотек для нейросетей, которые стоит изучить
Python довольно широко распространен в среде разработчиков занимающихся AI, но есть ли у него альтернатива? Для Java также существуют библиотеки и фреймворки. В статье рассмотрены 7 наиболее популярных.
https://habr.com/ru/articles/864352/
941
Java + Spring + Jakarta Validation. Самописный «аддон» для валидации Entity через БД и EntityManager
Валидации "первого круга" в jakarta.validation представлены прекрасно (NotNull, NotBlank и пр. аннотации). Статья про валидации "второго круга". К ним можно отнести такие наиболее типичные операции:
• Проверка поля на уникальность при создании новой сущности (записей со значением X поля N на момент сохранения быть не должно).
• Проверка поля на уникальность при обновлении сущности (при обновлении запись со значением X поля N должна оставаться только одна).
• Проверка существования проставленных FK-связей.
• Проверка существования самой сущности в случае обновления (делается, как правило, по ее ID-шке).
• Возможно, проверка unmodified-полей для обновления, т.е. если поле неизменяемое, но во входных данных мы пытаемся его изменить - исключение.
Решение не законченное, но интересное.
https://habr.com/ru/articles/839006/
941
Algo.monster
Отличный ресурс для подготовки к собеседованиям созданный разработчикам из Google. Особенно он полезен тем кто планирует проходить интервью в компании из FAANG.
https://algo.monster/?sscid=11k9_ggcl7&
941
Kubetools
Коллекция популярных инструментов для Kubernetes. Там есть инструменты практически на все случаи жизни.
https://collabnix.github.io/kubetools/
941
VisuAlgo
Сайт очередной для изучение алгоритмов. Среди остальных сайтов с аналогичной тематикой он отличается тем, что работа алгоритмов хорошо представлена визуально.
https://visualgo.net/en
941
Исправление зависимостей в один клик
Если вы работаете с Gradle, то вам стоит обратить внимание на Dependency Analysis Gradle Plugin. Этот плагин помогает находить лишние зависимости и автоматически исправлять проблемы с ними. Однако стоит быть осторожным с этим плагином так как он может давай "осечки" на сложных скриптах. Это связанно с тем, что плагин использует упрощенную грамматику для парсинга. В будующих версиях парсинг обещают улучшить.
https://dev.to/autonomousapps/one-click-dependencies-fix-191p
941
Управляем Arduino при помощи Java
Если вы хотите вынести логику работы с Arduino на ПК или Raspberry Pi и при этом писать на Java, то в этом вам поможет Firmata (готовая прошивка для Arduino) и Firmata4j (Java библиотека). В статье на стороне Raspberry Pi для примера поднимается Spring Boot приложение для управления Arduino.
https://foojay.io/today/control-your-arduino-with-spring/
941
Английский для разработчиков
Хочу поделиться с вами бесплатным курсом английского специально для разработчиков на freeCodeCamp. Можно подтянуть свой уровень до А2. Там 105 уроков, каждый с практическими заданиями.
https://freecodecamp.org/learn/a2-english-for-developers
941
50 терминов системного дизайна, которые должен знать каждый разработчик
https://habr.com/ru/companies/timeweb/articles/846420/
941
system-design-cheat-sheet
При собеседовании на позицию Senior+ во многих компаниях проводят этап System Design. На нем вам нужно показать ваш кругозор и умение проектировать архитектуру. По ссылке ниже репозиторий с краткой выжимкой по теме System Design.
https://github.com/gavr-dev/system-design-cheat-sheet
941
Зачем нам вообще изучать Domain-Driven Design? Какая от него польза?
На это есть как минимум 5 причин:
👉 Благодаря разделению на Предметные Области, код становится понятнее.
Код, грамотно декомпозированный по доменам, легче читать и понимать, поскольку он отражает реальные бизнес-процессы. Читая понятный код, мы вырабатываем больше эндорфина и меньше кортизола.
👉 Единый Язык улучшает коммуникации.
Все члены команды, включая бизнес, лучше понимают друг друга, что благотворно сказывается на понимании постановок. Меньше приходится переделывать.
👉 Благодаря Ограниченному Контексту, предметные области проще делить на модули. Это особенно касается больших проектов — маленькими узкоспециализированными компонентами проще управлять.
👉 Инкапсуляция компонентов особенно важна для быстрорастущих систем. Системы, чётко структурированные по бизнес-процессам, дольше смогут выдерживать высокий темп изменений.
👉 Жёсткое структурирование по предметным областям спасёт при слабой или невнятной аналитике. Что позволит нам, разработчикам, дольше выдерживать покер-фейс посреди аналитического хаоса.
https://habr.com/ru/companies/sberbank/articles/781612/
941
Я недавно «засветился» в ролике одного очень крутого блогера - Саши Круасановой )))
Она Королева горячих инсайдов и актуальных кейсов, devrel-фея, экспертно решающая проблемы и споры на всех уровнях.
У нее прикольный контент. Если нравится, то подписывайтесь )))
https://t.me/kruasanova_as
941
Repost from Sasha Kruasanova PROIT
🚩 🚩 🚩 Красные флаги для разработчиков!
Мы тут с ребятами, из разных областей разработки, накидали «красных флагов»
от продуктов, тех и тим лидов.
А вас от каких фраз бомбит?
https://t.me/kruasanova_as
#хаха
#красныефлаги
#разработка
941
JPA Entity. Загрузи меня не полностью
JPA часто подвергается критике за невозможность загружать сущности частично, что на самом деле является большим заблуждением. Spring Data JPA и Hibernate включают в себя множество инструментов по частичной загрузке сущностей. В статье рассмотрены имеющиеся в Spring Data JPA инструменты для частичной загрузки сущностей, а также разобраны их особенности и corner-кейсы.
https://habr.com/ru/companies/spring_aio/articles/833918/
941
Материалы по System Design
На собеседованиях в крупные компании есть этап System Design. Этот этап показывает ваш кругозор и умение проектировать. Даже если вы не собираетесь в ближайшее время на собеседования я все равно рекомендую ознакомиться. Навык точно оценивать, задавать правильные вопросы и находить шедевральные решения может пригодиться и натекущем месте работы.
https://github.com/javabuddy/best-system-design-resources?tab=readme-ov-file
941
Как сделать анализатор кода за два дня
Автор в статье рассказывает как разрабатывали анализатор кода Lua в рамках хакатона. Сам анализатор писали на Java с использованием ANTLR v4. Lua был выбран потому, что его синтаксис довольно прост.
https://habr.com/ru/companies/pvs-studio/articles/835936/
941
Паттерн Transactional Outbox и его реализация с использованием Spring Boot
В статье описан один из вариантов реализации паттерна Transactional Outbox. Этот паттерн часто используют в микросервисной архитектуре для гарантии согласованности 2х систем без необходимости использовать распределенные транзакции.
https://www.wimdeblauwe.com/blog/2024/06/25/transactional-outbox-pattern-with-spring-boot/
