Как стать автором
Обновить
76.39
Haulmont
Создаем современные корпоративные системы
Сначала показывать

Релиз Jmix 2.1: что нового?

Уровень сложности Средний
Время на прочтение 12 мин
Количество просмотров 850

Готовы поделиться ключевыми обновлениями, которые вы найдете в свежем релизе Jmix 2.1. 

Для тех, кто хочет знать все, полную информацию об изменениях можно найти в документации Что нового

Читать далее
Всего голосов 2: ↑2 и ↓0 +2
Комментарии 1

Микросервисы победили. Или не совсем

Уровень сложности Средний
Время на прочтение 8 мин
Количество просмотров 12K

«Мы хотим сделать систему по учету персонала. Только у наших архитекторов есть требование, что все у нас должно быть на микросервисах». Это, пожалуй, самый бесячий заход, который нам приходится слышать, как разработчику Jmix – платформы быстрой разработки корпоративных веб-приложений. Почему только микросервисы? Какие проблемы, кроме независимого развертывания они решают? Это действительно необходимо для всех типов приложений? Мы, для полного понимания, ни в коем случае не являемся противниками микросервисной архитектуры, однако неистово сопротивляемся слепому следованию «карго культа». Часто случается, что ничего, кроме удорожания разработки, поддержки и эксплуатации такие решения не приносят. Собственно, об этом и пишет Nikolas Frankel, автор статьи, перевод которой представлен ниже.

Читать далее
Всего голосов 10: ↑10 и ↓0 +10
Комментарии 23

Монолитная и микросервисная архитектура. Сравнение

Уровень сложности Средний
Время на прочтение 10 мин
Количество просмотров 20K

Во время технических презентаций нашей технологии – платформы быстрой разработки Jmix – мы, как правило, доходим до вопроса архитектуры создаваемых приложений и часто встречаем грусть в глазах разработчиков, когда сообщаем, что создаваемое приложение имеет монолитную архитектуру. Удивительно, но случается, что команды разработки приложений на Delphi или Oraсle EBS непременно заинтересованы в реализации микросервисной архитектуры, отождествляя ее с чем-то очень современным и самым продвинутым. К счастью, хайп вокруг микросервисов постепенно начал замещаться новой информационной повесткой о необходимости рационального использования ресурсов и выбора типа архитектуры приложений на основе компетенций команд разработчиков и масштабов создаваемого решения. В Jmix есть все необходимое, чтобы создавать современные корпоративные информационные системы в рекордные сроки и с минимальными затратами. Мы понимаем, что монолитная архитектура приложений Jmix не может закрыть все кейсы, но мы верим, что для каждой задачи есть подходящий инструмент. Прочитайте перевод статьи из блога Camunda, возможно, она поможет понять какой тип архитектуры подходит для вашего проекта, чтобы сэкономить время, деньги и нервы.

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

Читать далее
Всего голосов 10: ↑6 и ↓4 +2
Комментарии 18

Релиз Jmix 2.0 — новой версии платформы для быстрой разработки бизнес-приложений на Java

Уровень сложности Средний
Время на прочтение 7 мин
Количество просмотров 3.1K

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

Читать далее
Всего голосов 8: ↑7 и ↓1 +6
Комментарии 0

Интеграция Jmix с bpmn-js для эффективного моделирования бизнес-процессов при разработке приложений

Уровень сложности Средний
Время на прочтение 7 мин
Количество просмотров 1.9K

Jmix — это платформа с открытым исходным кодом для повышения эффективности разработки корпоративного ПО. Java-разработчики со всего мира используют ее для создания приложений, ориентированных на работу с данными, корпоративным контентом и бизнес-процессами. Jmix особенно эффективен, если у проекта есть строгие ограничения по бюджету и срокам. По сути, Jmix позволяет Java-разработчику стать fullstack-программистом и в результате своей работы получить полноценное веб-приложение на основе Spring Boot. Платформа привлекает тем, что не требует затрат на лицензирование конечных пользователей, а  для разработки и backend, и frontend используются один язык: Java или Kotlin. В основе платформы лежат широко распространенные технологии и IDE, дружественная разработчику. В этой статье расскажем, с чего начиналась поддержка моделирования бизнес-процессов в Jmix, как мы встроили в платформу фреймворк bpmn-js, и какие плюсы от этого получили пользователи. 

Первые шаги в направлении BPMN 

В случае приложений для управления транзакциями, документами или другими корпоративным данными часто требуется отделить бизнес-логику от кода. Это можно сделать с помощью визуального конструктора, в котором аналитики и разработчики моделируют  бизнес-процессы в соответствии с нотацией BPMN. К этой идее мы пришли в 2017 году, после большого количества запросов со стороны сообщества разработчиков Jmix. Поначалу для создания бизнес-процессов мы использовали собственный инструмент на основе движка Activiti. Он был частью CUBA Platform, прошлого поколения платформы Jmix.  

Читать далее
Всего голосов 7: ↑6 и ↓1 +5
Комментарии 0

