Чашечка Java
10.3K subscribers
3.09K photos
7 videos
49 files
4.34K links
Лучшие материалы по Java на русском и английском

Разместить рекламу: @tproger_sales_bot

Правила общения: https://tprg.ru/rules

Другие каналы: @tproger_channels
Download Telegram
Spring Boot Starter: практически, принципиально и подробнее. Part 1

Всем привет, меня зовут Сергей Соловых, я Java-разработчик в команде МТС Digital. За последние 2 года я написал и выпустил в продакшен более 30 микросервисов. Выдержать столь высокий темп помогло применение общепроектных решений и паттернов разработки.

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

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

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


Читать: https://habr.com/ru/companies/ru_mts/articles/811693/?utm_campaign=811693

@a_cup_of_java
Замена календаря на LocalDate в программах на Java

Read: https://www.infoworld.com/article/3715403/replace-calendar-with-localdate-in-java-programs.html#tk.rss_java

@a_cup_of_java
JetBrains IntelliJ IDEA 2024.1 Delivers Support for Java 22 Features

JetBrains released IntelliJ IDEA 2024.1 featuring support for Java 22 features, OpenRewrite, WireMock server, the Maven Shade Plugin and full line code completion for Java and Kotlin.
By Johan Janssen

Read: https://www.infoq.com/news/2024/05/intellij-idea-2024-1/

@a_cup_of_java
Что такое Java Spring и как с ним работать

«Фреймворк фреймворков» — так часто называют Java Spring. Зачем он нужен и какие у него есть плюсы и минусы, рассказывает специалист по Java, техлид в финтех-проекте Егор Воронянский.


Читать: https://habr.com/ru/companies/skillfactory/articles/811769/?utm_campaign=811769

@a_cup_of_java
Как начать писать на Java в VSCode

Давайте признаемся: подавляющее большинство пишет Java код, используя JetBrains IntelliJ IDEA Ultimate. Да, это отличная IDE. Для нее есть большое количество расширений, среда очень тесно интегрируется с Spring Framework и знает его особенности.

Тогда зачем пробовать что‑то другое?

Привет, Хабр! Меня зовут Константин Шибков, я Java‑разработчик в CDEK.

В какой‑то мере все Java‑разработчики стали заложниками IDEA. Она так привычна, что нет желания пробовать другое. Ведь всё такое удобное и знакомое за столько лет использования.

Но если у вас есть трудности с доступом к Ultimate версии, а Community вариант не достаточно функционален — самое время попробовать современную альтернативу — Visual Studio Code.

В статье делюсь опытом подготовки среды разработки и изучения вопроса: «А можно ли перейти на VSCode?».
Перейти на VSCode

Читать: https://habr.com/ru/companies/cdek_blog/articles/811631/?utm_campaign=811631

@a_cup_of_java
Для всех искателей Java-приключений

Миру срочно нужны рыцари Java для эпического квеста по созданию новой технологической платформы. Полная свобода выбора инструментов с приличной наградой за подвиги.

Ваш ждут благородные дела:
— Участие в полном цикле разработки
— Проектирование/разработка back-end и API
— Обеспечение чистоты кода, тестирование, код-ревью, релизы
— Анализ и оптимизация производительности.

Вознаграждения:
— 13 зарплат за 12 месяцев
— Одни из лучших условий работы
— ДМС для тебя и твоих близких

Начни увлекательную историю с письма о себе здесь
5 Примеры map() и flatMap() в Java 8 Stream

Map() и flatMap() - принц и принцесса функционального программирования на Java. Это два мощных метода Stream API, о которых, по моему мнению, должен знать каждый Java-разработчик, а также освоить их. Вы можете использовать map() и flatMap() для преобразования данных, при работе с базами данных, когда вам нужно преобразовать один объект в другой при сохранении или чтении из базы данных. Кроме того, их можно использовать для парсинга и форматирования, а также в тех случаях, когда необходимо удалить код с кодом и сделать конвейер данных более лаконичным. Функция map() используется в функциональном программировании для преобразования каждого элемента потока в другой элемент.

Вопросы и учебные пособия для собеседования по Java

Read: http://www.java67.com/2024/05/5-examples-of-map-and-flatmap-in-java-8.html

@a_cup_of_java
SOLIDно знать…

