IT Kniga
Интернет-магазин компьютерной литературы

Компьютерные новости

Опрос: тестовое покрытие — must-have или bullshit

Java - habr.ru - Пт, 23/05/2025 - 10:02

Всем привет! Судя по ответам, которые мы получили от посетителей конференций Joker, Heisenbug и JPoint, примерно в половине компаний есть требования по набиванию тестового покрытия (обычно 60-70% кода должно быть покрыто тестами).

Однако, при личном общении с разработчиками и тестировщиками мы постоянно слышим, что никаких требований нет и покрытие никак не контролируется.

Кто отвечает за тестовое покрытие? Должны его набивать разработчики или эта задача ложится на плечи тестеров? Будем благодарны, если ответите на 1 (один) вопрос. Если хочется поговорить о наболевшем и рассказать, как у вас в проекте обстоят дела с тестовым покрытием, пишите в комментарии.

Всем хорошей пятницы и классных выходных!

Скачать последнюю версию Explyt Test плагина можно на сайте или напрямую с GitHub.

Для обратной связи и сообщений об ошибках: GitHub Issues

Для общения: t.me/explyttest

Опрос в один вопрос

Переосмысляя Serverless. Парадигма хранения и обработки данных

MySQL - habr.ru - Пт, 23/05/2025 - 08:24

Много было сказано про Serverless в нагрузках без сохранения состояния. Действительно, когда у вас есть контейнеры или функции их легко почти мгновенно масштабировать и нет большой разницы, на какой именно машине это делать.

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

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

Читать далее
Категории: Базы данных

Сегодня — Java 30 лет: ретроспектива выдающейся экосистемы разработки

Java - habr.ru - Пт, 23/05/2025 - 07:06

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

В этой статье я расскажу, почему Java прожила 30 лет и всё ещё чувствует себя уверенно: как она развивалась, как решаются проблемы производительности JVM, и почему на неё до сих пор делают ставку разработчики, архитекторы и CTO.

Предаться воспоминаниям

[Перевод] Стратегическое партнёрство Kotlin и Spring

Java - habr.ru - Пт, 23/05/2025 - 07:04

Команда Spring АйО перевела новость о стратегическом партнёрстве Kotlin и Spring. Полная null-безопасность, официальные обучающие материалы, мощная рефлексия и выразительный DSL — звучит многообещающе.

Читать далее

Почему я исправляю баги бесплатно и как это изменило мою карьеру

JavaScript - habr.ru - Чт, 22/05/2025 - 19:10

8 лет назад я исправил опечатку в чужом репозитории, а сейчас регулярно делаю коммиты в проекты, которые использую, и даже вошел в core team библиотеки с 27000 звёзд на GitHub

В этой статье покажу, что участие в Open Source проще, чем кажется. Расскажу, как регулярная работа с чужим кодом помогает быстрее разбираться в незнакомых кодовых базах, писать тесты и лучше документировать решения. А также объясню, почему публичная активность на GitHub выгодно отличает вас от других разработчиков, особенно в эпоху повсеместного использования ИИ.

Читать далее
Категории: HTML, CSS, Javascript

Интеграционное тестирование в Spring Boot: SourceCraft + Amplicode + Docker Compose Starter в деле

Java - habr.ru - Чт, 22/05/2025 - 10:58

Когда одних юнит-тестов уже недостаточно, на сцену выходят интеграционные. В этой статье от команды Amplicode мы покажем, как протестировать REST API в Spring Boot с использованием современного стека: генерация тестов через Amplicode, автоматический запуск окружения с помощью Docker Compose Starter и поддержки со стороны LLM-инструментов от Яндекса.

Читать далее

Как я создал мини-реддит на базе Telegram

JavaScript - habr.ru - Чт, 22/05/2025 - 09:05

Недавно мне пришла идея воссоздать механику Reddit внутри Telegram.

Телега — отличная и популярная платформа для общения и ведения блогов, но, на мой взгляд, это ужасное место для создания настоящих сообществ.