Что нового в Jmix 1.5

Уровень сложности Средний
Время на прочтение 8 мин
Количество просмотров 2.2K

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

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

Одна из наших разработок, Jmix – это технологическая open-source платформа для быстрой разработки бизнес-приложений на Java. О ней и пойдет речь.  

Читать далее
Всего голосов 6: ↑6 и ↓0 +6
Комментарии 0

Виброакустический мониторинг дорожной обстановки

Время на прочтение 13 мин
Количество просмотров 3.7K

В России впервые в мире внедрили систему акустического мониторинга по волоконно-оптическим линиям на действующей автомобильной дороге протяженностью около 240 километров. Система позволяет в режиме реального времени отслеживать большое количество событий на дороге с точностью до 1 метра по акустическим следам от участников дорожного движения. 

Проект был реализован компанией "СМАРТС", за программную часть отвечала ИТ-компания Haulmont. Собственно далее рассказ пойдет от лица разработчиков о сложностях и нюансах этого уникального проекта.

Читать далее
Всего голосов 16: ↑15 и ↓1 +14
Комментарии 24

Путеводитель по ID для JPA сущностей. Часть 1: ID, генерируемые на сервере

Время на прочтение 14 мин
Количество просмотров 39K

Разработка инструментария – очень познавательное занятие, потому что заставляется задуматься над теми вещами, которые в процессе разработки иногда не замечаешь. Казалось бы, создание @Id атрибута в JPA – рутинное занятие и каждый разработчик может сделать айдишник, даже не включая мозг. Однако, когда начинаешь углубляться в эту тему и пытаться разработать инструмент, который не только помогает писать код для определения ID, но и подсказывает потенциальные проблемы, то всплывает много интересного. И наши соображения, которыми мы руководствовались при разработке JPA Buddy, вылились в этот цикл статей. 

Читать далее
Всего голосов 16: ↑16 и ↓0 +16
Комментарии 5

Подведение итогов первого года от JPA Buddy

Время на прочтение 9 мин
Количество просмотров 3.5K

2021-й год закончился, уже почти прошел первый месяц 2022-го. Прошлый год стал знаменательным для JPA Buddy: первый публичный релиз, встреча с первым пользователем и рост до одного из самых высокорейтинговых плагинов на IntelliJ IDEA Marketplace. А еще завтра у Баддика первая годовщина — ровно год назад вышел первый публичный релиз! В этой статье мы решили поделиться историей, которая стоит за JPA Buddy, достижениями 2021-го года, некоторыми интересными фактами, которые получили от нашего комьюнити, и планами на 2022-й.  

Читать далее
Всего голосов 15: ↑15 и ↓0 +15
Комментарии 15

Прогресс GC от JDK 8 до JDK 17

Время на прочтение 5 мин
Количество просмотров 20K

JDK 17 с нами уже несколько месяцев и он не только про новые возможности языка Java. Прирост производительности в сравнении с более старыми версиями JDK очень заметен. Это становится особенно очевидно, когда мы сравниваем его с предыдущими LTS версиями: JDK 8 и JDK 11. Большая доля в улучшении производительности происходит из новых функций и оптимизаций в JVM, и в этой статье фокус будет на улучшениях, которые были сделаны в области сборки мусора в JVM

Читать статью
Всего голосов 19: ↑19 и ↓0 +19
Комментарии 13

Роковой каскад: JIT, и как обновление Postgres привело к 70% отказов на национальном сервисе критической важности

Время на прочтение 12 мин
Количество просмотров 17K

Сайт мониторинга ситуации по коронавирусу Соединенного Королевства - основной сервис отчетности во время пандемии COVID-19 для всей страны. Он испытывает нагрузку порядка 45–50 миллионов запросов в день и относится к национальным сервисам критической важности.

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

Есть только одно исключение - наша база данных. Сервис работает с использованием специальной версии PostgreSQL: Hyperscale Citus. Тот факт, что наша база данных не соответствует архитектуре active-active — это не следствие того, что мы не знаем, как делать реплики для чтения, скорее - результат логистических проблем, обсуждение которых выходит за рамки этой статьи.

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

И что же могло пойти не так?
Всего голосов 43: ↑41 и ↓2 +39
Комментарии 14

Мягкое удаление в Hibernate: неочевидные факты

Время на прочтение 7 мин
Количество просмотров 14K

Мягкое удаление (soft deletion) — это популярная в энтерпрайз разработке стратегия удаления, когда вместо физического стирания та или иная запись помечается как удаленная, а потом фильтруется во всех запросах на чтение. Применение мягкого удаления может быть оправдано целым набором требований: аудит, возможность восстановления удаленных записей, а иногда необходимо уметь удалять данные, при этом сохраняя на них ссылки из других записей… 

Вообщем, нам, как авторам JPA Buddy (плагина для IntelliJ), пришлось с этим плотно разбираться. В этой статье мы рассмотрим детали, которые зачастую не упоминаются в большинстве публикаций по этой теме, хотя крайне важны для принятия решения о способе реализации мягкого удаления в вашем приложении. Давайте посмотрим, с чем вы, вероятно, намучаетесь. 

