nik_www
Новичок
В связи со сменой работы, озадачился следующим вопрос: а какой готовый код использовать для создания сайтов (начиная от обычных визиток, заканчивая обычными интернет магазинами).
До этого работал в компании, которая занимается только собственными highload проектами. Писали на lumen, laravel, yii2, symfony, даже были самописные. Надоело там за 4 года, и вот даунгрейднулся в небольшую компанию, которая занимается относительно простыми сайтами в основном на modx, bitrix и opencart. Познакомившись с несколькими проектами по теме "исправить баги", "ускорить выполнение" (некоторые страницы в простых сайтах генерятся по 2-3 секунды), ну и, само собой, "добавить новый функционал", вспомнил за что весь цивилизованный мир ненавидет phpешеров.
Вот несколько cms и что мне в них не понравилось:
- opencart
куча дублирующего кода и логики
неоптимальные запросы: огромное количество JOIN, вложенных подзапросов (ну явно не под mysql); в цикле большое число повторяющихся запросов WHERE id = [int] вместо одного WHERE id IN ([int],[int],[int]...)
невозможно выключать ненужный функционал и добавлять свой: огромные функции в сотни строк, каждый раз смотря на которые мне хочет заняться бессмысленным рефакторингом
по несколько раз перегоняются данные из одного массива в другой, пока дойдет до шаблона
- cs cart - вообще непойми что, еще и за деньги, тут актуально все от opencart + абсолютно нечитаемый код
- bitrix - может для обычных простых сайтов визиток и нормально, но что-то серьезное делать на такой структуре я не вижу возможности (разве что использовать платные готовые модули, которые так же невозможно самому поддерживать)
- modx - по мне так просто улучшенная бесплатная версия bitrix, которая подходит только для создания простейших сайтов (не представляю, как можно поддерживать интернет магазин на такой структуре)
- Webasyst - немного смотрел один сайт на этом framework, в общем то качество кода понравилось, только с одним большим НО: можно было бы сделать все гораздо проще и читабельнее (но возможно это что-то адекватное относительно всего остального); админка - ничего менее удобного не видел в своей жизни в плане интерфейса
Что очень нравится из прошлой жизни и чего не хватает сейчас:
- само собой, собственноручно написанный код
- ORM - передаем в шаблоны массивы объектов и там уже вызывает нужные функции у объектов: $product->getName(), $product->calcDiscount()...
- MVC подобие для web с файлом routes.php и регулярками
До этого работал в компании, которая занимается только собственными highload проектами. Писали на lumen, laravel, yii2, symfony, даже были самописные. Надоело там за 4 года, и вот даунгрейднулся в небольшую компанию, которая занимается относительно простыми сайтами в основном на modx, bitrix и opencart. Познакомившись с несколькими проектами по теме "исправить баги", "ускорить выполнение" (некоторые страницы в простых сайтах генерятся по 2-3 секунды), ну и, само собой, "добавить новый функционал", вспомнил за что весь цивилизованный мир ненавидет phpешеров.
Вот несколько cms и что мне в них не понравилось:
- opencart
куча дублирующего кода и логики
неоптимальные запросы: огромное количество JOIN, вложенных подзапросов (ну явно не под mysql); в цикле большое число повторяющихся запросов WHERE id = [int] вместо одного WHERE id IN ([int],[int],[int]...)
невозможно выключать ненужный функционал и добавлять свой: огромные функции в сотни строк, каждый раз смотря на которые мне хочет заняться бессмысленным рефакторингом
по несколько раз перегоняются данные из одного массива в другой, пока дойдет до шаблона
- cs cart - вообще непойми что, еще и за деньги, тут актуально все от opencart + абсолютно нечитаемый код
- bitrix - может для обычных простых сайтов визиток и нормально, но что-то серьезное делать на такой структуре я не вижу возможности (разве что использовать платные готовые модули, которые так же невозможно самому поддерживать)
- modx - по мне так просто улучшенная бесплатная версия bitrix, которая подходит только для создания простейших сайтов (не представляю, как можно поддерживать интернет магазин на такой структуре)
- Webasyst - немного смотрел один сайт на этом framework, в общем то качество кода понравилось, только с одним большим НО: можно было бы сделать все гораздо проще и читабельнее (но возможно это что-то адекватное относительно всего остального); админка - ничего менее удобного не видел в своей жизни в плане интерфейса
Что очень нравится из прошлой жизни и чего не хватает сейчас:
- само собой, собственноручно написанный код

- ORM - передаем в шаблоны массивы объектов и там уже вызывает нужные функции у объектов: $product->getName(), $product->calcDiscount()...
- MVC подобие для web с файлом routes.php и регулярками