Вырезано из: https://php.ru/forum/threads/sozdanie-sajta-na-php.81094/#post-616234 А почему именно на самописе? Поясню вопрос: - В последнее время какой-то тренд у заказчиков на "самописы", "чистый PHP" и прочую ерунду. Вам-то какая разница что у сайта будет под капотом? Вам же важен функционал и внешний вид, не так ли? А уж будет это "самопис", или Laravel, или WordPress - вам какая разница?
Создали сайтик на вордпрессе...а он внезапно имеет коммерческий успех и растет, начинают пилить и навешивать на этот сайтик всякую шнягу, т.е. разработка превращается не в разработку нового функционала, а как же блин впилить в эту cms что то там такое...и пилят годами, но когда то упираются в потолок. И потом вытащить сайт из этого говна невероятно сложно и дорого..... А успешных сайтов которых устраивает стандартный функционал ЛЮБОЙ CMS не существует. Ни один более менее крупный проект не работает ни на одной из существующих CMS. А если и работает, то пытается с нее слезть....всеми силами... А каждый считает, что выстрелит именно его сайт.
Звучит резонно Однако исходя из опыта скажу, что иной самопис может быть намного менее расширяемым, чем тот же WP Опять-таки - "самопис" - понятие растяжимое, велосипедный CMS на процедурном PHP - это тоже самопис, не уверен что его потом кто-нить захочет развивать, если программист сменится в проекте ))))))
Программирую 10 лет на своем коде. Любой сайт, должен развиваться, а для этого надо добавлять новый код. А также возможность создать каринально новые конкурентноспособные решения. Движки - тоже самопис талантливых программистов. Но в последнее время непрограммисты, пытаются продвигать движки отдельно, как отдельный продукт, оборачивая понятие движка в красивую обертку, чтобы конкурировать с опытными программистами. По мне самопис и движки - равноценны, и выходит один из другого.
Я наверное слишком консервативен и всегда за самопис, если конечно бюджет не с гулькин нос(тогда вордпресс и в путь). Свои движки проще контролировать и дополнять, можно дополнить любыми фишками и плюшками, можно добавить всё что хочешь и в краткие сроки. На чужом движке, каком нибудь Фреймфорке, нужно оч аккуратно это делать и знать его от и до (на что нужно время), появился новый ФВ, нужно и его изучать. А зачем, если и сам можешь сделать не хуже, свой движок то один, и под любые проекты можно его, улучшая и совершенствуя под "Новое время" и под новые версии ПХП. Мне говорили, что я ошибаюсь, что проще намного Фреймфорк и быстрее и проще. Думаю в след проекте заморочиться на Python + Django || PHP + Lavarel. Посмотреть, попробовать, почему бы и нет.
@freebsdd, а вы не пробовали принципиально не различать свой фреймворк и сторонние? И «свой движок то один» – тоже как-то слишком узко. Хотя, я конечно по себе сужу. Возможно, одному человеку и правда трудно охватить сразу несколько движков, когда он их осн. разработчик. Про «под любые проекты» тоже как-то странно звучит. Под любые проекты, за которые вы беретесь, возможно, но изобретение универсального движка – это утопия. Монстрила получится быстро, а добиваться универсальности будете всю жизнь.
Что имеете ввиду? Возможно я не сталкивался с Вашими задачами и не совсем понимаю в чём узкость, но у меня принципиально даже разные проэкты, норм живут на одном движке, с абсолютно разными фишками и накрутками, Монстрилы нет, и насчёт утопии не согласен по опыту, движок в каждом проекте становится только лучше, работать с ним становится кайфовее и для заказчика функционал и фишки - всё что он захочет, движок у меня на PHP, при необходимости делаю что нить на Python (wss, deamon, etc). Каждому своё походу. И зачем мне несколько движков, чтоб просто было? Свой движок - придумал/сделал фишку и можно легко внедрить везде, не видел никогда в этом смысла ОДНАКО я люблю критику и по вышеуказанной причине вот как раз и хочу попробовать в новом проекте Python + Django || PHP + Lavarel, чтоб понять, может действительно я в своём мирке живу и что то упускаю из виду. И кстати насчёт универсальности всю жизнь - Брюс Ли молвил "Совершенству нет предела", в любом случае все движки к этому стремятся мне кажется
Ну рассматривать их просто как инструменты из своего арсенала, периодически пользоваться разными фреймворками, что-то интересное подсматривать в чужом фреймворке и тянуть в свой или наоборот что-то интересное свое подгонять под требования сторонних фреймворков, чтобы этим могли пользоваться не только вы. Довольно часто приходится наблюдать, когда люди крутятся в своем придуманном мирке, категорически не желая его расширять, прокладывать мостики за его пределы. К тому же владение каким-нибудь поп. фреймворком дает преимущества, если вы работаете под заказ, на дядю и т.п. Стремление к универсальности быстро приводит к чрезмерному разрастанию. Даже хорошо продуманная модульная архитектура тут не сильно помогает. Конечно, я не говорю о том, что нужно использовать движки, являющие в значительной степени аналогами, хотя и тут у поп. движков есть определенные преимущества, если вы работаете под заказ и т.п. Даже у обычных сайтов есть много разновидностей. Или вы хотите сказать, что у вас есть собственные наработки и для форумов, и для магазинов, и для соц. сетей, и т.д. --- Добавлено --- P.S. Понятие движка весьма расплывчатое. Это может быть и небольшая надстройка над каркасом приложения фреймворка, и практически готовое приложение с кучей предустановленных модулей. Даже для базовых конструкций универсальность часто приводит к усложнению.
Спасибо за Ваши комментарии и время, возьму на заметку! Скажу так - все наработки зависят от требований ТЗ
На самом деле чёткой границы между "на Laravel" и "самопис" нет. Если я соберу свой движок из отдельных качественных компонент, склею всё это через composer, буду соблюдать стандарты и практики, мой "самопис" может оказаться очень похожим на Laravel или Symfony. Границы размыты. Говорю как человек, который за год без остановки сайта перевел индусский самопис на Laravel. Теперь сайт поддерживает один разработчик вместо пяти. Даже с WP всё неоднозначно в последнее время. Кто-то его использует как headless CMS с полностью переписанным фронтом, а кто-то впихивает его в composer и далее см. выше. Моё субъективное мнение: в 2019г на 100% самописный PHP движок использует только очень недалёкий человек. Тот, у кого ЧСВ свисает гроздьями, а не тот, кто нацелен на результат. Таки хо́чете "самопис"? Советую ознакомиться с https://thephpleague.com/ , https://stackphp.com/ , https://github.com/nikic/FastRoute, http://www.slimframework.com/ чтобы стартовать с хорошей позиции.
Ну да со своей колокольни мир такой какой вы себе и представляете, всё однобоко и однозначно. Холивар какой то пошёл
@freebsdd, он же написал, что это его субъективное. Хотя в большинстве случаев с этим можно согласиться. Если у вас нет за спиной тонны собственных библиотек/др. наработок и вагона времени на разработку.
Самопис появляется когда: - Новички, не осилившие фреймворки и архитектуру, пишут свой велосипедный лапшекод. - Профи, осилившие готовые фреймворки, собирают из компонентов оптимальный код под проект. Так что самопис самопису рознь.
Ну, разница есть: 1. Laravel или другой популярный фреймворк - проще поддерживать, в т.ч. силами сторонних специалистов. 2. Wordpress и подобные - легче заказчику, удобная админка, плагины и прочее 3. Самопис - ну, для этого должна быть очень веская причина и уж точно не на стадии MVP: либо что-то крайне высоконагруженное, либо слишком специфичное. Но тут опять же лучше уходить в сторону микросервисов, CQRS и прочих вариантов архитектуры облегчающих горизонтальное масштабирование проекта, чем городить самосборки и писать велосипеды. Потому что первый вариант действительно можно адаптировать под рост нагрузки, а второй - лишь тешит эго очередного гуру. Опять же, если говорить о числах, из современного php/laravel в чистом виде можно легко выжать 1k rps на средненькой машинке, что более чем достаточно для большинства и в любом случае это скорее упрется в сторонние связи: API, БД и т.п. Короче, нет смысла в самописе, если умеешь в архитектуру и devops )