Разработка под Magento - Учебный IT-Центр Level Up

Magento — самая мощная система управления интернет-магазинами, написанная на PHP. Magento — лидер в сегменте open source решений для электронной коммерции. Согласно статистики Alexa 26% сайтов из списка TOP 1 Million используют Magento. Широчайший набор функционала и беспрецедентная гибкость позволяют строить на базе Magento самые разнообразные и сложные решения для электронной коммерции.

Востребованность на рынке Magento-разработчиков высока как никогда: спрос значительно превышает предложение. Успешное окончание курса обучения на Magento-разработчика позволит влиться в ряды одних из наиболее желаемых и высокооплачиваемых специалистов.

Начало: 16 сентября

Продолжительность курса: 10 недель, 60 часов

Суббота, Воскресенье: 09:00-12:00

Стоимость до 1 августа — 12 000 грн за весь курс

Стоимость после 1 августа — 14 500 грн за весь курс

Возможна оплата частями

Возможно обучение в формате online

РЕГИСТРИРУЙТЕСЬ ПРЯМО СЕЙЧАС

Задача курса:

Дать слушателю фундаментальные знания о функционировании Magento e-commerce платформы версии 2.х: архитектура приложения, система конфигов, диспетчеризация запросов, работа с базой данных, модель данных EAV, система рендеринга.

Требования к слушателям

Курс предназначен для PHP-программистов, имеющих опыт работы с одним из современных фреймворков или CMS. Опыт работы с Magento 1.x облегчит освоение материала курса, но не обязателен. Слушатель должен обладать определенным набором знаний для успешного прохождения курса:

— должен быть знаком с разработкой в LAMP окружении;
— необходимы знания HTML, XML, JS, PHP 5.x, опыт использования обязателен;
— понимание объектно-ориентированной парадигмы программирования;
— знание MVC и других паттернов (singleton, adapter, различные fabric);
— знание базовых принципов работы с базой данных MySql, построение запросов;
— знакомство с Zend приветствуется.

Программа курса:

Обзор функционала

  • каталог — обзор встроенных типов продуктов, управление атрибутами продуктов, атрибут-сеты, управление категориями продуктов, добавление продукта, фильтры в категории на фронте;
  • заказ товаров — добавление в корзину, 6 шагов чекаута, управление методами доставки и оплаты;
  • мультиязычность, мультисайтовость — как это устроено, управление сайтам и языками, что дает и как это можно использовать, уровни настроек Magento, мультиязычность для данных продукта, категории.

Структура Magento

  • модульная архитектура — преимущества и особенности в Magento, зависимости между модулями, приоритет загрузки модулей, неймспейсы, конвенции
  • структура директорий — организация основных файлов, библиотечный код, соглашение о расположении модулей, структура темы;
  • компоненты модуля — состав модуля, обязанности компонентов: контроллеры, модели, блоки, хелперы; что такое декларация модуля, соглашение по расположению админских контроллеров и блоков;
  • режимы работы — developer mode, production mode, default mode;
  • код стайл — обзор соглашения по именованию классов и форматированию кода.

Компоненты и конфигурация

  • командная строка — обзор возможности, очистка кеша, просмотр информации, управление модулями, запуск индексации;
  • dependency injection и фабрика объектов — инстанциирование объектов (моделей, блоков, хелперов) с помощью фабрики, что это дает, работа с конструктором классов;
  • генерируемые классы — фабрики, интерцепторы;
  • перекрытие классов — как расширить базовую функциональность (модели, блоки, хелперы), роль конфига, разрешение коллизий при многократном перекрытии одного класса;
  • система плагинов — дополнительный уровень гибкости в расширении базовой функциональности;
  • система событий — реализация в Magento, какие возможности открывает использование событий, какие проблемы создает, области действия событий (общие события, события фронтенда, админки, крона), конфигурирование событий, предопределенные события в Magento, полный путь от вызова события до срабатывания подписанных на него обсерверов;
  • структура конфигов — виды конфигов, что в них хранится, синтаксис, связь с базой данных.

Запуск приложения

  • запуск — точки входа, инициализация, коды запуска Magento, как реализовать мультидоменность;
  • диспетчеризация запроса — как это происходит в Magento (полный путь от запуска приложения до формирования ответа), построение URL в Magento, фронт-контроллер, action-контроллеры, роутинг, отличие форварда от редиректа.

