Обновить
194.69

Java *

Объектно-ориентированный язык программирования

Сначала показывать
Порог рейтинга
Уровень сложности

Техно-демо Mireapay

Время на прочтение5 мин
Охват и читатели368

Спустя три месяца с публикации самой популярной статьи автора наконец-то удалось собрать первый прод и настроить его. Если вам интересно развитие проекта mireapay, а так же желаете выяснить почему по статистике 9 разработчиков из 10 считает DevOps потрясающими, то добро пожаловать под кат.

Погавкать

Что нового в Spring Framework 6.2, Spring Boot 3.4 и каковы планы на будущее?

Уровень сложностиПростой
Время на прочтение8 мин
Охват и читатели4.6K

Команда Spring АйО перевела статью InfoQ, посвящённую новым версиям Spring Framework и Spring Boot. В статье обсуждаются улучшения последних релизов, анонс следующего поколения Spring, запланированного на 2025 год, а также ответы на вопросы редакции InfoQ от руководителя проекта Spring Framework Юргена Хёллера и контрибьютера Spring Framework core Себастьяна Делюза.

Читать далее

Тренды Java: как российские разработчики делают то, что другие только планируют

Время на прочтение5 мин
Охват и читатели2.6K

Java уже почти 30 лет остаётся одним из самых популярных языков программирования, неизменно входя в тройку лидеров. И в 2024 году она продолжает быть в центре внимания российских разработчиков. Исследование от Axiom JDK и JUG Ru Group «Тренды Java в России», в котором приняли участие более 500 специалистов, открыло интересные факты об их предпочтениях и инструментах. Если вы работаете с Java, то вам будет любопытно узнать, как развивается её экосистема в России.

Мы благодарим всех, кто принял участие в этом опросе и внёс вклад в развитие Java в стране! Теперь в бору Java на Алтае растет несколько сотен сосен, каждая из которых символизирует вашу поддержку и вклад в озеленение планеты.

.

Читать далее

Чего ждёт рынок от java-разработчика уровня middle

Время на прочтение5 мин
Охват и читатели6.3K

Привет! Меня зовут Игорь Честнов, я автор на курсе «Мидл java-разработчик» в Яндекс Практикуме. В статье расскажу, каких навыков и компетенций работодатели ждут от java-разработчиков среднего уровня. А ещё приведу список полезных ресурсов, которые помогут джунам продвинуться в карьере. 

Мидл java-разработчику необходимо обладать большим количеством профессиональных навыков и уметь работать с конкретными инструментами. И конечно, не стоит забывать про софтскилы — без них вырасти вряд ли получится. В статье я постараюсь всё это структурировать и разложить по полочкам — ведь на самом деле карьерный путь разработчика совсем не страшный и очень интересный.

Читать далее

Генетический алгоритм: природа в действии для оптимизации сложных задач (c примером на java)

Уровень сложностиПростой
Время на прочтение7 мин
Охват и читатели2.8K

Генетические алгоритмы (ГА) — это мощный инструмент для решения задач оптимизации, вдохновленный процессами эволюции в природе. Они применяются в таких областях, как маршрутизация, машинное обучение, финансовая аналитика, проектирование и многие другие. В этой статье я разберу принцип работы ГА и приведу пример решения, одной из самых популярных задач в алгоритмах на языке Java.

Алгоритм основан на модели эволюции Дарвина. Его ключевые компоненты:

Читать далее

Введение в Spring AOP на примере кастомизации логирования

Уровень сложностиПростой
Время на прочтение6 мин
Охват и читатели2.6K

Аспектно-ориентированное программирование (AOP) — это мощный инструмент для разделения кода, который позволяет изолировать кросс-функциональные задачи, такие как логирование, обработка транзакций и безопасность, от основной бизнес-логики. В этой статье мы рассмотрим, как использовать AOP в Spring для реализации кастомного логирования с помощью аннотации и аспектов.

Читать далее

Что нового в Spring Boot 3.4

Уровень сложностиПростой
Время на прочтение7 мин
Охват и читатели7.7K

Недавно состоялся релиз Spring Framework 6.2, вслед за ним последовал релиз Spring Boot 3.4.

Команда Spring АйО подготовила перевод статьи Josh Long об основных изменениях и улучшениях, которые вошли в последний релиз.

Читать далее

Работа с @SpyBean: использование в Spring Boot

Уровень сложностиПростой
Время на прочтение5 мин
Охват и читатели3.7K

Всем привет!

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

Например, вы хотите удостовериться, что ваш сервис корректно взаимодействует с внедрённым репозиторием, вызывая нужные методы с правильными аргументами. При этом вы хотите сохранить работу с реальной базой данных, чтобы не терять контекст. Тут на сцену выходит @SpyBean — универсальный инструмент для подобных задач.

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

Читать далее

Пишем Android приложение для фильтрации спам-звонков

Уровень сложностиСредний
Время на прочтение10 мин
Охват и читатели5.1K