До этого я никогда не писал ботов или мини-аппов. У меня был только некоторый опыт в веб-разработке. Давно хотел разобраться, как всё это работает... И вот появилось немного свободного времени, звёзды сошлись и я запилил свой мини-Реддит в Телеге :)

Читать далее
Категории: HTML, CSS, Javascript

От Lerna до ModuleFederation

JavaScript - habr.ru - Чт, 22/05/2025 - 09:01

Привет, Хабр! Меня зовут Дмитрий Ханин, я работаю в Сбере и участвую в разработке Платформы ЦА — системы на базе блокчейн, занимающейся привлечением средств юридических и физических лиц. Сегодня хотелось бы рассказать про тот путь, который мы прошли за несколько лет, как организовали взаимодействие между разными приложениями и чем нам это помогло.

Рассказ разделён на две части. В первой рассмотрим путь проекта и проблемы, с которыми сталкивались, а во второй разберём, как мы решали часть этих проблем.

Читать далее
Категории: HTML, CSS, Javascript

[Перевод] Управление транзакциями в Spring: подробно о @Transactional

Java - habr.ru - Чт, 22/05/2025 - 07:55

Команда Spring АйО перевела статью об использовании аннотации @Transactional для управления транзакциями в Spring и в различных фреймворках экосистемы Spring, а также о ее интеграции с Hibernate. После прочтения данной статьи вы будете гораздо лучше понимать основы работы с этой аннотацией, а также механизмы, которые работают под капотом при ее использовании.

Читать далее

Из бариста в программиста. Как я освоила SQL за неделю и стала тимлидом в IT-компании меньше, чем за год

SQL - habr.ru - Чт, 22/05/2025 - 07:02

Привет, меня зовут Саша Ковалёва. За последние пару лет я: переехала из Владивостока в Москву, освоила SQL, устроилась в IT-компанию без профильного образования и выросла до тимлида. Сейчас продолжаю работать с базами данных в компании, которая разрабатывает low-code BPM-систему, а в свободное время занимаюсь вокалом и реслингом.

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

Читать далее
Категории: Базы данных

SQL: бесплатные курсы и тренажёры, которые стоит попробовать

SQL - habr.ru - Чт, 22/05/2025 - 07:00

Всем привет! Это команда Яндекс Практикума. Делимся подборкой полезных материалов для изучения SQL от экспертов курса «Специалист по Data Science».

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

Материалы подойдут как тем, кто изучает SQL с нуля, так и всем, кто хочет освежить или систематизировать знания.

Читать далее
Категории: Базы данных

Как обуздать хаос в распределенной и быстрорастущей ИТ-команде

Linux для всех - habrahabr.ru - Чт, 22/05/2025 - 06:48

Привет, Хабр! Меня зовут Амир Хусаинов. В ПСБ я руковожу системными администраторами Linux. Это распределенная команда специалистов, рассредоточенных от Новосибирска до Москвы. В ИТ я с 2007 года, а в ПСБ пришел тимлидом в сентябре 2022 года, когда компания была в авангарде импортозамещения. Меньше чем за год отдел вырос с 4 до 10 человек, а линукс-инфраструктура — с 400 серверов до 1500. Сейчас в отделе уже 35 человек и серверов более 11 000. При таком взрывном росте текущие процессы перестали функционировать и превратили работу в хаос и сплошную головную боль — несоблюдение сроков, бардак в документации, непрозрачная работа. Впрочем, эти болячки известны любой организации, и я знал, как их лечить.

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

Читать далее
Категории: Linux

Правильный порядок колонок в B-tree индексах PostgreSQL или правило ESR

SQL - habr.ru - Чт, 22/05/2025 - 06:15

Когда в проекте используется составной B-tree индекс, важно не просто "создать индекс", а сделать это правильно — иначе запросы могут не только не ускориться, но и начать работать медленнее. Возникает логичный вопрос: как выбрать порядок колонок, чтобы индекс действительно работал эффективно? Брутфорсом? По интуиции? По селективности?

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

Читать далее
Категории: Базы данных

Spring. Аутентификация на reactive feign

