Обновить

Комментарии 3

казалось бы, такие вещи как spring boot, jpa, vaadin уже сами по себе задуманы как путь к упрощению boilerplate configuration / code и быстрому созданию небольших сервисов. А тут еще какой-то слой абстракции, зачем?
Все же в энтерпрайзе чаще всего не нужно клепать по нескольку новых проектов в день, а вот поддерживать что-то старое десятилетиями - завсегда. Именно с этим тут будут проблемы, судя по всему.

@Inject
в спринговых приложениях не встречал никогда, любопытно почему не @Autowired.

Куба пошла дальше, она убирает boilerplate и уже поверх них генерирует экраны, роли, отчеты и т.д. Это полезно если ты уже пишешь 10 CRM подряд, а если единственный проект, то да, оверкил.

@Inject — это аннотация из стандарта javax.inject, куба исторически пыталась поддерживать стандарты Java EE. Функционально они почти идентичны, единственная практическая разница — @Autowired поддерживает атрибут required = false, что позволяет Spring не падать с ошибкой если бин не найден, а просто подставить null.

хм, тем более если выпуск продукта (CRM) поставлен на поток, я бы лучше единожды написал свой core, и далее уже для каждого случая кастомизировал бы для каждого заказчика. Опять же со связкой перечисленных выше фреймворков, можно добиться определенного plug-n-play.
Здесь же, получается, завязываешься на обновление платформы сторонним вендором. А вдруг появляется какая-то критичная CVE, безопасники на стороне клиента бьют тревогу, и остается ждать, пока сама CUBA её пофиксит. Как один из возможных сценариев.
Но спасибо за статью, захотелось на досуге глянуть ради интереса.
p.s.
Про аннотации знаю, удивило использование оной из java EE, если spring там все равно прибит гвоздями :)

Зарегистрируйтесь на Хабре, чтобы оставить комментарий

Публикации