Как избежать технического долга на Magento

Опубликовано: 2019-07-30

Согласно Википедии, «технический долг» (также известный как долг дизайна или долг кода) — это понятие в разработке программного обеспечения, которое отражает подразумеваемые затраты на дополнительную доработку, вызванную выбором простого (ограниченного) решения сейчас вместо использования лучшего подхода, который занял бы больше времени. ».

Многие из продавцов, с которыми мы участвовали в обсуждениях проекта при подготовке к переходу на Magento 2, столкнулись с серьезным техническим долгом от Magento 1. История обычно выглядит примерно так… «у нас есть много расширений и настроек Magento 1, которые со временем накопилось… так много, что мы на самом деле даже не знаем, какие расширения все еще нужны… и теперь каждый раз, когда нам нужно обновить или исправить Magento 1, это занимает много времени, потому что что-то ломается и устаревают расширения и настройки должны быть обновлены или исправлены».

Эти продавцы нередко имеют ежегодные затраты на технический долг, которые составляют 25-50% (или более) от первоначальной сборки сайта. В течение нескольких лет этот долг становится серьезным фактором в общей стоимости владения и делает Magento не таким экономичным решением.

Итак, как продавцы, которые сейчас переходят на Magento 2, могут избежать образования всех технических долгов, которые мы наблюдаем с Magento 1? Ниже приведены несколько рекомендаций по избавлению от технического долга в Magento 2.

Минимально жизнеспособный продукт (MVP)

Большая идея здесь состоит в том, чтобы начать с «обязательных», тех расширений или настроек, которые абсолютно необходимы в дополнение к базовому продукту Magento. Мы рекомендуем продавцам создать новый сайт с самым необходимым и запустить его в первую очередь. После запуска сайта мы рекомендуем внимательно следить за взаимодействием пользователей с помощью таких инструментов, как Google Analytics, Hotjar (запись сеанса) и таких методов, как A/B-тестирование. Следование этому процессу позволяет затем оттачивать улучшения функций, которые действительно необходимы и обязательно обеспечат возврат инвестиций.

Мы видели много расширений, установленных на Magento 1, потому что продавец пытался скопировать пользовательский опыт сайтов электронной коммерции мега-брендов. Хотя было бы неплохо иметь сайт со всеми функциями rei.com, target.com, walmart.com и amazon.com вместе взятыми, часто это нецелесообразно, и все эти дополнительные функции (расширения) приносят очень мало пользы. или отсутствие улучшения удобства использования и конверсии сайта. Продавцам среднего размера гораздо лучше использовать минималистский подход (MVP) к дополнительным функциям, чтобы они могли сосредоточить свои усилия и бюджеты на лучшем маркетинге, содержании каталога продуктов и мерчандайзинге.

Редактирование шаблонов вместо установки расширений

Допустим, продавец хочет полностью расширить фильтруемую навигацию (магазин по функциональности) в Magento 2. Существует несколько расширений или сторонних тем, которые можно установить для достижения этой цели. Тем не менее, некоторые простые изменения CSS также могут быть внесены в шаблон для достижения того же дизайна. Эти изменения CSS будут намного дешевле в обслуживании с течением времени, и их, возможно, не нужно будет обновлять в течение 5 или более лет.

Таким образом, для настройки внешнего интерфейса всегда полезно сначала проконсультироваться с разработчиком, прежде чем использовать расширение. Настройка может быть гораздо более эффективной, если просто отредактировать файлы шаблонов Magento.

Не используйте сторонние расширения шаблонов тем

Хотя может показаться заманчивым приобрести расширение шаблона темы для пользовательского интерфейса Magento (например, у Theme Forest), использование шаблона темы может привести к большому количеству технического долга.

Эти шаблоны обширны тем, что они предполагают полный контроль над внешним интерфейсом. Обычно они представляют собой компиляцию от 20 до 30 сторонних расширений, а также настройку. Большая часть, если не весь, код для этих расширений разработан разработчиками с низкими затратами и может иметь некоторые или все из следующих проблем:

  • Раздувание кода (загрузка большого количества ненужных библиотек javascript и т. д.)
  • Не следует лучшим практикам
  • Замедляет скорость работы
  • Javascript-конфликты
  • Не работает корректно с Magento или кешем Varnish.
  • Отключает встроенные функции Magento (например, виджеты, клик по цене, постановка контента и т. д.).

Несмотря на то, что расширения темы, кажется, содержат большую ценность для всех опций и функций, которые они предоставляют, их технический долг почти всегда перевешивает их преимущества. По нашему опыту, гораздо лучше использовать менее инвазивный подход к темам внешнего интерфейса. Этого можно достичь, только внеся изменения в CSS и используя минимальное количество настроек и расширений для достижения правильного внешнего вида, ощущения и необходимых функций.

Покупка расширений в той же компании

По возможности рекомендуется приобретать расширения у той же компании. Обычно это обеспечивает совместимость между всеми приобретаемыми вами расширениями. У некоторых крупных поставщиков расширений, таких как Aheadworks, есть много качественных расширений для Magento, которые обычно совместимы друг с другом. Так что, если, например, вы ищете более надежное решение для поиска, ползунок главного баннера на главной странице, блог и расширенную функцию добавления в корзину, вы можете купить несколько их расширений и избежать проблем совместимости, которые в противном случае могли бы возникнуть, если бы вы купили все этих расширений от отдельных компаний.

Ветеринар перед установкой

    Здесь, в InteractOne, наши старшие разработчики проверяют архитектуру и код расширений, прежде чем одобрить их для установки. Хорошему разработчику Magento легко обнаружить некачественное расширение Magento, проверив его архитектуру и код. Благодаря этой практике мы спасли наших клиентов от многих некачественных расширений. Если расширение некачественное, мы отправляем его обратно поставщику для возврата денег.

    Уборка

    Запланированная периодическая проверка и очистка сайта Magento — это передовая практика, которая может уберечь сайт от раздувания или нестабильности по мере его развития. Рекомендуется проверять все расширения, используемые на сайте Magento, ежегодно или раз в два года, чтобы убедиться, что старые неиспользуемые или нестабильные расширения и настройки очищаются, исправляются или удаляются.

    Также важно быть в курсе выпусков обновлений от Magento и поставщиков расширений. Хотя нет необходимости всегда использовать последний дополнительный выпуск, мы рекомендуем никогда не отставать более чем на 2-3 дополнительных выпуска. Постоянное обновление гарантирует, что безопасность поддерживается, а расширения не становятся нестабильными, поскольку браузерные и мобильные технологии постоянно развиваются.

    Позволить сайту Magento отставать в выпусках на несколько лет может в конечном итоге потребовать в два-три раза больше обычных усилий для обновления, поскольку старые пути обновления не всегда хорошо поддерживаются поставщиками расширений. Кроме того, запуск действительно крупного обновления может быть почти таким же сложным, как запуск нового сайта, поскольку существует так много серьезных изменений, которые необходимо учитывать и тестировать.

    Хотя этот список рекомендаций по предотвращению технического долга с Magento не является исчерпывающим, он охватывает ключевые моменты, которые должны помочь вам поддерживать быструю, стабильную и безопасную работу вашего сайта на Magento 2 в течение многих лет.


    Если вы хотите обсудить статус вашего сайта или готовы перейти на Magento 2, мы будем рады запланировать начальную консультацию, ни к чему не обязывающую. Напишите нам.