Рубрика «java» - 6

Монолит vs микросервисы - противостояние, которое идет уже не один год

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

Корни проблемы

Читать полностью »

Недавно на подкасте Spring АйО мы обсуждали новые свитчи в Джаве - с паттерн-матчингом и деструктуризацией. Я тогда ещё выразил мнение, что всё это неправославно, по-зумерски и отход от принципов ООП.

Не от инкапсуляции, полиморфизма и наследования, а вообще от подхода. Новые свитчи будут провоцировать разработчиков писать код по-новому, а не так, как завещали нам наши далёкие предки. С нарушением традиций, норм и устоев. Как учит Кейси Муратори, если вы понимаете о ком я.

Читать полностью »

Белобородов А.В., Зорин А.Г., Семашко С.В., Харьюзов П.Р.

Введение

Приводятся инструкции, которые помогут сделать первые шаги в экспериментах с контроллером в режиме драйвера шагового двигателя SMSD–4.2CAN, выпускаемого под маркой НПО «Электропривод» [1]. Это настройка контроллера в режиме драйвера и запуск шагового двигателя с помощью программы CANopen Builder Limited v1.0 [2], запуск двигателя из консоли, программ, написанных на языках С++ и Java, в которых потребуется библиотека CHAI для преобразователя интерфейсов USB–CAN ГКМН.468351.017-03 КБ «Марафон» [Читать полностью »

Интернет завален реализациями на Питоне, но иногда удобнее разбираться с технологиями на своём основном языке. Для меня это Kotlin.

Если вы программист, наверняка к вам приходят знакомые и предлагают писать агентов. Реализовав оного самостоятельно, вы поймете, что задача из себя представляет.

Статья обещает соблюдать два принципа, упрощающих восприятие:

  • Движение от частного к общему, потому что легче воспринимать примеры, чем абстракцию.

  • Быстрая обратная связь, как с REPL.

Читать полностью »

Периодически читая Хабр, я еще не находил статей, описывающих внутренний мир штатных головных устройств (далее — ГУ) на базе Android, хотя я уверен, что не только мне было бы интересно, как там всё устроено и работает. Речь пойдет про одни из самых популярных авто на нашем рынке: Geely Coolray и частично Geely Tugella.
Эта статья обещает быть длинной с вырезками кода из JADX и не только, добро пожаловать под кат.

Пациент: Belgee X50 2024 года, он же Geely Coolray дорестайлинг, но с новым головным устройством на относительно красивом бело/синем UI.

Аппаратная и программная платформа

Железки и софт для Geely изготавливает компания ECARX.

Железо легко Читать полностью »

Привет!

Начну с того, что немного уточню, о каких именно устройствах пойдёт речь. Ни для кого не секрет, что для организации мобильной связи используются базовые станции, на которых стоит много разного электрооборудования. А значит, за энергопотреблением надо следить, отчитываться и оплачивать его. Естественно, всё это логично делать удалённо, для чего на базовых станциях установлены специальные устройства сбора и передачи данных (далее УСПД).

Читать полностью »

Ну, поехали!

Как я прогулялся из 1С в Java и захотел обратно - 1

В этой статье я хочу поделиться своим видением обеих направлений разработки, сравнить их и дать субъективную оценку, а также кратко рассказать историю ИТ за последние 5 лет: как надувался «пузырь» и в итоге лопнул.

Читать полностью »

Всем привет! В Питере вместе с летней жарой случился релиз Explyt 4.0 c крутыми фичами для написания кода, тестирования и дебаггинга: агентским режимом Explyt Agent и генерацией тестов по исполнению Generate Tests from Execution.

Важные апдейты в Explyt 4.0:

  • обновлённый подход к следованию примеру тестов

  • расширенная поддержка Testcontainers и @DataJpaTest

  • генерация тестов по спецификации (EAP)

Улучшения и багфиксы:

  • теперь форматируется только сгенерированный код, пользовательское форматирование сохраняется

  • обновлены шаблоны запросов для интеграции с моделями Ollama

  • Читать полностью »

В статье Spring AI: retrieval augmented generation мы научились добавлять в контекст модели произвольные данные из векторного хранилища. Теперь давайте пойдём ещё дальше и посмотрим, как можно добавлять в контекст модели сторонние инструменты.

Spring AI: Model Context Protocol

Spring AI: Model Context Protocol

Протокол контекста модели (Читать полностью »


https://ajax.googleapis.com/ajax/libs/jquery/3.4.1/jquery.min.js