Читать далее
Всего голосов 26: ↑26 и ↓0 +26
Комментарии 25

Энтерпрайзные проекты убили профессию разработчика

Время на прочтение 7 мин
Количество просмотров 8.8K


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


На эту статью меня вдохновил комментарий на HackerNews, который я больше не могу найти. Суть его была такая: “В то время, как архитектура слишком проработана, код недоработан”. Если кто-то опознает автора, я с радостью проставлю его авторство.


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

Читать дальше →
Всего голосов 22: ↑18 и ↓4 +14
Комментарии 16

Java от Oracle снова бесплатна

Время на прочтение 2 мин
Количество просмотров 42K

Тезисно: 

Java 17 полна решимости пробить барьер, имеющийся на границе Java 8 и Java 9. Теперь, начиная с 17-ой версии, Oracle будет предоставлять Oracle JDK бесплатно, даже для коммерческих целей. Единственное чего делать нельзя — это перепродавать Oracle JDK.

В статье приведен перевод полного текста анонса с блога Oracle: https://blogs.oracle.com/java/post/free-java-license.

Читать текст
Всего голосов 52: ↑49 и ↓3 +46
Комментарии 103

Java 17 и Jakarta EE 9 — минимальные требования для Spring Framework 6

Время на прочтение 3 мин
Количество просмотров 17K


От переводчика: на конференции SpringOne были сделаны довольно важные анонсы относительно нового поколения Spring Framework, на Хабре это почему-то это прошло незамеченным. Судя по всему, в ближайшее время мы будем жить не просто в мире “Java 8/Java 11+”, а появится ещё один водораздел: “Spring 5/Spring 6+”. Чем это грозит? Например, если вы используете Hibernate 5.4, то придется принудительно обновиться на Hibernate 5.5+.


1 сентября на SpringOne было объявлено, что минимальные требования для Spring Framework 6 и Spring Boot 3, который будет доступен в 4 квартале 2022 года, сдвигаются в сторону увеличения:


  • Java 17+ (c Java 8-17 в линейке Spring Framework версии 5.3.x)
  • Jakarta EE 9+ (с Java EE 7-8 в линейке Spring Framework версии 5.3.x)
Читать дальше →
Всего голосов 26: ↑26 и ↓0 +26
Комментарии 4

5 советов разработчикам без опыта и студентам: как начать работу в IT

Время на прочтение 7 мин
Количество просмотров 15K

В Haulmont приходят как опытные специалисты, так и разработчики без опыта. Мы часто общаемся с новичками, которые не знают, с чего начать путь в IT. Собрали полезные ресурсы и рейтинги, а еще спросили руководителей нашей программы по трудоустройству начинающих разработчиков, как изучить рынок, выбрать язык программирования и о чем не забыть на собеседовании. Если вы уже опытный разработчик, будем рады узнать ваш опыт и советы для новичков.

Читать далее
Всего голосов 12: ↑7 и ↓5 +2
Комментарии 9

Kotlin + Hibernate: всё сложно

Время на прочтение 8 мин
Количество просмотров 16K

Невозможно представить JPA без сущностей. Однако, их определение в Котлине таит некоторое количество подводных камней. Давайте посмотрим, как избежать распространенных ошибок и использовать возможности Котлина на максимум. Внимание спойлер! Классы данных — не лучший вариант для сущностей.

В этой статье основное внимание будет уделено Hibernate, поскольку он является несомненным лидером среди всех реализаций JPA.

Читать далее
Всего голосов 18: ↑16 и ↓2 +14
Комментарии 5

Искусственный интеллект в программировании: чего ждать, чего бояться

Время на прочтение 5 мин
Количество просмотров 15K

Недавно прогремел GitHub со своим новым продуктом Copilot. Из ближайшего прошлого помнятся слова Kite и Codota (ныне Tabnine). Всё это щупальцы искусственного интеллекта, призванные изменить отрасль разработки программного обеспечения. В целом, шум затих, пена сошла, можно смотреть в более прозрачное будущее. В этой статье я опишу свои впечатления и переживания по поводу всего этого AI-я.

Читать далее
Всего голосов 16: ↑15 и ↓1 +14
Комментарии 30

Lombok + JPA: Что может пойти не так?

Время на прочтение 4 мин
Количество просмотров 30K

Lombok — это отличный инструмент, с которым Java-код становится чище и лаконичнее. Однако есть несколько нюансов, которые надо учитывать при его использовании с JPA. В этой статье мы выясним, как неправильное применение Lombok может повлиять на производительность приложений или даже привести к ошибкам. Разберемся, как этого избежать не теряя преимуществ Lombok.

Читать далее
Всего голосов 21: ↑19 и ↓2 +17
Комментарии 42

Информация

Сайт
www.haulmont.ru
Дата регистрации
Дата основания
Численность
501–1 000 человек
Местоположение
Россия
Представитель
Haulmont