Чашечка Java
8.58K subscribers
3.88K photos
13 videos
56 files
6.33K links
Лучшие материалы по Java на русском и английском

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

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

Другие каналы: @tproger_channels
Download Telegram
MongoDB: магия вне Хогвартса в IT

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

Меня зовут Алена Метенева, я работаю старшим инженером по обеспечению качества в компании SM Lab в проекте «Кассы». Я тестирую бэкенд и интеграции и там, где это возможно, автоматизирую тесты на Java. Сегодня я хочу рассказать вам о том, как MongoDB помогает мне с этим процессом.

Что такое MongoDb

Думаю, многие работали с MongoDB (Монга) и знают, что это нереляционная СУБД, которая использует для хранения данных JSON-структуру: вместо таблиц и строк, как в реляционных базах данных, в MongoDB есть коллекции (набор документов, эквивалент таблицы реляционной базы данных) и документы (внутри коллекции они могут отличаться друг от друга размером, содержанием и количеством полей), которые состоят из пар «ключ–значение».

Для чего Монга тестировщику

Основное преимущество Монги в том, что она позволяет хранить разнородные данные в одной коллекции, и поэтому хорошо подходит для хранения справочников, различных конфигов, фиче-тоглов и адресов для подключения к смежным сервисам. В моем случае приложение, которое я тестирую, считывает эти параметры из MongoDB в рантайме. А это значит, что я могу управлять поведением системы, если буду менять эти параметры прямо во время тестов.

Что я имею в виду?

Представьте, что вы тестируете интеграцию с другой системой. Если все работает стабильно, то пройти позитивные сценарии будет проще всего. А если вы хотите протестировать кейс, в котором смежная система выдает ошибку 503 (Service Unavailable) – это будет уже сложнее. Хорошо, если вы управляете обеими системами и можете просто перезагрузить одно приложение и попытаться достучаться до него через второе. А если система не ваша? В таком случае принято использовать моки. Но есть и третий вариант: если ваше приложение для подключения к другому берет ссылку из MongoDB, то эту ссылку можно просто подменить, добавив в нее лишние символы, чтобы получить ту самую ошибку 503 или 404 (Not Found), например.


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

@a_cup_of_java | Другие наши каналы
👍2
Минцифры с 31 мая введет для айтишников аттестацию на Госуслугах

С 31 мая 2025 года в России стартует аттестация айтишников на Госуслугах. Бесплатное тестирование даст сертификат, действующий год

Читать: «Минцифры с 31 мая введет для айтишников аттестацию на Госуслугах»

@a_cup_of_java | Другие наши каналы
🤣9🎉2👍1🐳1
Секреты JVM: что происходит с ошибками под капотом

Новый перевод от команды Spring АйО расскажет вам (с примерами кода), как JVM обрабатывает исключения на низком уровне, что такое таблица исключений и какие сценарии используются для вариантов try-catch и try-finally.


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

@a_cup_of_java | Другие наши каналы
Лучшие книги по программированию на 2025 год

Для опытных разработчиков, стремящихся выйти на новый уровень, статья предлагает 10 книг, которые помогут углубить знания как в специфичных языках, таких как Java и Python, так и в общих концепциях программирования и управления проектами. Топовые проекты для изучения технологий: интересуетесь Android или веб-разработкой? У нас есть подборки лучших проектов, которые помогут вам освоить AWS, Node.js, Scala и облачные вычисления. Выберите направление и начните практическое обучение уже сейчас, развивая свои навыки программирования.

Подробности: http://www.java67.com/2020/05/10-must-read-books-for-experienced-software-developers.html

#en

@a_cup_of_java | Другие наши каналы
JPackage в gradle для Java17

В этой статье я расскажу вам, как создать исполняемое приложение на Java, используя инструмент jpackage и gradle.


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

@a_cup_of_java | Другие наши каналы
👏4
PAL видеоадаптер на FPGA с буфером кадра

Наверное, каждый второй разработчик на ПЛИС в начале своего пути пытался визуализировать работу своих схем. Кто-то подключал TFT-дисплей, кто-то — VGA монитор. А у меня под рукой оказался только телевизор с композитным входом. Ну что ж, работаем с тем, что есть!


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

