uk
Feedback
Чашечка Java

Чашечка Java

Відкрити в Telegram

Лучшие материалы по Java на русском и английском Разместить рекламу: @tproger_sales_bot Правила общения: https://tprg.ru/rules Другие каналы: @tproger_channels

Показати більше
8 568
Підписники
Немає даних24 години
-67 днів
-3030 день
Архів дописів
System Design: Как бизнес влияет на финальный вид ИТ-Системы и выбор технологий В System Design нет «правильных» решений — только компромиссы. Бюджет, сроки, команда и законы диктуют, какие технологии выбрать, как масштабироваться и когда идти на жертвы. Разберём, почему определение бизнес-ограничений это важный этап System Design и почему они диктуют Айтишникам как и с чем работать. Читать: https://habr.com/ru/articles/924830/?utm_campaign=924830 @a_cup_of_java | Другие наши каналы

Что такое blank final переменная в Java? Это final-переменная, которую не инициализируют при объявлении, а задают в конструкт
Что такое blank final переменная в Java? Это final-переменная, которую не инициализируют при объявлении, а задают в конструкторе. Если ее не инициализировать во всех конструкторах, компилятор выдаст ошибку. Такой подход удобен для задания неизменяемых значений при создании объекта. Уникальный гид по ключевым темам IT и программирования Статья представляет обширный список направлений и вопросов для подготовки в IT: от Java и Spring до Python, React и системного дизайна. Полезно для тех, кто хочет углубиться в разные технологии и подготовиться к собеседованиям. Подробности: http://www.java67.com/2012/09/what-is-blank-final-variable-in-java.html #en @a_cup_of_java | Другие наши каналы

Понимание модификаторов доступа в Java Статья объясняет четыре вида модификаторов доступа в Java — public, private, protected
Понимание модификаторов доступа в Java Статья объясняет четыре вида модификаторов доступа в Java — public, private, protected и package (default). Они регулируют видимость классов, методов и полей, помогая создавать более безопасные и поддерживаемые программы. Глубокий гид по Java и IT: от основ до продвинутых тем и интервью Статья охватывает ключевые вопросы и темы для программистов, включая Java, Spring, базы данных и многопоточность. Полезно для подготовки к интервью и углублённого изучения технологий. Что скрывается за меню блогов и настройками конфиденциальности? В представленном фрагменте отражена структура архивов блогов по датам и разделы, связанные с политикой конфиденциальности и условиями использования. Это помогает лучше ориентироваться в контенте и правилах ресурса. Подробности: http://www.java67.com/2012/12/what-is-public-private-protected-package-default-private-access-modifier-java.html #en @a_cup_of_java | Другие наши каналы

Как вывести дату в разных часовых поясах в Java В статье объясняется, как с помощью SimpleDateFormat и TimeZone отображать да
Как вывести дату в разных часовых поясах в Java В статье объясняется, как с помощью SimpleDateFormat и TimeZone отображать дату в разных часовых поясах, например IST и PST. Также даются рекомендации по избеганию ошибок с часовыми поясами и безопасности при работе с многопоточностью. Топ IT-темы 2024: от Java и Spring до машинного обучения и DevOps В статье собраны самые востребованные направления IT — программирование, облачные технологии, работа с данными и многое другое. Обзор поможет ориентироваться в актуальных трендах и выбрать полезные ресурсы для развития. Архив публикаций с 2012 по 2024 год В статье представлен подробный архив публикаций по месяцам и годам с 2012 по 2024 год. Данные отражают активность и динамику публикаций за последние годы на платформе блоггера Soma Sharma. Подробности: http://www.java67.com/2012/12/how-to-display-date-in-multiple-timezone-java.html #en @a_cup_of_java | Другие наши каналы

Разбираемся со Spring Boot с помощью Spring Debugger Команда Spring АйО перевела статью о работе со Spring Debugger и о том, как его применение существенно облегчает отладку приложений, написанных с использованием Spring Boot. На момент написания статьи фича доступна только в Ultimate версии IntelliJ IDEA. Читать: https://habr.com/ru/companies/spring_aio/articles/924550/?utm_campaign=924550 @a_cup_of_java | Другие наши каналы

Microsoft выпустил бесплатный курс по Model Context Protocol с практикой на Python, C# и Java Microsoft запустил бесплатный п
Microsoft выпустил бесплатный курс по Model Context Protocol с практикой на Python, C# и Java Microsoft запустил бесплатный практический курс по протоколу Model Context Protocol (MCP) с примерами на Python, C#, Java и TypeScript для разработки LLM-приложений и серверов MCP. Читать: «Microsoft выпустил бесплатный курс по Model Context Protocol с практикой на Python, C# и Java» @a_cup_of_java | Другие наши каналы

