Добавить комментарий

СтатьяПреимущества и недостатки OpenCart

Я работаю с OpenCart уже больше 2-х лет, поэтому учитывая мой немалый опыт работы с этой системой, постараюсь максимально объективно описать ее преимущества и недостатки. Или плюсы и минусы OpenCart. 

Для начала несколько слов о том как я начал работать с OpenCart. Это было около 2-х лет назад. Тогда я все сайты, в том числе интернет магазины,  делал на Drupal. Но в то время как раз вышел Drupal 7, он был более современным и функциональным, чем Drupal 6, но пока еще не "оброс" модулями и нормального модуля интернет магазина под семерку тогда еще не было, были сырые версии, которые использовать еще было слишком рано. А на шестерке уже делать не хотелось, так как это уже была устаревшая система, хотя она и имела много модулей. Еще одной проблемой Drupal было то, что это достаточно тяжелая система, а магазин нужно было делать на больше 100к товаров. Поэтому я решил найти замену Drupal для магазинов. Перечитав за несколько дней кучу форумов, блогов, обзоров, отзывов итд. я остановился на OpenCart и.. не пожалел :)

Преимущества OpenCart:

  • он бесплатный, не нужно отдавать кучу денег за голый движок
  • имеет открытый код
  • очень активно развивается, постоянно выходят новые версии
  • имеет огромное сообщество, как русскоязычное так и англоязычное
  • имеет очень много модулей и тем, больше 10 тысяч. Есть платные, есть бесплатные.
  • дешевые платные модули. В русском сообществе модуль в среднем стоит 200-250р, на оф. сайте 15-20$, что намного дешевле других движков, например Presta Shop, я уже молчу о Битрикс или Magento
  • имеет богатый функционал магазина (скидки, купоны, акции, опции, характеристики, группы пользователей итд.)
  • очень быстрый, магазин с 20-30 тыс. товаров сможет работать даже на дешевом шаред хостинге. 
  • ООП
  • MVC. Достаточно хорошо реализованная.
  • очень простой код. Во-первых из-за MVC сразу понятно что и где искать, а во-вторых из-за разработчиков движка, они приделяют огромное внимание читабельности кода, постоянно в репозитории появляются коммиты по переименованию переменных, исправление отступов итд. Я свой первый модуль для этой системы написал после 3 (трех) дней знакомства! Для примера чтобы написать первый модуль для Drupal у меня ушло около 3-х месяцев. 

 Недостатки OpenCart:

  • одним из самых больших недостатков OpenCart является то, что в нем нету развитой системы hook-ов как в Drupal или Событий. События только появились в версии 2.0 и на данный момент находятся в зачаточном состоянии. А до 2.0 их вообще не было. То есть у разработчика просто не было возможности внести какие-то изменения из своего модуля программно не меняя при этом код самого движка. Чтобы как-то выйти из ситуации разработчики придумали свое недо-решение или "костыль" под названием vQmod. Которому можно "скормить" xml файл с правилами что и где поменять, он с помощью строковых функций меняет файлы движка и движок уже подключает измененные файлы. Такой подход порождает огромное количество конфликтов, исправлять которые на более менее большом сайте в котором больше десятка vQmod фалов превращается в настоящий ад. Фактически вы даже новый пункт меню добавить не можете программно. Вам нужно для этого изменять код самого движка или вручную или с помощью vQmod. Радует, что с версии 2.0 уже появились События.
  • простота кода и низкий порог вхождения притягивают к OpenCart очень много начинающих разработчиков, которые мало того, что пробуют создавать свои модули, так даже их продают за деньги. И покупая очередной модуль есть немалая вероятность что внутри вы увидите ужасный код, ошибки, с помощь которых ваш сайт могут взломать, часть модуля просто придется переписать самому, а нормальной поддержки вам не окажут из-за очень небольшого опыта разработки. 

 

То есть, если в OpenCart добавить развитую систему Событий то мы получим почти идеальные движок интернет магазина.

Filtered HTML ckeditor

Plain text

CAPTCHA
Защита от спама
Image CAPTCHA
Enter the characters shown in the image.
You are reporting a typo in the following text:
Simply click the "Send typo report" button to complete the report. You can also include a comment.