На заре 2018 хочется подвести итоги, и рассказать об изменениях в платформе CUBA за прошлый год. Если 2016 стал для нас революционным благодаря переходу в опенсорс, то 2017 стал годом планомерного развития: мы сфокусировались на предложении новых фич и услуг нашему сообществу.




Новые фичи в платформе и Studio


Начнём сразу с самого важного. Мы выпустили релизы 6.4, 6.5, 6.6 и 6.7, и в каждом были сотни мелких и крупных нововведений и доработок. Перечислим некоторые:


Графический интерфейс


Polymer UI помогает создавать гибкий и адаптивный веб-интерфейс, взаимодействующий с платформой посредством REST API. Мы рекомендуем использовать Polymer для клиентов с повышенными или нестандартными требованиями к UX, а экраны для бэк-офиса или администрирования создавать средствами стандартного пользовательского интерфейса платформы,

Стандартный UI в свою очередь пополнился новыми компонентами:


  • Pivot Table — сводная таблица, удобный инструмент для анализа данных конечным пользователем;
  • Side Menu — боковое меню для гибкой компоновки экранов;
  • DataGrid — более производительная альтернатива стандартной таблице, умеющая отображать динамические данные;
  • Полнотекстовый поиск как условие универсального фильтра: теперь стандартные критерии поиска можно сочетать с запросом FTS, что делает фильтр ещё более мощным и удобным для пользователей инструментом.

Среди новых компонентов также есть, к примеру, Predictive search, Image, Currency, Browser frame.


Ядро платформы


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


  • Value datasources упрощают работу с произвольными источниками данных, а cross-datastore references позволяют легко комбинировать данные из разных источников;
  • Механизм Bean validation помогает централизованно контролировать ограничения на значения атрибутов сущности;
  • Uber JAR упрощает развёртывание приложений на CUBA;
  • Новый BI addon отвечает за интеграцию приложений CUBA с платформой Pentaho;
  • Интеграция с ZooKeeper, поддержка балансировки нагрузки в кластере и версионирование REST API облегчают поддержку масштабируемых или распределённых конфигураций развёртывания;  
  • Поддержка шаблонов JasperReports в Генераторе отчётов расширяет возможности создания pixel perfect отчетов.

Studio


Кроме поддержки новых возможностей платформы, таких как Bean Validation, Polymer UI и value datasources, Studio коснулись и другие значительные изменения.


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


В конце года мы выпустили Studio SE — десктопную версию на основе Electron. Это избавляет разработчиков от необходимости запускать веб-сервер и обеспечивает автообновление.


Новые аддоны


Сейчас будет тизер того, что мы ещё не опубликовали, но к чему приложили немало усилий в прошлом году. Мы работаем над рядом новых — бесплатных и коммерческих — аддонов, расширяющих функциональность платформы. Это позволит покрыть “из коробки” еще более широкий спектр требований корпоративных приложений.  


Вот некоторые, по которым мы особенно продвинулись:


  • WebDAV — поддержка популярного протокола для работы с облачным хранилищем документов;
  • LDAP — продвинутая интеграция с LDAP с поддержкой правил назначения ролей и групп доступа пользователям;
  • IMAP — чтение и отображение писем через протокол IMAP с возможностью обработки почтовых событий в бизнес-логике приложения;
  • Messengers — поддержка общения в популярных мессенджерах, таких как WhatsApp, Viber, Slack и др.;
  • Dashboard — динамическая область для отображения виджетов, настраиваемых пользователем;
  • Rich Search — полнотекстовый поиск по элементам меню и экранам;
  • JavaMelody — интеграция с популярным инструментом мониторинга;
  • Admin Tools — набор инструментов для развёртывания, поддержки и устранения ошибок в приложениях CUBA.

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


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


Новые сайт и форум


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


В ноябре мы добавили новые сервисы и варианты покупки лицензий на английский сайт. Теперь можно приобрести не только услуги вроде тренингов и онлайн-консультаций, но также:


  • купить подписку на CUBA Studio и Премиум-дополнения на периоды от 3 месяцев до 3 лет с автоматическим продлением;
  • автоматически получить бесплатный триальный доступ к Studio и коммерческим дополнениям;
  • управлять своей подпиской, часами консультаций и балансом инцидентов платной поддержки в личном кабинете.

В этом году аналогичная функциональность появится и на русском сайте.


