Обновить
512K+

Java *

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

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

Безработные айосники, мертвый PHP и бесполезные “саперы”: топ-5 мифов о будущем российского IT

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

Мы в hitch занимаемся аутстаффингом – выводим опытных IT-специалистов на бигтех-проекты. Поэтому непрерывно следим за любыми изменениями на рынке, а еще с удовольствием слушаем экспертов — но не во всём с ними соглашаемся. Сегодня разберем прогнозы и обещания, которые всколыхнули рынок, но показались нам нереалистичными.

Читать далее

Unit-тестирование Flink-операторов, Job: Flink MiniCluster

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

Привет, Хабр! С вами вновь Александр Бобряков, техлид в команде МТС Аналитики. И я с очередной статьёй из цикла про фреймворк Apache Flink.

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

В этой статье напишем тесты на всю джобу с использованием мини-кластера Flink и при помощи JUnit Extension. Ещё мы начнём выделять удобные вспомогательные абстракции для тестов, которые понадобятся позже.

Читать далее

Java Digest #12

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

Всем привет! ? ? ??

Мы — Java-разработчики Тинькофф: Андрей, Арсений, Константин и Константин. Собираем интересные новости, статьи, туториалы и другие материалы из мира Java-разработки и делимся этим со всем сообществом.

В этом месяце в меню обновления: Intellij Idea с модным терминалом и AI-подсказками, миграции на новые версии Spring Boot за пару кликов в новой версии Java on VS Code, не забыли обновить и Micronaut, GraalVm, PMD и JMC. На горячее JEPы: Exception handling in switch, Derived Record Creation, Stream Gatherers, Vector API, String Templates. Не забыли и про бесплатный сыр — доступ к Spring Academy Pro. 

Утоляем голод по новым знаниям интересными статьями и видео, для любителей экзотики — новые инструменты сборки, если не пробовали bld. А на десерт стоит присмотреться презентациям с прошедшего Jpoint 2024. 

Читать двенадцатый выпуск

Быстрое нахождение чисел Фибоначчи

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

Описание способа нахождения значения произвольного элемента последовательности Фибоначчи за логарифмическое время.

Читать далее

Когда переключаются потоки в Spring WebFlux

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

Работа с библиотекой WebFlux вызывает затруднения у многих Java/Kotlin разработчиков

Код выглядит непривычно, непонятно в каких потоках выполняется логика и как этим управлять

Сегодня я попытаюсь объяснить простым языком такой важный аспект, как момент переключения потоков в WebFlux, это поможет вам допускать меньше ошибок и писать более производительный код

Также другие материалы от меня вы сможете найти в моем телеграм блоге

Читать далее

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

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

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

Читать далее

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

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

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

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

Читать далее

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

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

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

Читать далее

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

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

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

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

Читать далее

SOLIDно знать…

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

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

Читать далее

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

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

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

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

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

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

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

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

Перейти на VSCode

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

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

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

Читать далее

Spring Boot Starter: практически, принципиально и подробнее. Часть 1

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

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

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

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

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

Читать далее

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

Перемещение указателя на смещение в Kafka

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

В данной статье описывается задача, в которой необходимо слушать сообщения с определенного смещения(offset) в Kafka. Для решения данной задачи потребуется интерфейс ConsumerSeekAware и найти позицию с которой нужно начать слушание. Так же необходимо будет создать механизм перезапуска слушателя сообщений Kafka. В примерах кода используются Java и Spring фреймворк.

Читать далее

Делаем из битого планшета одноплатник: подключаем Android-устройства к дешевым микроконтроллерам через UART

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

В наше время, из-за санкций одноплатники стали стоить каких-то «конских» денег. Даже б/у RaspberryPi Zero стоит 2-3 тысячи рублей на барахолках, что, мягко скажем, не совсем лояльная цена для «самого дешевого одноплатного компьютера в мире». Конечно, Orange Pi Zero всё ещё можно купить в пределах 1.500-2.000 рублей, но как по мне и эта цена не слишком лояльна за те характеристики, который предлагает такой одноплатник. С другой стороны, Android-планшеты 10-летней давности продаются на барахолках по 100-300 рублей, что выглядит гораздо привлекательнее, причём на некоторые устройства практически без костылей можно установить полноценный дистрибутив Linux! Вероятно, многие читатели скажут мол «автор бомж» и будут правы: ведь в рамках этой статьи, я хочу рассказать о том, как использовать полурабочий древний планшет в качестве полноценного одноплатника путём подключения его к микроконтроллеру и выводу GPIO! Сегодня мы с вами: узнаем, как подключить микроконтроллер к шине UART в планшете и научимся работать с последовательной шиной в Android прямо из Java и нативных программ. Интересна моя концепция антикризисного одноплатника? Тогда добро пожаловать под кат!
Читать дальше →

Принципы SOLID, только понятно

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

Когда я только знакомился с принципами SOLID, я искал понятные статьи на Хабр. При этом пришлось прочитать не одну статью, и полное понимание пришло сильно позже. Хотелось бы, чтобы новички на более простых примерах смогли почувствовать, о чем эти принципы.

Изучить принципы

Управление схемами в Kafka с использованием Schema Registry

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

Apache Kafka является мощным инструментом для обработки и передачи потоковых данных в реальном времени, который находит широкое применение в различных индустриях для обработки огромных объемов данных с низкой задержкой. В центре этой платформы лежит способность эффективно распределять данные между множеством производителей (producers) и потребителей (consumers), при этом поддерживая высокую пропускную способность и масштабируемость. Однако, с увеличением количества и разнообразия данных, возникает необходимость в управлении структурами этих данных, что обеспечивает Schema Registry. Этот компонент является критически важным для поддержания согласованности данных в Kafka, поскольку он управляет схемами сообщений и обеспечивает совместимость между различными версиями схем, что позволяет системам бесперебойно обмениваться данными даже при изменении структуры сообщений.

Читать далее

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

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

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

Логика реализована с использованием Java, Spring и Kafka.

Читать далее

Разбираемся с динамической памятью (кучей) в приложениях Java

Время на прочтение8 мин
Охват и читатели10K
Начнём с простого вопроса. В самом ли деле каждый Java-разработчик понимает, как в Java работает память? Одна из обязанностей любого Java-разработчика — гарантировать, что в результате тонкой настройки приложения на Java из него получится выжать такую производительность, какую только возможно. Требуется время, чтобы научиться управлять памятью в Java и понять этот процесс, это касается всех, кто имеет дело с Java. В этой статье попробую объяснить, как овладеть этими умениями.
Читать дальше →

Приглашаем на Cinimex Spring IT Talk в Самаре (офлайн/онлайн)

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

Привет, Хабр!

После майских праздников мы отправимся в Самару и проведем митап Spring IT Talk!

Встретимся с ИТ-комьюнити и в уютной атмосфере обсудим зоопарк технологий для DevOps-инженера, погрузимся в Kafka Streams и завершим IT-вечер темой преодоления стопперов в профессиональном развитии.

Читать далее