расскажи, лучше не лезть в хайбрис?)
Да нет, почему. Вообще зависит от проекта. Хайбрис, кстати, теперь называется sap cloud commerce. Вообще это фреимворк для создания интернет магазинов, не особо популярный в рф но номер 1 за рубежом. Он очень упрощает создание магазинов, это достаточно сложное дело и без него или аналогичных платформ инет-магаз можно писать не один год. В чем он хороший - он весь построен на спринге.
+ всякие штуки специфичные для коммерции, типа обработки заказов, админка (бэкоффис), и куча всего. Естественно все очень хорошо кастомизируется, ибо опять же это все написано на спринге.
+ все написано на layered architecture, аля контроллер -> фасад -> (популяторы) -> сервисы -> dao (аля репозитории).
+ еще там используются другие библиотеки кроме спринга, например солр и орика. Ну и естественно вы можете затащить туда все что хотите, например мы тесты пишем на грувях + спок.
+ своя ормка, все называют ее items.xml. Если просто - описываем в xml модели, аля анноташек в хайбрисе. Нормально, боли нет.
+ "свой SQL", называется flexiblesearch. Что-то очень похожее на JdbcTemplate из спринга. Вот как выглядит запрос select * from {Product} where {Product.User} = :user
. Вроде норм, но репозитории в спринге конечно лучше. Есть всякие сервисы, типа ModelService, с помощью которого можно сохранять модели, получать модели, создавать модели, и т.п. Модель = Энтити.
Сборка - мавен + ант. Все построено на мавене, например депенденси. Ант используется для запуска сборки, и еще пары команд. Наследие предков, кхм. (хайбрис начинали писать достаточно давно).
+ у сапа сейчас достаточно неплохая практика версионирования. версия хайбриса выпускается каждый квартал, на самой последней lts версии спринга и явы. Т.е. сейчас 11 и 5, -> хайбрис написан на 11 и 5 версии соответственно. Другое дело - обновление самого хайбриса. Естественно, компании не хотят обновлять хайбрис, но у нашей версии например несколько месяцев назад закончилась поддержка от сапа. + сап постепенно поднимает цену подписки/лицензии на старые версии хайбриса.
Минусы:
Конфигурация в xml. С одной стороны, проект огромный, и фреимворк тоже большой. Поэтому удобно когда все конфиги в одном месте и знаешь где искать. С другой стороны - если у тебя есть аннотации, то вообще почти не надо ничего искать. Я говорю не только про бины. Можно поставить в xml скан пакетов и использовать только аннотации, но мы так не делаем потому что сервак будет подниматься очень долго. у меня сейчас с кучей оптимизаций он поднимается за 20 минут (1 000 000 строк ява кода). Поэтому мы регаем бины в xml, а уж в самих бинах используем autowire и прочее. Так вот, дело не только в бинах. Там еще много штук конфигурируется через xml. Вот это меня подбешивает, но жить можно. Можно конечно написать свои аннотации и заменить это все (я видел в инете примеры), но проект начинался в 2016 + это все задержит запуск сервака.
- flexiblesearch. Я привык к sql, но репозитории лучше.
- Конфигурация админки частично на xml.
- в идее хуже писать чем просто писать в идее на спринге
Про проекты. У нас все проекты на 8+ яве, а точнее 8 и 11. Надеюсь, наш проект проапдейтится до 11 явы и последнего спринга.
Еще не хватает всяких новых штук из мира явы. Например, я был бы счастлив если бы у нас на проекте использовался project reactor.
Короче, идти можно.
Минусы: небольшое отставание по технологиям, скорее всего оно будет постепенно сокращаться.
Плюсы: высокая востребованность хайбрис-людей, особенно на не-в-рф.
P.S. Еще вспомнил. Фронт на vue. Но есть обертки на jsp. Хайбрис раньше активно использовал jsp, поэтому у нас "каркас" страниц на jsp, где внутри везде крутится вуе. Вроде норм, но порой приходится лезть в jsp. Это бесит больше всего.
На самом деле, для инет магазов очень удобная штука, я понимаю почему она пользуется такой популярностью. Оракл даже рядом не стоит. Но дорогая по цене, насколько я знаю(. Зато ее могут позволить себе только крупные игроки, поэтому например без работы в кризис люди точно не останутся.