System Design: Чек-лист по сбору и фиксации требований все случае жизни Если на собеседовании по System Design не уделить внимание требованиям, это почти гарантированно приведёт к провалу — даже если ваше техническое решение идеально. Игнорирование требований — главная причина провала на собеседовании. Уделите этому 5-10 минут, и ваше решение сразу станет в разы сильнее. Расскажем, как собрать и зафиксировать требования чтобы повысить свои шансы при прохождении собеседования в IT-компанию. Читать: https://habr.com/ru/articles/924570/?utm_campaign=924570 @a_cup_of_java | Другие наши каналы

Шедевральный трюк Великого Springhoff-а Доброго времени, Хабр! Совсем недавно я уволился из компании, в которой хорошей практикой считалось проведение обучающих/развлекающих презентаций для коллег во время ланчей (уволился не из-за этой практики, если что), и так как нынче я живу и работаю не в России, и все мои коллеги ничего не слышали ни про какие Joker-ы и JPoint-ы, то я решил несколько считерить, взять какую-нибудь классную презентацию из этих конференций, перевести и показать коллегам (с указанием ссылки на первоисточники, разумеется, профессиональная этика мне не чужда). Выбор пал на видео Евгения Борисова и Баруха Садогурского "Приключения Сеньора Холмса и Джуниора Ватсона" (кто не смотрел - бегите и смотрите) Таким образом я перевел два детективных расследования из того видео, и мне захотелось придумать свое собственное, а не только переводить чужие. Оффтопик: это офигеть как непросто. Надо перелопатить кучу информации, зацепиться за какие-нибудь прикольные баги/неочевидные моменты в работе java/фреймворков/etc., выцепить из них те, которые можно объединить в одно общее дело, затем еще антураж придумать, чтобы это был не просто код, а стилизованный код. Long story short: я сделяль. Я очень горжусь этой презентацией, я показал ее коллегам, я показал ее всем друзьям, и теперь вот решил выложить этот материал и тут Читать: https://habr.com/ru/articles/922248/?utm_campaign=922248 @a_cup_of_java | Другие наши каналы

Топ-5 новых возможностей JDK 7 для Java-программистов Java 7 принесла важные улучшения: поддержку String в switch, обработку
Топ-5 новых возможностей JDK 7 для Java-программистов Java 7 принесла важные улучшения: поддержку String в switch, обработку нескольких исключений в одном блоке, автоматическое закрытие ресурсов, fork-join фреймворк для многопоточной работы и оператор diamond для упрощения дженериков. Узнайте подробности. Лучшие вопросы и материалы для подготовки к интервью по Spring и Java собраны в одном месте. В статьях освещены ключевые темы, от основ до микросервисов, с примерами и рекомендациями для успешного собеседования. Идеально для программистов любого уровня. Подробности: http://www.java67.com/2012/09/what-is-new-in-java-7-top-5-jdk-7.html #en @a_cup_of_java | Другие наши каналы

DOM и SAX парсеры в Java: ключевые отличия. DOM загружает весь XML в память, удобен для маленьких файлов и поддерживает XPath
DOM и SAX парсеры в Java: ключевые отличия. DOM загружает весь XML в память, удобен для маленьких файлов и поддерживает XPath. SAX — событийный и экономит память, подходит для больших XML. Выбор зависит от размера данных и доступных ресурсов. Лучшие вопросы для подготовки к интервью по Spring Полезный подборка вопросов и тем для успешной подготовки к собеседованиям по Spring Framework и смежным технологиям. Узнайте, какие темы чаще всего встречаются и как к ним подготовиться эффективно. Подробности: http://www.java67.com/2012/09/dom-vs-sax-parser-in-java-xml-parsing.html #en @a_cup_of_java | Другие наши каналы

Как настроить ежедневное разделение логов в Java с Log4j Статья подробно объясняет, как с помощью класса DailyRollingFileAppe
Как настроить ежедневное разделение логов в Java с Log4j Статья подробно объясняет, как с помощью класса DailyRollingFileAppender настроить автоматическое создание новых лог-файлов каждый день. Это помогает контролировать размер логов и облегчает анализ ошибок в приложениях на Java. Обширный список тем для IT-специалистов и разработчиков Пост: В статье представлен большой набор ключевых тем из IT и программирования — от Java, Spring и Kubernetes до машинного обучения, веб-разработки и инструментов для интервью. Полезный ресурс для подготовки и саморазвития. Архивы и важные данные сайта Soma Sharma В статье представлен обзор архивов публикаций с 2012 по 2018 годы, а также сведения о политике конфиденциальности и условиях использования сайта Soma Sharma. Информация поможет лучше понять структуру и историю ресурса. Подробности: http://www.java67.com/2020/01/how-to-configure-daily-file-rolling-in-log4j-java.html #en @a_cup_of_java | Другие наши каналы