@a_cup_of_java | Другие наши каналы
👏2
Valhalla — эпичный рефакторинг Java. Часть 2: проблемы проекта и их решения

Команда Spring АйО перевела и адаптировала доклад Брайана Гоетца “Valhalla — эпичный рефакторинг Java”, и сегодня мы публикуем вторую часть из трех. В первой части серии было рассказано об истории и причинах появления проекта Valhalla. Во второй части подробно разбирается вопрос о том, с какими фундаментальными сложности команда столкнулась на пути к решению поставленных задач.


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

@a_cup_of_java | Другие наши каналы
😁2
💡 Обзор книги: Стоит ли читать "Effective Java 3rd Edition"?

Новое издание "Effective Java" покрывает изменения и функции с JDK 7 по 9. Книга включает советы по Java 8, как лямбда-выражения и потоки, и подробнее разбирает модули Java 9. Это обязательное чтение для Java-разработчиков, стремящихся улучшить свой код. Топовые Вопросы для Интервью по Spring

Представляем список ключевых вопросов, которые помогут подготовиться к интервью по Spring. Узнайте о Spring Boot, Spring Cloud и Spring MVC, а также изучите микросервисы и аннотации Spring MVC. Полезно для программистов, готовящихся к собеседованиям!

Подробности: http://www.java67.com/2018/01/effective-java-3rd-edition-by-joshua-bloch-must-read-book-for-java-develoeprs.html

#en

@a_cup_of_java | Другие наши каналы
Как не платить 199 рублей/неделю за hh Pro, и при этом найти работу джуну без проблем и откликов — Java выручит

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

Именно поэтому я рад представить вам прикольного бота на Java, которая поможет вам в поиске работы джуну, не тратя при этом 199 рублей каждую неделю за hh Pro. Оно базируется на API самого хедхантера, поэтому всё легально, и не требует установки Google Chrome и Selenium на сервер.


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

@a_cup_of_java | Другие наши каналы
👏3
Мой Maven plugin для IDEA часть 2. Перезагрузка или импорт проектов в IDEA без ошибок

Всем привет. Более года назад я публиковал на Хабр статью, где рассказывал о проблемах IDEA Maven плагина, о том что с этим можно сделать и представил свою версию плагина. Основная проблема которую он решает - это импорт проектов в IDEA. На тот момент это был прототип решения. За это время у меня появилось ~300 активных пользователей, добавлена поддержка MVND и WSL. И спустя год, хотел бы рассказать о изменениях которые произошли в моем плагине более подробно, а ближе к концу статьи о свежих примерах ошибок импорта проектов в IDEA, которые смог решить мой плагин.


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

@a_cup_of_java | Другие наши каналы
👍2
Навигация в React Native: Искусство перемещения по экранам с помощью React Navigation

Разбираем, как организовать навигацию в React Native с помощью библиотеки React Navigation. Рассмотрим основные концепты, такие как стек и таб навигация, научимся перемещаться между экранами разных стеков и табов, а также разберём лучшие практики, хуки и подводные камни.

Читать: «Навигация в React Native: Искусство перемещения по экранам с помощью React Navigation»

@a_cup_of_java | Другие наши каналы
Книги, которые превратят программирование в искусство

Узнайте о шести книгах, которые помогут улучшить навыки программирования. Вместо простого изучения языков, таких как Java или Python, они научат писать более качественный код. Эти книги пригодятся любому разработчику, стремящемуся к мастерству в своей профессии.

Подробности: http://www.java67.com/2016/02/5-books-to-improve-coding-skills-of.html

#en

@a_cup_of_java | Другие наши каналы
🎉1
Программирование: что это, зачем сюда идти и к чему быть готовым?

Что значит быть программистом? Стоит ли начинать карьеру разработчика? С какими сложностями и возможностями столкнётся тот, кто решит пойти в IT?

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


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

@a_cup_of_java | Другие наши каналы
😁5
Java News Roundup: JDK 24-RC1, JDK Mission Control, Spring, Hibernate, Vert.x, JHipster, Gradle

This week's Java roundup for February 10th, 2025 features news highlighting: the first release candidate of JDK 24; JDK Mission Control 9.1.0; milestone releases of Spring Framework 7.0, Spring Data 2025.0.0 and Hibernate 7.0; release candidates of Vert.x 5.0.0 and Gradle 8.13.0; and JHipster 8.9.0.
By Michael Redlich