SOLID. Принципы и Паттерны. Паттерны и Принципы.
Что может быть ближе друг другу чем эти субстанции ?! Эта статья проведет параллель между ними, она не собирается объяснить суть каждой, вместе или отдельно, а желает показать как одна другой помогает.
То есть, статья в некотором роде перекрестный бой между паттернами и SOLID принципами.


Читать: https://habr.com/ru/articles/811875/?utm_campaign=811875

@a_cup_of_java
JEP 474: Generational Mode Now Standard for ZGC in Java

JEP 474, ZGC: Generational Mode by Default, has also been targeted for JDK 23. This JEP proposes to use the Z Garbage Collector (ZGC) from non-generational to generational mode by default. The non-generational mode will be deprecated and removed in a future JDK release. This will reduce the cost of maintaining the two modes, so future development can primarily focus on Generational ZGC.
By A N M Bazlur Rahman

Read: https://www.infoq.com/news/2024/05/java-zgc-update/

@a_cup_of_java
Как аналитик учился java log читать. Часть первая: логи бывают разные

Когда я пришёл работать в компанию GreenData шесть лет назад, мои задачи были достаточно стандартными для аналитика, который работает с low-code решениями. Работа с объектной моделью, написание алгоритмов, настройка визуалов - всё что обычно выполняет начинающий специалист в данной области. Однако в процессе моей работы и роста иногда я сталкивался с необходимостью разбираться в тонкостях работы Java, а именно с ошибками, которые возникали в процессе её исполнения.

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


Читать: https://habr.com/ru/articles/812103/?utm_campaign=812103

@a_cup_of_java
Lombok — как с ним жить, а не страдать или вариант best practics для lombok

Когда я впервые увидел - lombok, у меня возникло, дикое сопротивление. Было очевидное ощущение, что что-то не так. Я думаю, у многих консервативных разработчик возникло такое же ощущение. Однако, lombok популярен. Люди его любят, люди его используют. А значит, есть и будут появляться проекты с ним. А значит нам с этим всем придется как-то жить.


Читать: https://habr.com/ru/articles/812101/?utm_campaign=812101

@a_cup_of_java
10 Books and Courses to Prepare Technical Programming/Coding Job Interviews in 2024

If you are preparing for a technical interview in the software development sector and looking for some great books to boost your preparation, then you have come to the right place. In the past, I have hared some of the best online courses to prepare coding interviews. In this article, I am going to share some of the best programming/coding interview books to prepare well for any software development jobs. These books are enough to crack even the toughest of the job interviews at Google, Amazon, or Microsoft. They provide excellent coverage of all essential topics for programming job interviews like data structure and algorithms, system design, algorithm design, computer science fundamentals, SQL, Linux, Java, Networking, etc.


Java Interview questions and tutorials

Читать: http://www.java67.com/2017/06/10-books-to-prepare-technical-coding-job-interviews.html

@a_cup_of_java
10 книг и курсов для подготовки к собеседованиям по техническому программированию/кодированию в 2024 году

Если вы готовитесь к техническому собеседованию в сфере разработки программного обеспечения и ищете несколько отличных книг, которые помогут вам в подготовке, то вы пришли по адресу. В прошлом я уже рассказывал о некоторых лучшие онлайн-курсы для подготовки к собеседованиям по кодингу. В этой статье я собираюсь поделиться некоторыми из лучших книг по программированию/собеседованиям по кодированию, чтобы хорошо подготовиться к любым заданиям по разработке программного обеспечения. Этих книг достаточно, чтобы пройти даже самые сложные собеседования в Google, Amazon или Microsoft. В них отлично освещены все основные темы для собеседований по программированию, такие как структура данных и алгоритмы, проектирование систем, разработка алгоритмов, основы информатики, SQL, Linux, Java, сетевые технологии и т. д.


Вопросы и учебные пособия для собеседования по Java

Read: http://www.java67.com/2017/06/10-books-to-prepare-technical-coding-job-interviews.html

@a_cup_of_java
Обзор фич LTS-релиза Java 21: в новый год с новой Java

Обзор фич релиза Java 21, который вышел в сентябре 2023. Возвращается золотой век Java-разработки.

Читать: «Обзор фич LTS-релиза Java 21: в новый год с новой Java»

@a_cup_of_java
Перевод Spring Boot приложения с HTTP на HTTPS без ругани браузера