Обработка исключений в рабочих процессах с использованием Flowable Исключения являются частью любого процесса. Разработчики, создающие бизнес-процессы, должны уметь обрабатывать исключения в бизнес-кейсе, чтобы гарантировать, что сам процесс устойчив и может продолжаться после возникновения сбоев. Логика обработки исключений различается в зависимости от вашей задачи и инструментов, которые у вас есть в распоряжении. В этой заметке я попытался определить различные методы обработки исключений, используя язык паттернов. Каждый паттерн следует определённой структуре, называемой Контекст (общая ситуация, в которой проблема повторяется), Проблема (формулировка), Условия (условия, при которых можно рекомендовать предложенные решения) и Решение. Итак, давайте приступим. Читать: https://habr.com/ru/articles/920232/?utm_campaign=920232 @a_cup_of_java | Другие наши каналы

15 основ проектирования систем + полезные материалы Балансировщик нагрузки (Load Balancer) — Распределяет входящий трафик меж
15 основ проектирования систем + полезные материалы
Балансировщик нагрузки (Load Balancer) — Распределяет входящий трафик между несколькими серверами, чтобы ни один из них не был перегружен. Повышает отказоустойчивость, доступность и уменьшает время отклика. API Gateway — Единая точка входа для всех клиентских запросов в микросервисной архитектуре. Обеспечивает маршрутизацию, аутентификацию, лимиты по частоте, агрегацию запросов. DNS (Domain Name System) — Преобразует человеко-читаемые доменные имена в IP-адреса, необходимые для маршрутизации трафика. Кэш (Cache) — Хранит часто используемые данные в оперативной памяти для ускорения доступа и уменьшения нагрузки на базу данных. CDN (Content Delivery Network) — Доставляет статический контент (картинки, CSS, JavaScript и пр.) с серверов, расположенных ближе к пользователям. Снижает задержки и расход полосы пропускания, особенно при работе по всему миру. База данных (Database) — Основное хранилище данных. Может быть SQL или NoSQL, поддерживает структурированные запросы, индексацию, транзакции и долговечность данных. API — Определяет, как сервисы обмениваются данными (обычно через HTTP или gRPC). Обеспечивает модульность и чистое разделение ответственности. Микросервисы (Microservices) — Делят монолитное приложение на независимые сервисы. Повышают гибкость, позволяют лучше изолировать ошибки и масштабировать отдельные компоненты. Ограничение частоты запросов (Rate Limiter) — Контролирует максимальное количество запросов, которые может сделать пользователь или сервис за определённый промежуток времени. Защищает API от злоупотреблений и обеспечивает справедливое распределение ресурсов. Объектное хранилище (Object Storage) — Сохраняет большие блобы (файлы, видео, резервные копии) с высокой доступностью и долговечностью. Примеры — AWS S3, Google Cloud Storage. Очередь сообщений (Message Queue) — Позволяет сервисам асинхронно обмениваться сообщениями через очередь (например, Kafka, RabbitMQ). Помогает "развязать" системы и справляться с пиковыми нагрузками. Шардирование (Sharding) — Разделяет большие объёмы данных на части по разным базам или таблицам. Способствует масштабированию и ускоряет выполнение запросов. Репликация (Replication) — Копирует данные с одного узла БД на другие. Повышает отказоустойчивость и ускоряет выполнение запросов на чтение. Последовательное хеширование — Техника распределения данных по узлам так, чтобы при увеличении или уменьшении числа узлов происходило минимальное перераспределение данных. Используется в распределенных кэширующих и хранилищах. Мониторинг (Monitoring System) — Следит за состоянием системы, собирает логи/метрики, оповещает об авариях и отклонениях. Критически важен для контроля, отладки и поддержания работоспособности.
Сохраняем и не забываем, что у вас есть такое золото 😅

Генерация случайных строк в Java с SecureRandom В статье рассказывается, как с помощью класса SecureRandom создавать случайны
Генерация случайных строк в Java с SecureRandom В статье рассказывается, как с помощью класса SecureRandom создавать случайные алфавитные и буквенно-цифровые строки заданной длины. Этот способ безопаснее стандартного java.util.Random и подходит для ключей и идентификаторов. Топовые темы IT и программирования в одном месте. В статье собраны материалы по сертификациям AWS и Azure, backend-разработке, Java, облачным технологиям, data science, DevOps и многому другому — всё для развития навыков и карьерного роста. Архивы публикаций: динамика по годам и месяцам В статье представлен обзор количества публикаций по месяцам и годам с 2012 по 2021 год. Отмечается рост активности блога в последние годы и разнообразие тем, отражённых в архивах. Это помогает проследить развитие контента со временем. Подробности: http://www.java67.com/2018/01/how-to-create-random-alphabetic-or-alphanumeric-string-java.html #en @a_cup_of_java | Другие наши каналы