Всем привет! Меня зовут Иван Чечиков. В этой статье я расскажу о своем пет-проекте - Android приложении, которое может идентифицировать нежелательные входящие звонки.

Подробности – под катом.

Читать далее

От кода к смыслу: улучшенная панель Structure в IntelliJ IDEA 2024.3

Уровень сложностиПростой
Время на прочтение5 мин
Охват и читатели4.9K

Совсем недавно вышла IntelliJ IDEA 2024.3 – последний мажорный релиз IDE в этом году. И одним из самых важных нововведений этой версии стала улучшенная панель Structure. 

Команда Spring АйО перевела статью Siva Katamreddy (Developer Advocate в JetBrains), в которой Siva рассказывает, как улучшенная панель помогает решать задачи, и делится историей создания этой функциональности.

Читать далее

Сериализация в Java. Давайте разбираться

Уровень сложностиСредний
Время на прочтение13 мин
Охват и читатели6.2K

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

Читать далее

Кэширование с FeignClient: как ускорить микросервисы и стать героем проекта

Уровень сложностиПростой
Время на прочтение6 мин
Охват и читатели6.4K

Кэширование с FeignClient: ускоряем микросервисы и радуем пользователей

Статья о том, как добавить кэширование в FeignClient с помощью Caffeine Cache и сделать микросервисы молниеносными. Простая настройка, минимум кода, максимум пользы — пошагово на примере Java и Spring Boot, чтобы ваши запросы летали, а API не тормозил.

Читать далее

Версионирование эндпоинтов — это просто

Уровень сложностиПростой
Время на прочтение17 мин
Охват и читатели8.5K

Команда Spring АйО перевела и адаптировала доклад "Endpoint versioning made simple" Бауке Найхаус (Bouke Nijhuis) с последнего Devoxx Belgium. 

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

Читать далее

Ближайшие события

Честный взгляд на Spring Data JPA

Уровень сложностиСредний
Время на прочтение4 мин
Охват и читатели4.5K

Spring Data JPA считается швейцарским ножом для работы с БД в Java. Однако Spring Data JPA не заслуживает своего триумфа и вот почему...

Читать далее

От подвала до облака: как обучить нейросеть в домашних условиях

Уровень сложностиПростой
Время на прочтение5 мин
Охват и читатели4.3K

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

Читать далее

Spring Framework 6.2.0: переопределение бинов в тестах

Уровень сложностиПростой
Время на прочтение4 мин
Охват и читатели4.1K

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

В новом переводе от команды Spring АйО вы узнаете как можно использовать @TestBean, @MockitoBean и @MockitoSpyBean для переопределения бинов в тестах.

Читать далее

Эволюция Assert'a на примере тестирования вездехода из Звездных Войн

Уровень сложностиПростой
Время на прочтение8 мин
Охват и читатели1.5K

Привет, Хабр! Меня зовут Михаил Палыга, я инженер в Блоке обеспечения и контроля качества выпуска изменений ПО в РСХБ‑Интех. На проекте для проверки данных мы пользуемся библиотекой AssertJ — Java библиотекой с открытым исходным кодом, используемой для написания гибких, содержательных и легко читаемых проверок в тестах Java. Мы любим использовать цепочки методов в других наших классах, поэтому данная библиотека органично вписалась в код наших тестов.

Я опишу, как со временем менялся наш подход к проведению проверок данных и как менялись сами классы проверок. А чтобы было чуть проще и интересней займемся тестированием чего‑нибудь из вселенной Звездных Войн. Например, протестируем имперский бронированный транспортный вездеход AT‑AT.

Читать далее

Паттерн Builder в Java на котиках

Уровень сложностиПростой
Время на прочтение5 мин
Охват и читатели2.4K

Привет, друзья! Сегодня рассмотрим реализацию паттерна «Строитель» в Java. Паттерн может превратить необъятный хаос параметров в аккуратную и управляемую конструкцию. И всё это на примере наших пушистых друзей — котиков.

Читать далее

Почему в разработке чат-ботов мы в качестве основы используем Jmix

Уровень сложностиПростой
Время на прочтение5 мин
Охват и читатели1.3K

И за шесть лет работы в нашей айти-команде пока не нашли ни одного критичного минуса. Рассказываю как мы пилим чат-ботов на базе Jmix

Читать далее

Test-Driven Development: как полюбить модульное тестирование

Уровень сложностиСредний
Время на прочтение12 мин
Охват и читатели3.3K

Как и многие, я, как мог, сопротивлялся Test-Driven Development. Я не понимал, почему тесты нужно писать перед реализацией. Почему мы должны выворачивать разработку наизнанку и переворачивать естественный, как мне тогда казалось, процесс, с ног на голову.

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

И об этом мы поговорим в статье ниже.

Мы разберём страхи, останавливающие разработчика перед тем, чтобы начать, наконец, писать тесты. Выявим очевидные преимущества. Обсудим основные правила разработки через тестирование. И подкрепим всё это реальными примерами.

Читать далее

Вклад авторов