Бизнес-логика отделяется от деталей имплементации, чтобы скрыть те куски кода, которые не имеют высокую важность для бизнеса. Делается это для того, чтобы программист, который не знаком с проектом, быстро ориентировался в коде, не вникая в код слишком глубоко. Это значительно экономит время и деньги на поддержку кода.
Почему-то все считают, что самому быстренько собрать сайт на CMS, чтоб он не выглядел, как дерьмо, навыки той же вёрстки совсем не нужны. Не каждый бизнесмен программист. Или можно 3 месяца только команду под приложение собирать, когда железо надо ковать прям сейчас, пока конкуренты спят. А уж сколько суперпроектов от программистов, которые тут на vc постоянно обсераюся, зная как писать. Пишут вылизанный проект по пол года, а он потом никому не нужен.
Я согласен с автором, но вот упор он немного не на то делает. Чтоб запустить MVP, нужно тратить минимум времени и денег. Гавнокод написанный за неделю не страшно будет переписать после проверки гипотез и привлечении первых клиентов. Главное, чтоб совсем он не падал от любого действия на сайте или в приложении.
Вот и правильно, даже для заказчика будет выгоднее переписать плохой код после того, как проект уже приносит доход, чем запариться над кодом в условиях неопределенности. В первом случае хоть можно доход от сайта реинвестировать в проект и выйти в ноль.
MVP тоже бывают разные, для какого-то проекта это неделя, для какого-то несколько месяцев. Всё зависит от объема проекта.
И я не имею в виду, что нужно делать совсем грубые ошибки, например, функции называть func1, func2, как делают новички. Просто не стоит применить сложные инструменты и подходы на первых порах, когда ещё ничего не ясно.
Что вы выберете:
- сделать «правильный» сайт или
- вечная блокировка телеграмм в России
Вода водой, в голове порядок наведите. Сайт «на коленке» в 99.9% случаях выброс денег, такой сайт лучше делать самому на конструкторе, зачем для этого нанимать говнокодера? Чем плох «сайт на коленке»:
- так как это говносайт и через некоторое время даже автору надоест это мракобесие поддерживать и он сольётся и нового будет найти нереально, все скажут давайте делать с нуля и такая ситуации случается в 95% случаях ещё до запуска сайта
- это творение прекрасно работает на машине разработчика и при демонстрации, а когда вы его выложили на общее обозрение и дали рекламу он стал нещадно тормозить и падать, а хостер начал блокировать аккаунт за нагрузку
- со временем простейшая задача выливается в недельные, а то и месячные реализации, а каждая выкатка багов плодит их больше чем исправляет
Ну и так далее в общем, мой совет, если хотите подвязать в свой бизнес сайт, то фундамент лучше заложить грамотный, тогда пару лет можно лавировать относительно беспроблемно
А если вы потратите время и деньги заказчика, сделайте идеальную архитектуру кода, примените, например, подход DDD (а для этого нужно больше времени) и сайт просто никому не будет нужен после запуска? Что вы после этого скажете?
Попробуйте не мыслить так узко, и смотреть на вопрос не только со стороны программирования, а ещё со стороны бизнеса. Конечно, со стороны программирования написать структурированный код очень правильно, но выгодно ли это бизнесу на первых порах, если неясно вообще будет существовать бизнес или нет?
Клиенту выгоднее потерять 500 тыс, если вдруг стартап не выстрелить, чем миллион и оставаться с дохлым продуктом, который имеет хороший код.