Fundamentals of Magento 2 Development (On-Demand)

View class schedule

Overview

This course will introduce developers to the Magento 2 platform. The course begins with a discussion of basic concepts behind the design and workings of Magento 2. The student is then introduced to essential components of the architecture, and guided through the Magento 2 request flow and rendering processes, databases, service contracts, and Adminhtml.


This course is based on Magento Commerce v2.2 and Magento Open Source v2.2

Target Audience

Developers who want to build skills in working with the new architecture, terminology, and core functionality of Magento 2, along with best practices for extending the platform.

Depending on your level of experience with the Magento 1 platform, you may be able to move through the content at a faster pace.

Prerequisites

Students must be familiar with developing in a LAMP environment and have a basic understanding of Unix-based systems. Students must have a working knowledge of HTML, CSS, XML, PHP 5.0+ and object-oriented programming techniques.

Students should have at least 2 years of PHP experience and understand the basic principles of database operations (such as foreign keys, differences between engines, query and schema optimization). Familiarity with MVC and Zend Framework is strongly recommended but not required.

Students should have experience working with the Magento 1 platform.

Learning Objectives

Upon completing this course, you should be familiar with key aspects of the Magento 2 architecture, have gained skills in working with Magento modules, and have learned ways to customize Magento, to ensure the best upgrade path for the websites you extend. Specifically, you will:

  • Become familiar with terminology and core functionality
  • Learn to perform basic functions such as:
  • - Setup new modules
    - Setup new configuration variables
  • Be familiar with basic Magento customization techniques such as:
  • - Using plugins and interceptors
    - Using observers

  • Creating custom controllers
  • Overriding controller action
  • Basic operations and layouts

Outline


Unit 1: Preparation and Configuration
  • Preparation
  • Overview and Architecture
  • File Systems
  • Configuration
  • Dependency Injection (DI) & Object Manager
  • Plugins
  • Events
  • Video: How to Create a Module

Unit 2: Request Flow
Unit 3: Rendering
  • Rendering Overview
  • Rendering Flow
  • View Elements
  • Block Architecture & Lifecycle
  • Templates
  • UiComponents
  • Layout XML Structure
  • Layout XML Loading & Rendering
  • Video: How to Add a JavaScript Module

Unit 4: JavaScript in Magento
  • Javascript
  • UI Components
  • Architecture: PHP Classes
  • Configuration
  • Templates
  • Component Data
  • Rendering

Unit 5: Database
Unit 6: Service Contracts
  • Service Contracts Overview
  • Service API: Framework API
  • Service API: SearchCriteria, Repositories, Business Logic
  • Data API
  • Web API

Unit 7: AdminHTML
  • Adminhtml Overview
  • Grids: Filters, Datasource, Listing UiComponent
  • Grids: Grid Indexer, Columns, Paging
  • Forms
  • Sys Config, Menu, ACL


Check out this brief video that provides an overview of the course player used in our Magento 2 On-Demand courses!