Система рендеринга

  • структура — из каких компонентов состоит V в MVC Magento, особенности, роль каждого компонента;
  • темплейты — понятие fallback’а, приоритет следования тем при загрузке файла темплейта, как создать новую тему на основе базовой темы Magento, как использовать стороннюю тему в качестве базовой, код-стайл в темплейтах;
  • блоки — обзор функциональности базовых типов блоков, как рендерятся блоки;
  • лейауты — что такое хендл, связь хендлов с URL, синтаксис лейаутов, как подключить к модулю лейаут; обзор стандартных лейаутов, описывающих структуру страницы;
  • рендеринг — полный путь процесса загрузки лейаута, инстанциирования и рендеринга блоков;
  • мультиязычность — как использовать возможности мультиязычности; места, где могут содержаться тексты переводов, и их приоритет; правка текстов переводов на фронте.

JS в Magento

  • используемые библиотеки — jQuery, requireJS, knockout, underscore;
  • JS в темплейтах — особенности написания;
  • JS файлы — особенности подключения, расширение и перекрытие существующего функционала.

Объектная модель

  • DataObject — роль этого класса в Magento, обзор обязанностей и возможностей: хранение данных, варианты доступа к этим данным, представление данных в различных форматах;
  • модели — два уровня объектной модели: модели бизнес-логики и ресурс-модели; обзор функциональности базового класса моделей бизнес-логики, Load-Save-Delete вместо Create-Read-Update-Delete, инициализация моделей;
  • ресурс-модели — обзор функциональности базового класса ресурс-моделей, инициализация ресурс-моделей, связь с моделями бизнес-логики;
  • коллекции — обзор функциональности базовых коллекций всех уровней иерархии, связь коллекции с моделью и ресурс-моделью, инициализация коллекций, связь с базой данных, построение запроса;
  • работа с базой данных — полный путь загрузки, сохранения и удаления моделей от вызова соответствующих методов до выполнения запроса; построение запросов в ресурс-моделях;
  • инсталл/апгрейд-скрипты — версионность модулей в Magento, место хранения номеров актуальных версий всех модулей в базе данных, условия установки и обновления модуля, setup-модели, содержимое инсталл/апгрейд-скриптов, синтаксис Data Definition Language(DDL) в Magento.

EAV модель

  • концепция — описание принципа хранения различных наборов атрибутов сущностей отдельно от сущностей, преимущества и недостатки;
  • реализация в Magento — структура таблиц, связанных с EAV в базе данных; разнесение значений атрибутов по отдельным таблицам в зависимости от типа данных, хранение атрибутов продуктов, категорий, пользователей и их адресов; свойства атрибутов;
  • объектная модель — отличие от моделей, связанных с плоскими таблицами; обзор иерархии классов; полный путь загрузки, сохранения и удаления EAV моделей от вызова соответствующих методов до выполнения запроса, работа с EAV коллекциями.

 

Service Contract

  • концепция — описание принципа построения архитектуры Magento с использованием service contract;
  • service API — репозитории, бизнес-логика, доступ к данным.

Админская часть

  • общая архитектура — обзор структуры админки, особенность расположения админских блоков и контроллеров;
  • организация меню — конфигурирование меню с помощью xml, синтаксис;
  • ACL — интерфейс разграничения прав доступа для администраторов, конфигурирование ACL с помощью xml, синтаксис, использование ACL в коде;
  • конфигурация — обзор раздела System > Configuration, уровни (scope) настроек, построение раздела конфигурации с помощью xml, синтаксис.

Результат изучения курса

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

— написание конфига нового модуля;
— расширение существующего функционала различными способами;
— написание собственных/перекрытие существующих контроллеров;
— написание инстал/апгрейд скриптов;
— написание собственных моделей, оперирующих базой данных;
— добавление обсерверов и плагинов;
— написание темплейтов;
— работа с лейаутами.

Дополнительно к обучению Вы получаете:

Сертификат учебного центра

Отличникам рекомендательное письмо

Преподаватель:

borisenko

Александр Борисенко

Образование: Закончил Днепропетровский Национальный Университет им. О. Гончара по специальности Радиоэлектронные приборы, системы и комплексы (Защита информации).

Общий стаж работы PHP-разработчиком составляет более 10 лет, опыт работы с Magento e-commerce платформой более 7 лет.

Профессиональная деятельность: В настоящее время занимает должность Magento solutions architect / team lead в Sam Solutions Magento company. Является сертифицированным Magento-разработчиком.

В активе Александра — более 50 завершенных проектов на Magento, включая разработку глобальных решений на Magento Enterpise Edition для компаний с мировым именем. Имеет опыт работы в core team в компании Magento (с общим стажем более 2 лет),  опыт организации новаторской внутренней Magento Академии в компании Sam Solutions. Является одним из немногих уникальных преподавателей в Украине по Magento со стажем более 4 лет. Принимает активное участие в Magento комьюнити Украина.