Что интересно, раздел покупок на сайте тоже написан на платформе CUBA! В нём мы совместили портал на Polymer со стандартным клиентом для администрирования. Для управления подписками и оплатой мы использовали интеграцию с сервисом Chargebee.


Новые услуги


Чтобы помочь разработчикам быстрее разобраться в платформе, мы опубликовали 10 новых бесплатных вебинаров и начали проводить регулярные тренинги.


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


Пожалуй, самым заметным изменением стало формирование команды заказной разработки. Возможно вы уже знаете, что платформа CUBA была написана компанией Haulmont. Это российская IT-компания, в которой в настоящее время трудится более 300 человек. Компания занимается разработкой корпоративных приложений, поэтому, конечно, мы занимались заказной разработкой ПО и ранее. Однако с прошлого года мы выделили полностью независимую команду, которая работает над проектами клиентов платформы CUBA.


Мы предлагаем две основных схемы работы:


  • разработка под ключ, где мы сами реализуем все этапы от сбора требований до поддержки на стадии промышленной эксплуатации;
  • и комбинированная схема, когда наши эксперты дополняют команду клиента. Это обеспечивает существенную синергию: команда на стороне клиента быстрее приобретает требуемый опыт работы с платформой и, в то же время, привносит в проект понимание и возможность близкого взаимодействия с бизнесом — важное условие для успешного проекта. Кроме того, подключение наших специалистов позволяет быстро расширять команду в случае необходимости.

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


Заключение


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


Следите за новостями и вливайтесь в сообщество!

Комментарии (13)


  1. IvanPonomarev
    05.03.2018 19:31

    Для каких задач используете интеграцию с ZooKeeper?


    1. jreznot
      05.03.2018 23:49

      Мы используем ZooKeeper примерно так же, как и все — discovery сервисов, координация работы кластера и хранение конфигурации распределённой системы.


      1. IvanPonomarev
        06.03.2018 00:17

        Для меня это интересная новость, поскольку я представлял себе Cuba Platform как конструктор веб-приложений над реляционной базой, кластеру вроде как неоткуда взяться. Микросервисы тоже пишутся на Cuba?


        1. glaschenko Автор
          06.03.2018 23:36

          CUBA поддерживает кластера на уровне web и middleware слоев. Микросервисы вполне на CUBA пишутся. Возможно для каких-то сценариев они будут «жирноваты», но в общем случае это не проблема.


      1. IvanPonomarev
        06.03.2018 10:29
        +1

        Вообще я с интересом слежу за вашим проектом и желаю всяческой удачи!


        1. glaschenko Автор
          06.03.2018 23:31

          Спасибо! На 2018 год у нас еще большие планы, скоро опубликуем :)


  1. dmxrand
    06.03.2018 08:11

    Прекрасная платформа. А что она делает?


    1. IvanPonomarev
      06.03.2018 10:31

      Быстрый конструктор Web-приложений на Java, нацеленных на бизнес-логику и работу с реляционной базой данных


    1. cruzo
      06.03.2018 15:21
      +1

      Пожалуй, лучшая замена технологической платформы 1С. Еще и Open Source


  1. qtask
    06.03.2018 17:29

    Очень интересно следить за вашей платформой! Крутой 2017 год!

    Но вот Polymer… Как вы работаете с энтерпрайзом? У них до сих пор есть машинки с 8 и 9 IE (да-да и WinXP на рабочих станциях)… Или у вас есть fallback на GWT?


    1. glaschenko Автор
      06.03.2018 23:29

      Спасибо! На самом деле Vaadin (построенный на GWT) — основной UI. Polymer клиент — альтернатива нестандартных интерфейсов, например порталов для внешних пользователей.


    1. web_devel
      07.03.2018 11:42

      Polymer UI предназначен для customer faced частей системы. Подержка старых IE слишком большой tradeoff если вы хотите создавать современные адаптивные web приложения.
      P.S. Я думаю времена изменились и, в контексте увеличивающейся ценности информации и участившихся атаках, использование неподдерживаемых платформ (даже в интранете) является критической проблемой для «энтерпрайза».


      1. aleksey-stukalov
        07.03.2018 21:44

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

        Второй момент такой, что вы в целом не ограничены в выборе технологий для фронта. CUBA предоставляет Generic REST и возможность написания своих кастомных REST контроллеров. Просто полимер потеснее интегрирован (например можно скаффолдить примитивные экраны из студии, а также цепляться за ресты специальными невизуальными компонентами).