Чашечка Java
Open in Telegram
Лучшие материалы по Java на русском и английском Разместить рекламу: @tproger_sales_bot Правила общения: https://tprg.ru/rules Другие каналы: @tproger_channels
Show more8 305
Subscribers
No data24 hours
-227 days
-6530 days
Posts Archive
8 303
Задачи для начинающих Java программистов
В продолжение моего поста "Начинающим Java программистам" публикую очередную свою шпаргалку, а именно список задач, которые я обычно даю новичкам. Опытным разработчикам они покажутся тривиальными, а только начинающим изучать Java, причём самостоятельно, надеюсь будут в самый раз. Так же если Вы используете какие-то ещё задачи для обучения, то поделитесь ими, пожалуйста.:) Так как мне, иногда, как-то не по себе в ...-цатый раз рассказывать стажёрам одну и ту же задачу — пусть даже они её слышат впервые:)
Читать: https://habr.com/ru/articles/44031/?utm_campaign=44031
@a_cup_of_java | Другие наши каналы
8 303
Как я заново открыл для себя инкапсуляцию в java.
Я всегда считал, что Java — лаконичный и красивый (в плане концепции) язык с четкой структурой, позволяющей расширять эту структуру и на всевозможные фреймворки, там самым помогающая привнести порядок и в код конечного программиста. И, прежде всего, я считал, что java — это 100% ОО язык! Но недавно мне попался код, после которого я вечер ходил возмущался. Код совершенно несложный для понимания даже людей несведующий в java.
Читать: https://habr.com/ru/articles/43859/?utm_campaign=43859
@a_cup_of_java | Другие наши каналы
8 303
Java @ CERN
На фото Дерек Матейсон из ЦЕРН получает премию от Джеймса Гослинга. Java активно используется учёными в качестве основного инструмента для работы с Большим Адронным Колайдером: их система ATLAS в которой количество столкновений протонов достигает 600 в секунду, генерируя 15 петабайт информации управляется с помощью Java. Java так же используется как основное средство для мониторинга всех систем и 3D-визуализаций.
Подробнее на сайтах SUN & CERN.
Читать: https://habr.com/ru/articles/43740/?utm_campaign=43740
@a_cup_of_java | Другие наши каналы
8 303
Начинающим Java программистам
Программирую на Java вот уже 7 лет. Но на работе часто приходится обучать новое поколение. В связи с этим и решил сделать некоторую шпаргалку, которая, надеюсь, пригодится и для хабрчан. Если кто-то может помочь дополнить чем-то информацию из этой статьи, то пишите! Итак:
Основные ресурсы для начального обучения
* www.javable.com — сайт со статьями и tutorial'ом по Java. Все в основном на русском.
* www.exampledepot.com — очень полезный ресурс, где собраны краткие примеры использования классов для тех или иных пакетов
* java.sun.com — без первоисточника не обойтись. Для любого Java программиста JavaDoc должен быть истиной в последней инстанции. Так же здесь можно найти серию tutorial'ов на все возможные темы.
Читать: https://habr.com/ru/articles/43293/?utm_campaign=43293
@a_cup_of_java | Другие наши каналы
8 303
Мониторинг работы приложения
Данная статья первая из цикла статей и является коротким превью возможности системы.
За долгую карьеру работы разработчиком (более 15 лет) мы не раз сталкивались с проблемой не понятно что происходит на боевом контуре или что произошло на тестовом стенде после выкладки обновлений. В 90 % случаев приходится "лазить" по логам и пытаться понять что произошло и как обычно логов не хватает и все заканчивается тем что нужно добавить логов в одно конкретное место и так до следующего раза.
И имея такой опыт мы в команде bitDive решили создать инструмент который поможет разработчикам всегда иметь понимание и держать руку на пульсе своих приложений.
Читать: https://habr.com/ru/articles/921524/?utm_campaign=921524
@a_cup_of_java | Другие наши каналы
8 303
Как работает @Lazy в Spring — и когда он полезен
Привет, Хабр!
Если вы хоть раз писали хоть что‑то сложнее REST‑контроллера в Spring, вы наверняка ловили больную ситуацию: два бина зависят друг от друга, инициализация идёт по кругу, и вот он —
BeanCurrentlyInCreationException. И если в этот момент вы вспомнили про @Lazy — вы молодцы.
Сегодня я расскажу, как @Lazy может быть полезен, где он только делает вид, что спасает, и какие альтернативы работают лучше.
Читать: https://habr.com/ru/companies/otus/articles/921030/?utm_campaign=921030
@a_cup_of_java | Другие наши каналы8 303
Как вычислить числа Фибоначчи на Java
В статье показаны разные методы вычисления чисел Фибоначчи на Java — через рекурсию, итерацию и с оптимизацией мемоизацией. Рассмотрены плюсы и минусы подходов, что полезно для подготовки к собеседованиям и понимания алгоритмов.
Подробности: http://www.java67.com/2016/05/fibonacci-series-in-java-using-recursion.html
#en
@a_cup_of_java | Другие наши каналы
8 303
Как перевернуть целое число в Java без преобразования в строку? В статье рассказывается об алгоритме, который использует деление и остаток от деления для обращения цифр числа, включая работу с отрицательными значениями. Решение подходит для большинства случаев, но не учитывает переполнение. Проверка переполнения при реверсе числа в Java
В статье рассматривается способ предохранения от переполнения при реверсе целого числа на Java с помощью проверки промежуточного результата. Также предлагается использование Math.multiplyExact для надёжного обнаружения ошибок переполнения. Основы алгоритмов на Java: обзор популярных методов работы с массивами и деревьями
Статья рассказывает о ключевых алгоритмах и структурах данных в Java, включая сортировки, поиск, обходы бинарных деревьев и работу со строками. Полезно для изучения и подготовки к собеседованиям.
Подробности: http://www.java67.com/2015/08/how-to-reverse-integer-in-java-leetcode-solution.html
#en
@a_cup_of_java | Другие наши каналы
8 303
Как найти N-е число Фибоначчи на Java
В статье подробно объясняется, как вычислить N-й элемент последовательности Фибоначчи на Java с использованием рекурсии. Рассматриваются базовые случаи, рекурсивный метод и основы решения через деление задачи на подзадачи. Отлично для практики алгоритмов и подготовки к интервью. Топ-10 книг по алгоритмам для программистов раскрывают ключевые концепции и практические подходы к решению задач. Эти источники помогут улучшить навыки разработки и успешно проходить технические интервью. Узнайте, какие книги стоит прочитать каждому разработчику. Анализ и статистика публикаций за последние годы
Данный архив отражает динамику публикаций с 2012 по 2024 год. Самый активный период — 2023 и начало 2024 года. Статистика помогает понять тенденции и изменения в активности автора за это время.
Подробности: http://www.java67.com/2019/03/nth-fibonacci-number-in-java-coding.html
#en
@a_cup_of_java | Другие наши каналы
8 303
Как спроектировать потокобезопасный класс в Java
Потокобезопасность — одна из самых сложных и часто недооцененных тем в программировании. Особенно для разработчиков, работающих с многозадачностью в Java, где ошибки синхронизации могут приводить к непредсказуемым последствиям. В этой статье мы разберемся, как создавать классы, безопасные для работы в многопоточной среде, и какие подходы помогут избежать гонок данных, оставив код не только эффективным, но и надежным. Поговорим о проблемах, которые поджидают разработчиков при неправильной синхронизации, и о том, как эти проблемы можно эффективно решить, опираясь на проверенные стратегии.
Читать: https://habr.com/ru/companies/otus/articles/921348/?utm_campaign=921348
@a_cup_of_java | Другие наши каналы
8 303
GPULlama3.java: первая реализация Llama3 на чистом Java с поддержкой GPU
Университет Манчестера представил GPULlama3.java — проект, который позволяет запускать LLM с ускорением на GPU без необходимости писать CUDA. Используя TornadoVM, разработчики получают GPU-ускорение прямо из Java-кода.
Подробности: https://www.infoq.com/news/2025/06/gpullama3-java-gpu-llm/
#en
@a_cup_of_java | Другие наши каналы
8 303
@TestInstance(PER_CLASS) в JUnit 5: как и зачем переопределять жизненный цикл
Привет, Хабр!
Сегодня рассмотрим JUnit 5 и разберёмся, чем дышит аннотация
@TestInstance(PER_CLASS), — зачем переопределять жизненный цикл тестового инстанса и когда это может помочь.
Читать: https://habr.com/ru/companies/otus/articles/920934/?utm_campaign=920934
@a_cup_of_java | Другие наши каналы8 303
Карты, Java, 2 null'а. XMage edition
Компьютерная игра на Java — вещь довольно редкая, но всегда интересная. Поэтому мы не упустили возможность проверить статическим анализатором проект XMage и поделиться результатами. Посмотрим, что нашёл PVS-Studio в исходном коде проекта.
Читать: https://habr.com/ru/companies/pvs-studio/articles/921290/?utm_campaign=921290
@a_cup_of_java | Другие наши каналы
8 303
Шардируй меня полностью
Пришло время заключительной статьи проекта Mireapay, в этой последней статье программы минимум автор расскажет о том, как шардировать сервисы и какие варианты возможны. Но что самое главное, как это сделать просто и не тратить лишнее время на разработку в дальнейшем.
Фотографировать
Читать: https://habr.com/ru/articles/921274/?utm_campaign=921274
@a_cup_of_java | Другие наши каналы
8 303
Преодоление сложности в самом сердце Анемичной Модели
Доброго времени суток, Хабр!
Сегодня хотел бы поговорить об анемичной модели — одном из самых дискуссионных топиков (особенно для приверженцев DDD) и о том, как, по моему мнению, правильно её готовить. Для кого-то анемичная модель — это антипаттерн, тогда как для других это единственный правильный способ реализации приложений. Многие использовали её годами и даже не знали, как она называется, и что кем-то она считается антипаттерном. Реальность же такова, что анемичная модель — это инструмент, который может подходить или не подходить в зависимости от ситуации, но при этом является очень популярным и, по факту, «стандартом де-факто» для многих программистов и организаций. Хотя в последние годы я и вижу тенденцию к тому, что DDD и, соответственно, богатая доменная модель становятся всё популярнее, пока что, по моему мнению, им далеко до популярности анемичной модели.
Читать: https://habr.com/ru/articles/917012/?utm_campaign=917012
@a_cup_of_java | Другие наши каналы
8 303
Java: обновления от MicroProfile, Open Liberty и Apple SwiftJava
В этот раз представлены свежие версии MicroProfile 7.1, Apache TomEE 10.1, Open Liberty 25 и JobRunr 8.0 beta с новыми функциями. Также анонсировали SwiftJava — инструмент для взаимодействия Java и Swift. Подробности в последнем обзоре InfoQ.
Подробности: https://www.infoq.com/news/2025/06/java-news-roundup-jun16-2025/
#en
@a_cup_of_java | Другие наши каналы
8 303
Базовый обзор @TempDir в Java
Привет, Хабр!
Сегодня разберемся с
@TempDir — мощным, но часто недооценённым инструментом JUnit 5 для работы с временными файлами и директориями в тестах.
Читать: https://habr.com/ru/companies/otus/articles/920200/?utm_campaign=920200
@a_cup_of_java | Другие наши каналы8 303
Spring AI: retrieval augmented generation
Spring AI, который только недавно получил первую стабильную версию, уже предоставляет довольно много возможностей для работы с RAG (retrieval augmented generation).
Благодаря этому подходу нейросеть перед тем, как дать ответ на запрос пользователя, выполнит поиск подходящей информации в векторном хранилище. Причём каждый документ хранится не в виде текста, а в виде массива чисел (т.н. «векторов»).
Процесс преобразования различных документов в такой векторный формат выполняется опять же с помощью LLM и называется embedding («встраивание»). Хорошая новость заключается в том, что всё это можно легко сделать с помощью Spring AI.
Читать: https://habr.com/ru/articles/920992/?utm_campaign=920992
@a_cup_of_java | Другие наши каналы
8 303
Комментарии в коде: зло или спасение ?
Когда нужны комментарии в коде, а когда без них лучше. Объясняем на примерах, как писать понятные и полезные комментарии
Читать: «Комментарии в коде: зло или спасение ?»
@a_cup_of_java | Другие наши каналы
8 303
Что такое Deque в Java и как его использовать?
Deque — двунаправленная очередь, позволяющая добавлять и удалять элементы с обоих концов. Этот гибкий структура данных полезна, когда нужно работать с элементами в начале и конце одновременно. В статье есть пример кода и разбор основных операций. Лучшие бесплатные курсы по программированию и IT в одном месте. В подборке — обучение MEAN stack, DSA, SQL, Linux, Docker и многое другое. Отличный ресурс для развития навыков и старта карьеры в IT без затрат. Особенности работы с массивами и структурами данных в Java
Статья подробно рассматривает разные методы работы с массивами и списками в Java: от поиска и сортировки до преобразований и обхода деревьев. Полезный материал для тех, кто хочет углубить знания в программировании на Java.
Подробности: http://www.java67.com/2021/11/how-to-use-deque-in-java-example.html
#en
@a_cup_of_java | Другие наши каналы
