Библиотека джависта | Java, Spring, Maven, Hibernate
24.9K subscribers
1.86K photos
38 videos
42 files
2.64K links
Все самое полезное для Java-разработчика в одном канале.

Список наших каналов: https://yangx.top/proglibrary/9197

Обратная связь: @proglibrary_feedback_bot

По рекламе: @proglib_adv

РКН: https://gosuslugi.ru/snet/67a5bbda1b17b35b6c1a55c4
加入频道
Double-brace инициализация

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

Вместо double-brace инициализации лучше использовать стандартные способы создания и инициализации коллекций в Java, такие как вызов конструктора и методов добавления элементов.
🎓 Как я перешел из математиков в аналитики данных

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

🔗
Ссылка
Очередной #дайджест для джавистов

👉 Java Runtimes: Insights From the Spring Boot Point of View — о том, на что стоит обратить внимание при выборе JDK, если вы используете в разработке фреймворк Spring Boot

👉 ZIO Kafka — предоставляет streams-based интерфейс для клиента Kafka и легко интегрируется с ZIO и ZIO Streams

👉 Calling Microservices в Java — рассматривается четыре варианта: ванильная Java, Apache HttpClient, Spring-овые RestTemplate и WebClient, а также Feign

👉 Forking и Interruption в ZIO — маленькая жизненная история о том, как подломанный с точки зрения параллелизма код + обновление версии либы = обстоятельства

👉 Использование Bootify для прототипа Spring Boot с Thymeleaf — про сайт-инструмент, который позволяет в пару кликов сгенерировать простое CRUD-приложение на Spring Boot с фронтендом, БД, миграциями БД и всеми нужными зависимостями
Привет, друзья! 👋

Мы готовим статью о влиянии страха ошибок на работу программистов и хотим услышать ваше мнение! 💻🤔

🔍 Как вы справляетесь со страхом совершить ошибку в коде?
🛠️ Какие инструменты или практики в вашей команде помогают уменьшить страх перед внесением изменений в код?
🌱 Как вы превращаете свои ошибки в возможности для роста и развития?

💬 Поделитесь своим опытом! Ваши ответы могут помочь другим разработчикам! Лучшие идеи войдут в нашу статью.
📚Spring Quick Reference Guide: A Pocket Handbook for Spring Framework, Spring Boot, and More (2020)

✍️Автор: Adam L. Davis

📃Страниц: 254

С помощью этого краткого справочного руководства вы быстро получите представление, необходимое для решения множества задач, связанных с программированием Spring Framework на базе Java и Spring Boot. Короткие, сфокусированные примеры кода помогут вам освоить многие элементы Spring

Скачать книгу
🧑‍🎓🧑‍🎓 Работа с информерами Java kubernetes client

По ходу дела, будет написано простое приложение, которое в реальном времени отслеживает состояние Pods, Nodes и Ingresses и по запросу отдает нам информацию о них. Для этого повесятся информеры на указанные ресурсы Kubernetes.

Если нужно отслеживать CRD-ресурсы, то информеры, к сожалению, не подойдут.

Получать и хранить информацию о ресурсах Kubernetes будете в памяти приложения.

Продолжение здесь

#туториал
Мы пишем статью о способах измерения личностного роста программистов и нам нужна ваша помощь! 🚀

📊 Какие метрики вы используете для оценки своего прогресса?
🤔 Как вы понимаете, что выросли профессионально?
💡 Есть ли у вас свои уникальные способы отслеживания развития?

💬 Поделитесь вашим опытом в комментариях! Лучшие идеи попадут в нашу статью!
Самые полезные каналы для программистов в одной подборке!

Сохраняйте себе, чтобы не потерять 💾

🔥Для всех

Библиотека программиста — новости, статьи, досуг, фундаментальные темы
Книги для программистов
IT-мемы
Proglib Academy — тут мы рассказываем про обучение и курсы
Азбука айтишника — здесь мы познаем азы из мира программирования

🤖Про нейросети
Библиотека робототехники и беспилотников | Роботы, ИИ, интернет вещей
Библиотека нейрозвука | Транскрибация, синтез речи, ИИ-музыка
Библиотека нейротекста | ChatGPT, Gemini, Bing
Библиотека нейровидео | Sora AI, Runway ML, дипфейки
Библиотека нейрокартинок | Midjourney, DALL-E, Stable Diffusion

#️⃣C#

Книги для шарпистов | C#, .NET, F#
Библиотека шарписта — полезные статьи, новости и обучающие материалы по C#
Библиотека задач по C# — код, квизы и тесты
Библиотека собеса по C# — тренируемся отвечать на каверзные вопросы во время интервью и технического собеседования
Вакансии по C#, .NET, Unity Вакансии по PHP, Symfony, Laravel

☁️DevOps

Библиотека devops’а — полезные статьи, новости и обучающие материалы по DevOps
Вакансии по DevOps & SRE
Библиотека задач по DevOps — код, квизы и тесты
Библиотека собеса по DevOps — тренируемся отвечать на каверзные вопросы во время интервью и технического собеседования