Read: https://www.infoq.com/news/2025/02/java-news-roundup-feb10-2025/

@a_cup_of_java | Другие наши каналы
👏3
Практика использования классов Socket и ServerSocket в Java

В этой статье будет показан пример создания небольшого многопользовательского чата с помощью сокетов. Для его реализации вам понадобиться Java и Maven.


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

@a_cup_of_java | Другие наши каналы
👍2😁2
Реальный кейс: 22 вопроса на техническом интервью на вакансию Java Lead в JP Morgan в 2025 году

Аудитории Хабра наверняка интересно, какие вопросы задают на техинтервью в мультинациональных корпорациях. Ведь ИТ-индустрия была и остается глобальной, несмотря на геополитику и разные другие сложности. Как минимум, такая информация об интервью «из первых рук» — это ориентир по уровню сложности собеседования на позицию Java Lead в любых других компаниях, включая крупные российские банковские и промышленные структуры. Именно поэтому эта статья в нашем блоге SSP SOFT.


Читать: https://habr.com/ru/companies/ssp-soft/articles/882872/?utm_campaign=882872

@a_cup_of_java | Другие наши каналы
👍3🎉1
Стоит ли фронтенд-разработчикам переходить на фриланс в 2025 году

Чем занимаются фронтенд-разработчики в ИТ. Перспективы развития отрасли. Где работать фронтендеру — в корпорации, в студии, на фрилансе.

Читать: «Стоит ли фронтенд-разработчикам переходить на фриланс в 2025 году»

@a_cup_of_java | Другие наши каналы
3👏2
Как за 15 минут превратить таблицы БД в JPA-сущности (и не облажаться)

Новый гайд от команды Amplicode придётся по душе тем, кто предпочитает разрабатывать схему базы данных перед реализацией JPA-модели или создаёт приложение на основе уже существующей БД.

За 15 минут вы узнаете, как можно легко преобразовать таблицы базы данных в JPA-сущности, учитывая ограничения, индексы, свойства столбцов, а также ассоциативные связи (1:1, 1:M, M:1, M:M).


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

@a_cup_of_java | Другие наши каналы
🔥3
Свобода для всех. DashBoard для ispsystem. GNU GPL

Линус Торвальдс: "Я создаю Linux не ради денег, а потому что это весело. Это как играть в Lego, только на уровне операционной системы."
Эти слова как нельзя лучше отражают дух сообщества открытого исходного кода, где разработка — это не просто работа, а страсть и возможность сделать мир лучше.

Именно с этой цитаты у меня в голове живет идея создать что-то для мирового свободного сообщества.

Сегодня я хочу рассказать о своем проекте — современном личном кабинете, который интегрируется с модулями ISP system, такими как Billmanager и VMmanager. Этот проект будет распространяться абсолютно бесплатно под лицензией GNU GPL, и я надеюсь, что он станет моим вкладом в сообщество свободного ПО.

Что делает мой dashboard blackmore уникальным?


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

@a_cup_of_java | Другие наши каналы
👍3🥰2👎1
Лучшие книги для изучения Angular в 2025 году

Если вы планируете изучать Angular, одно из ведущих JavaScript-фреймворков, рекомендуем рассмотреть следующие книги: "Pro Angular", "Ng-book", "Angular Up and Running", "Beginning Angular with Typescript" и "Angular Development with Typescript". Эти издания помогут начинающим разработчикам освоить Angular и стать в дальнейшем фронтенд- или фуллстек-разработчиками.

Подробности: http://www.java67.com/2020/03/top-5-books-to-learn-angular-for-beginners.html

#en

@a_cup_of_java | Другие наши каналы
Лучшие бесплатные книги по JavaScript для новичков в 2025 году

Ищете способы изучения JavaScript? Ознакомьтесь с нашими рекомендациями по 5 бесплатным книгам, доступным онлайн или для скачивания. Эти ресурсы помогут вам освоить программирование и стать востребованным специалистом в веб-разработке!

Подробности: http://www.java67.com/2018/07/top-5-free-javascript-books-download-pdf-read-online.html

#en

@a_cup_of_java | Другие наши каналы