Skip to content

Files

Latest commit

201377b · Oct 14, 2020

History

History
55 lines (27 loc) · 3.04 KB

1.md

File metadata and controls

55 lines (27 loc) · 3.04 KB

Section 1: Magento Architecture & Customization Techniques (18%)

Section Content | Next Section


1.1 Describe Magento’s module-based architecture

Describe module limitations. How do different modules interact with each other? What side effects can come from this interaction?

1.2 Describe Magento’s directory structure

Determine how to locate different types of files in Magento. Where are the files containing JavaScript, HTML, and PHP located? How do you find the files responsible for certain functionality?

1.3 Utilize configuration XML and variables scope

Determine how to use configuration files in Magento. Which configuration files correspond to different features and functionality?

1.4 Demonstrate how to use dependency injection

Describe Magento’s dependency injection approach and architecture. How are objects realized in Magento? Why is it important to have a centralized process creating object instances?

Identify how to use DI configuration files for customizing Magento. How can you override a native class, inject your class into another object, and use other techniques available in di.xml (such as virtualTypes)?

1.5 Demonstrate ability to use plugins

Demonstrate how to design complex solutions using the plugin’s life cycle. How do multiple plugins interact, and how can their execution order be controlled? How do you debug a plugin if it doesn’t work?

Identify strengths and weaknesses of plugins. What are the limitations of using plugins for customization? In which cases should plugins be avoided?

1.6 Configure event observers and scheduled jobs

Demonstrate how to configure observers. How do you make your observer only be active on the frontend or backend?

Demonstrate how to configure a scheduled job. Which parameters are used in configuration, and how can configuration interact with server configuration?

*Identify the function and proper use of automatically available events, for example _load_after, etc.

1.7 Utilize the CLI

Describe the usage of bin/magento commands in the development cycle. Which commands are available? How are commands used in the development cycle?

Demonstrate an ability to create a deployment process. How does the application behave in different deployment modes, and how do these behaviors impact the deployment approach for PHP code, frontend assets, etc.?

1.8 Demonstrate the ability to manage the cache

Describe cache types and the tools used to manage caches. How do you add dynamic content to pages served from the full page cache?

Describe how to operate with cache clearing. How would you clean the cache? In which case would you refresh cache/flash cache storage?

Describe how to clear the cache programmatically. What mechanisms are available for clearing all or part of the cache?