🐘PHP

Библиотека пхпшника — полезные статьи, новости и обучающие материалы по PHP
Вакансии по PHP, Symfony, Laravel
Библиотека PHP для собеса — тренируемся отвечать на каверзные вопросы во время интервью и технического собеседования
Библиотека задач по PHP — код, квизы и тесты

🐍Python

Библиотека питониста — полезные статьи, новости и обучающие материалы по Python
Вакансии по питону, Django, Flask
Библиотека Python для собеса — тренируемся отвечать на каверзные вопросы во время интервью и технического собеседования
Библиотека задач по Python — код, квизы и тесты

Java

Книги для джавистов | Java
Библиотека джависта — полезные статьи по Java, новости и обучающие материалы
Библиотека Java для собеса — тренируемся отвечать на каверзные вопросы во время интервью и технического собеседования
Библиотека задач по Java — код, квизы и тесты
Вакансии для java-разработчиков

👾Data Science

Книги для дата сайентистов | Data Science
Библиотека Data Science — полезные статьи, новости и обучающие материалы по Data Science
Библиотека Data Science для собеса — тренируемся отвечать на каверзные вопросы во время интервью и технического собеседования
Библиотека задач по Data Science — код, квизы и тесты
Вакансии по Data Science, анализу данных, аналитике, искусственному интеллекту

🦫Go

Книги для Go разработчиков
Библиотека Go разработчика — полезные статьи, новости и обучающие материалы по Go
Библиотека Go для собеса — тренируемся отвечать на каверзные вопросы во время интервью и технического собеседования
Библиотека задач по Go — код, квизы и тесты
Вакансии по Go

🧠C++

Книги для C/C++ разработчиков
Библиотека C/C++ разработчика — полезные статьи, новости и обучающие материалы по C++
Библиотека C++ для собеса — тренируемся отвечать на каверзные вопросы во время интервью и технического собеседования
Библиотека задач по C++ — код, квизы и тесты
Вакансии по C++

💻Другие каналы

Библиотека фронтендера
Библиотека мобильного разработчика
Библиотека хакера
Библиотека тестировщика
Вакансии по фронтенду, джаваскрипт, React, Angular, Vue
Вакансии для мобильных разработчиков
Вакансии по QA тестированию
InfoSec Jobs — вакансии по информационной безопасности
Библиотека разработчика игр | Gamedev, Unity, Unreal Engine

📁Чтобы добавить папку с нашими каналами, нажмите 👉сюда👈

Также у нас есть боты:
Бот с IT-вакансиями
Бот с мероприятиями в сфере IT

Мы в других соцсетях:
🔸VK
🔸YouTube
🔸Дзен
🔸Facebook *
🔸Instagram *

* Организация Meta запрещена на территории РФ
🤷🤷 Умножение Монтгомери

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

Один из вариантов эффективного решения — умножать по модулю, вообще при этом не используя операции деления, с помощью алгоритма Монтгомери.

Продолжение тут

#гайд
#дайджест перед выходными

Quality Outreach Heads-up JDK 23 — начиная с JDK 23, javac требует дополнительной опции командной строки для включения обработки аннотаций

Single tenant vs multitenancy — микропосвящение в варианты подписок на облачные серверы провайдеров

Tapir Tech Update the Deep Dive — Softwaremill запускают собственный ежемесячный дайджест, посвященный новостям в мире технологий за последний месяц, а также направлениям архитектуры

Maven Central and the tragedy of the commons — Maven Central теперь будет замедлять загрузку или вовсе выдавать 429 ошибку, для особо «тяжелых» потребителей

Java on Visual Studio Code Update — обновление Java on VSCode: вынесли настройки по разным секциям; выложили новое видео, посвященное Code Coverage; появились валидации JPQL- и HQL-запросов
💁💁 Неожиданности в авторизации. Что скрывает Keycloak?

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

Продолжение тут

#туториал
🤤 Жадные алгоритмы: все, что нужно знать для собеседования

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

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

🔗 Читать статью
🔗 Зеркало
Объединение строк с помощью String.join

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

До Java 8 это обычно делалось с помощью цикла и объекта StringBuilder. С появлением метода String.join, эта задача стала намного проще и лаконичнее.

Использование метода String.join значительно упрощает задачу объединения строк с разделителем, делая код более читаемым и сокращая количество кода, которое нужно написать и поддерживать.
✍️✍️ Переписывая историю: от инструментов версионирования БД к практике

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

Продолжение здесь

#туториал
🖥️ jadx — декомпилятор из APK в Java код

brew install jadx

jadx предоставляет инструменты командной строки и GUI для получения исходного кода Java из APK, dex, aar, aab и zip-файлов.

Также позволяет декодировать AndroidManifest.xml и другие ресурсы из resources.arsc.
Имеется встроенный деобфускатор.