Get in Touch

Course Outline

Day I

Introduction to Magento

  • Brief overview of Magento 2
  • Comparison of Community and Commerce versions
  • Magento Commerce Pricing
  • Magento Commerce Cloud
  • Differences compared to Magento 1

Magento 2 Architecture

  • Discussion of the MVVM pattern
  • Project structure
  • Dependency management (composer, PSR-4 Autoloader)
  • Structure of a single module
  • Module registration
  • Discussion of Websites, Store Groups, Store Views
    • Multiple stores in a single Magento 2 instance
    • Multilingual support
    • Config scopes

Advanced Magento 2 - Database

  • Configuration tables (settings, module versioning)
  • Verifying module version in the database, creating custom configuration in the admin panel, discussing ACL
  • Setup scripts
  • UpgradeSchema script
  • Persistence Layer
  • Creating the persistence layer (Model, ResourceModel, Collection)
  • Discussion of the EAV pattern
  • EAV in Magento 2
  • Types of EAV entities in Magento 2
  • Attribute sets
  • Extension attributes
  • Flat tables
  • Database sharding

Advanced Magento 2 - PHP

Managing class dependencies (Service Contract, discussion of Dependency Injection and Dependency Inversion patterns, explaining how Dependency Injection works in M2, ObjectManager)

Code Generation

  • Factory
  • Interceptor
  • Proxy

Magento 2 CLI

  • Overview of functions
  • Creating a custom command that creates model objects
  • Controllers in Magento 2
  • Creating a custom frontend controller
  • Custom logger in Magento 2
  • Ways to extend Magento - overriding, plugin (discussion of the Interceptor pattern), event observers (discussion of the Observer pattern)
  • Creating a custom Observer and custom Event (in a controller), as well as a plugin on a custom frontend controller and a logger for both classes

Day II

Advanced Magento 2 - Frontend

  • Themes
  • Frontend elements of modules, layouts, blocks, view models
  • Creating a template, view model, and displaying objects from a collection
  • Less preprocessor
  • Adding LESS styles to the view
  • RequireJS
  • KnockoutJS
  • UI Components
  • Generating static files

Magento 2 Working Modes

PHP Session

  • Session storage methods
  • Redis configuration

Full Page Cache

  • FPC in Magento 2 (files, Redis, Varnish)
  • Varnish configuration
  • Hole punching

Cron in Magento 2

  • Overview of operation
  • Custom cronjob

Cache in Magento 2

  • Built-in types
  • Custom cache

Magento 2 Indexers

REST and SOAP APIs in Magento 2

  • Overview of authentication methods
  • Overview of available methods
  • Defining custom API endpoints
  • Creating a Data Contract and Service Contract Repository, wiring the get method from the Repository into the WebAPI

Integration tests, unit tests

Creating listings and forms for model objects using UI Components

Block: deploy automation & monitoring & performance tests:

Tools for deploy automation: GitLab CI/CD, GitLab Runner

How to conduct a safe deploy with zero downtime, ensuring the ability for quick rollback

Magento monitoring - New Relic

Performance:

Testing using LoadImpact. How to prepare scenarios and simulate production traffic.

Cache warming for Varnish

Requirements

Good knowledge of PHP

 14 Hours

Number of participants


Price per participant

Upcoming Courses

Related Categories