Узкоспециализированный конструктор web-приложений или бесконечный копипаст одного и того же функционала?
Многие веб-приложения похожи, по крайней мере в каких-то узких сферах. К примеру, учёт сотрудников в фирме или учёт студентов в учебном заведении, или учёт продуктов на складе. И, теоретически, можно было бы сделать конструктор веб-приложений, в котором каждое заведение настраивало бы под себя интерфейс и базу данных, а основной функционал был бы общим, запрограммирован 1 раз. А если без конструктора взглянуть на текущее положение вещей, то для всех схожих фирм пишут одинаковые по функционалу приложения, пусть и разные программисты в разное время. А могли бы заново по 10 раз не изобретать велосипед, а использовать уже кем-то придуманный продукт -- конструктор, где могли бы собрать себе приложение сами, не копируя код написанный кем-то ранее и не придумывая велосипедов. К примеру, пришёл программисту заказ на web-приложение. И он понимает, что в другой сфере нужно похожее приложение, пусть даже через несколько лет нужно будет. Зачем же копипастить код в будущем из этого приложения, если можно сделать конструктор, а дальше заказчик как хочет так и настраивает приложение? И сразу автоматически появляется ниша для нового продукта (конструктора). Нет так ли?
А если нужно дать доступ человеку, не связанному с программированием, к настройке сайта? Чтобы не было лишних совещаний и коммуникаций и бесконечных вопросов как реализовать то или иное место.
Идея хорошая, если весь функционал бизнес логики строить на абстракциях, подключая к нужному проекту, реализовывать остаётся конкретику на любом фраймворке. Минус это тщательное проектирование и заложение гибкости для возможности расширения на подготовительном этапе, что не всегда возможно с учётом сжатых сроков и ограниченного бюджета.