Актуальный способ перевода вашего Spring Boot приложения с HTTP на HTTPS.

Текущие способы и гайды в интернете на эту тему мне не понравились, поэтому написал свой.


Читать: https://habr.com/ru/articles/812257/?utm_campaign=812257

@a_cup_of_java
Top 10 Algorithms books Every Programmer Should Read

Algorithms are language agnostic, and any programmer worth their salt should be able to convert them to code in their programming language of choice. Unfortunately, I have come across several programmers who are REALLY good at programming languages like Java or Python, like know minor details of API and language intricacies but have very poor knowledge of the fundamentals of Algorithms and Data Structures. Just ask them to implement any popular sorting algorithms like quicksort or merge sort, and they will fall apart. If you expect them to know more advanced and sophisticated algorithms like String processing algorithms, graph algorithms, tree traversal, or greedy algorithms, be ready to check on Interviews; otherwise, you might end up with some surprises.


Java Interview questions and tutorials

Читать: http://www.java67.com/2015/09/top-10-algorithm-books-every-programmer-read-learn.html

@a_cup_of_java
Топ-10 книг по алгоритмам, которые должен прочитать каждый программист

Алгоритмы не зависят от языка, и любой программист, достойный своей соли, должен уметь преобразовывать их в код на выбранном им языке программирования. К сожалению, я сталкивался с несколькими программистами, которые РЕАЛЬНО хорошо владеют такими языками программирования, как Java или Python, знают мелкие детали API и тонкости языка, но очень плохо знают основы алгоритмов и структур данных. Просто попросите их реализовать любой популярный алгоритм сортировки, например quicksort или merge sort, и они развалятся на части. Если вы ожидаете от них знания более продвинутых и сложных алгоритмов, таких как алгоритмы обработки строк, алгоритмы работы с графами, обход деревьев или жадные алгоритмы, будьте готовы проверить их на собеседовании, иначе вас могут ждать сюрпризы.


Вопросы и учебные пособия для собеседования по Java

Read: http://www.java67.com/2015/09/top-10-algorithm-books-every-programmer-read-learn.html

@a_cup_of_java
Как удалить дубликаты из коллекций или потока в Java? Пример Stream distinct()

Привет, ребята, если вы задаетесь вопросом, как удалить дубликаты из потока в Java, не волнуйтесь. Вы можете использовать метод Stream.distinct() для удаления дубликатов из потока в Java 8 и последующих версиях. Метод distinct() ведет себя подобно предложению distinct в SQL, которое удаляет дубликаты строк из набора результатов. Метод distinct() также является стандартным методом, что означает, что он вернет новый поток без дубликатов, который может быть использован для дальнейшей обработки. Как и другие методы класса Stream, то есть map(), flatmap() или filter(), distinct() также является ленивым, и он не будет удалять дублирующиеся элементы, пока вы не вызовете терминальный метод Stream, например collect или forEach().

Вопросы и учебные пособия по Java

Read: http://www.java67.com/2018/06/how-to-remove-duplicates-from-stream-in-java8-distinct-example.html

@a_cup_of_java
Топ-5 книг по облачным вычислениям для начинающих, которые нужно прочитать в 2024 году - Best of Lot

Здравствуйте, ребята, если вы хотите научиться облачным вычислениям в 2024 году и ищете лучшие онлайн-ресурсы, такие как книги, онлайн-курсы, учебники и веб-сайты, то вы пришли в нужное место. Ранее я уже рассказывал о бесплатных курсах по облачным вычислениям и лучших сайтах по облачным вычислениям, а сегодня я хочу рассказать о лучших книгах, которые помогут вам узнать об облачных вычислениях в 2024 году. Эти книги написаны экспертами по облачным вычислениям, и им доверяют тысячи людей, которые хотят изучить облачные вычисления и публичные облачные платформы, такие как AWS, GCP и Microsoft Azure. Вы можете прочитать одну или несколько из этих книг, чтобы начать знакомство с облачными вычислениями и их преимуществами с точки зрения экономии средств, масштабируемости и высокой доступности.
Вопросы и учебные пособия для собеседования по Java

Read: http://www.java67.com/2020/12/top-5-cloud-computing-books-for.html

@a_cup_of_java
Расширение Функциональных Интерфейсов Java

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


Читать: https://habr.com/ru/articles/812451/?utm_campaign=812451

@a_cup_of_java