Java - habr.ru - Чт, 22/05/2025 - 05:32

В этой статье проведены параллели между обработкой ошибок в feign и reactivefeign клиентах на примере реализации starter, который реализует аутентификацию по OAuth 2.0 в spring reactive подходе. В этой статье не будет описания реактивного стека. Если Вы хотите разобраться, какие есть преимущества и зачем его применять, рекомендую посмотреть эту серию статей. В этой статье не будет сравнения реактивного и нереактивного подхода. Для этого есть такая статья. В этой статье я хочу показать, что перевод компонентов на реактивность - несложная задача по рефакторингу, которая не займет много времени. Добавить монетку в копилку того, что перевод на реактивность - процесс, основные затраты в котором нужно сделать на первом шаге, когда Вы решаетесь применять этот подход, а адаптировать существующие компоненты просто.

Читать далее

Мониторинг Web Vitals через Яндекс.Метрику: пошаговое руководство

JavaScript - habr.ru - Чт, 22/05/2025 - 04:16

Web Vitals — набор метрик от Google, которые показывают, насколько быстро и стабильно загружается ваш сайт, как плавно отображается контент и насколько оперативно интерфейс реагирует на действия пользователя.

В этой статье вы найдёте пошаговую инструкцию по интеграции Web Vitals в проект, отправке метрик в Яндекс.Метрику и настройке отчётов для оперативного мониторинга. Благодаря этому вы сможете своевременно выявлять и устранять «узкие места» в работе приложения ещё до появления жалоб пользователей.

Читать далее
Категории: HTML, CSS, Javascript

Мы наш, мы новый SDL3 построим или вперед в прошлое

C++ - habr.ru - Ср, 21/05/2025 - 13:52

Приветствую, Хабравчане!

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

Читать далее
Категории: C, C++

Погружение в grammY: разработка Telegram-бота с TypeScript и Docker

JavaScript - habr.ru - Ср, 21/05/2025 - 13:41

Привет, Хабр! В предыдущей статье о библиотеке grammY мы подробно разобрали основы создания Telegram-ботов на JavaScript. Кажется, настало время погрузиться в тему глубже и научиться добавлять более сложные фичи.

Мы подготовил пару инструкций по этой теме. В этой части разберем, как подключить базу данных и настроить регистрацию пользователей. А еще заложим фундамент, чтобы в будущем сделать интерактивное меню и подключить платежный модуль. По итогу у нас получится бот с простым, но рабочим онлайн-магазином, оплатой и взаимодействием с MongoDB. Подробности под катом! Читать дальше →
Категории: HTML, CSS, Javascript

Что нового в Amplicode 2025.1

Java - habr.ru - Ср, 21/05/2025 - 13:03

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

* Поиск по эндпоинтам 

* Улучшенный HTTP Client 

* Editor Inlay  

* Улучшенная генерация Docker-файлов 

* Интеграция с DBeaver  

* Spring Boot Initializer 

Читать далее

Что нового в Hibernate 7.0

Java - habr.ru - Ср, 21/05/2025 - 12:38

Команда Spring АйО перевела статью про новые функции и возможности, добавленные в Hibernate ORM версии 7.0 : новая лицензия Apache 2.0, переход на Jakarta Persistence 3.2 и Java 17, замена HCANN на Hibernate Models, а также множество улучшений для работы с JSON, XML, enum, soft-delete и запросами.

Добавлено экспериментальное API для batch-операций, Set-returning functions и удобный доступ к кэшу первого уровня.

Читать далее

Среда выполнения JavaScript простым языком: движок, Event Loop и очереди задач

JavaScript - habr.ru - Ср, 21/05/2025 - 10:30

Привет, с вами снова я – Дмитрий, React-разработчик, хотелось бы сегодня затронуть тему среды выполнения JS. Многие знают, другие уже подзабыли, а новички — вовсе не в курсе. В общем, эта статья точно найдёт своих читателей. Постараюсь простыми словами и по делу.

Читать далее
Категории: HTML, CSS, Javascript

Большая распродажа компьютерной литературы

Полный список здесь

RSS-материал