Как сортировать объекты в Java: разбор Comparable и Comparator В статье рассказывается, как правильно упорядочить объекты в J
Как сортировать объекты в Java: разбор Comparable и Comparator В статье рассказывается, как правильно упорядочить объекты в Java с помощью интерфейсов Comparable и Comparator. Приведены примеры сортировки по разным критериям и объяснены важные нюансы реализации. Полезно для тех, кто изучает Java. Подробности: http://www.java67.com/2012/10/how-to-sort-object-in-java-comparator-comparable-example.html #en @a_cup_of_java | Другие наши каналы

Разница между int и Integer в Java В Java int — примитивный тип данных, а Integer — его оболочка (wrapper-класс). Автоупаковк
Разница между int и Integer в Java В Java int — примитивный тип данных, а Integer — его оболочка (wrapper-класс). Автоупаковка скрывает различия, но Integer может быть null, что приводит к NullPointerException. Знание этой разницы важно для эффективной разработки и избегания ошибок. Топовые технологии и навыки для программистов в 2024 году В статье собраны ключевые инструменты и темы, важные для развития IT-специалистов: от Next.js и Python до Spring Framework и NLP. Обзор поможет ориентироваться в современных трендах и подготовиться к собеседованиям. Подробности: http://www.java67.com/2018/02/what-is-difference-between-int-and-integer-in-Java.html #en @a_cup_of_java | Другие наши каналы

Spring Data JPA и Hibernate: ориентируемся на производительность. Часть 3 Команда Spring АйО перевела и адаптировала доклад Мацея Валковяка “Performance oriented Spring Data JPA & Hibernate”, в котором на наглядных примерах рассказывается, как существенно нарастить производительность приложения, оптимизировав его взаимодействие с БД. Доклад будет опубликован тремя частями. В первой части было рассказано об оптимизации управления соединениями с базой данных. Во второй части мы посмотрели на то, как оптимизировать код и настройки Spring Data и Hibernate, чтобы минимизировать количество отправляемых в базу данных SQL запросов. Третья часть посвящена обзору инструментов, которые могут помочь разработчику правильно организовать работу по регулярной оптимизации производительности приложений, в том числе при работе командой. Читать: https://habr.com/ru/companies/spring_aio/articles/923872/?utm_campaign=923872 @a_cup_of_java | Другие наши каналы

Тест-кейсы на автопилоте: как Spring AI и Atlassian MCP упрощают жизнь тестировщика Тест-кейсы перестанут быть твоей головной болью и болью твоей команды. Нужно просто перестать их писать. Путь от спецификации до коллекции в тест-менеджере может быть пройден за минуту. Достаточно принимать по одной чайной ложке... Или попытаться воспроизвести цепочку задач с помощью AI: модель легким движением промпта превращается в QA, нарезает спеку на чанки, отдавая тебе список из структурированных данных, которые ты шлешь далее в свой тест-менеджер. Пишу о своих изысканиях в области автоматизации рутинных процессов с помощью Spring AI, Atlassian MCP, Qdrant, OpenAI, Allure TestOps. Читать: https://habr.com/ru/articles/923806/?utm_campaign=923806 @a_cup_of_java | Другие наши каналы

Spring AI: Model Context Protocol Model Context Protocol (MCP) — это унифицированный протокол взаимодействия между большими языковыми моделями (LLM) и внешними источниками данных и инструментами. Spring AI предоставляет очень простой декларативный подход для добавления любых инструментов в контекст LLM с помощью MCP. Мы рассмотрим несколько простых примеров по созданию MCP-клиента и MCP-сервера. Читать: https://habr.com/ru/articles/923638/?utm_campaign=923638 @a_cup_of_java | Другие наши каналы

Логирование в конвейере дебетовых карт: как мы сделали его удобным для себя Статья о том, как мы улучшали логи внедрением сквозных идентификаторов и не только. Делали это для того, чтобы упростить и ускорить разбор возникающих ошибок. Это в разы сократило время разбора. Статья может быть полезна backend-разработчикам, лидам, тестировщикам, аналитикам, которые проектируют и разрабатывают сложные системы. Код написан на java и соседних технологиях, но подходы, я уверен, универсальны. Они упростят жизнь при разборе ошибок на проде и на тестовых стендах. Читать: https://habr.com/ru/companies/otpbank/articles/923584/?utm_campaign=923584 @a_cup_of_java | Другие наши каналы