SlideShare uma empresa Scribd logo
1 de 35
1
Magento 2
Best Practice Workflow
Twitter: @DavidLambauer2
David Lambauer // Software Developer
I ♄
Open Source
Software Quality
Quotes, Emoji’s and Memes
Twitter: @DavidLambauer3
Twitter and GitHub
@DavidLambauer
github.com/DavidLambauer
Twitter: @DavidLambauer4 Abbildung: https://www.aoe.com/de/home.html
5
Motivation
Twitter: @DavidLambauer6
That moment when you
feel like a total noob.
7
No matter how good you are at something, there's
always about a million people better than you.
- Homer Simpson
Twitter: @DavidLambauer8
Twitter: @DavidLambauer9
‱ Documentation
‱ Automation / Generation
‱ Code Segmentation (Business Logic, Framework, Application)
‱ Tests (Unit // Api // Integration // Static // 
)
‱ Reusability
‱ Maintenance
‱ ♄ the Details!
‱ 

How do I write awesome Code (in Magento) ?
Twitter: @DavidLambauer10
Same procedure, every Module
Abstract
Module
Components
App Code
Business Logic
Framework
Meta
Entry Points like Plugins. Code to make things work like
the registration.php.
Code that works only in the Context of Magento.
Non coupled Components which implement a specific
business logic.
Code that can be used in different projects and has
injected dependencies.
Components that are totally independent:
e.g. Fileparser / HTTP Clients / DB Abstraction.
Documentation / Specification / Guidelines.
Automated Tests / Dependencies.
11
The Story
Twitter: @DavidLambauer12
As a Sir, I don’t want minors buy Alcohol.
Twitter: @DavidLambauer13
General Workflow
Works for most custom modules.
ReviewImplementTest
SpecifyUnderstand Research Core
Not as time
consuming as you
might think.
Defining a Specification is an early
documentation of your work. The Spec can
be used to share work between the team
more easy.
Twitter: @DavidLambauer14
Research Core
DISCOVER THE CORE
TO REUSE MAGENTO
COMPONENTS
Due to the research, you’ll learn the
“Magento Way” of solving problems and
speed up further developments.
Discover Entry Points.
Check if there are any Components you
can reuse, like a ValidationInterface
where you are able to add another
Validation.
The DevDocs do also have great
examples!
Check relevant Modules
‱ module-sales
‱ module-checkout
‱ module-customer
Check API’s and Events first
‱ Checkout  AgreementsValidatorInterface::isValid()
‱ Sales  OrderManagementInterface::place()
‱ Customer  AccountManagementInterface::validate()
Evaluate & Debug
Try to find where your search results are used. A quick
debugging session could help a lot. Add breakpoints to each
result to check when they are called.
01
02
03
Twitter: @DavidLambauer15
Add the Specification
‱ Use a Format that is easy to read, easy to use and fast to write.
‱ Markdown ♄ // reStrcuturedText // LaTeX
‱ Use a Tool to share your Work in PDF or HTML.
‱ Add UML Diagrams, so people have the chance to dive into your specs quickly.
‱ Write Specifications for Humans. Add general information!
‱ Don’t shorten, make sentences.
Twitter: @DavidLambauer16
Avoid hand-hacking; write programs to write
programs when you can.
Rule of Generation
- Eric Raymond’s
Twitter: @DavidLambauer17 http://squidfunk.github.io/mkdocs-material/
Twitter: @DavidLambauer18 http://squidfunk.github.io/mkdocs-material/
Twitter: @DavidLambauer19
Adding a Specification - Bird Eye View
‱ Add a StoreConfig to
– Section / Group / Field
– Define Label / Id / Note / Type / ...
‱ Add a beforePlaceOrder Plugin.
– Define Classname / Dependencies / Methods / Parameter / Usage
‱ Add a Validator to check the age.
– Define Classname / Interface / Dependencies / Methods / Parameters / Usage
Twitter: @DavidLambauer20
[Without unit tests] You're not refactoring, you're just
changing shit.
- Hamlet D'Arcy
Twitter: @DavidLambauer21
Testing Overview
Unit & Static Testing
Unit testing is the testing of an individual unit or
group of related units.
Integration Testing
Integration testing is testing in which a group of
components are combined to produce output.
Functional Testing
Functional testing is the testing to ensure that the
specified functionality required in the system
requirements works.
System / Performance / Frontend / 

Depending on the complexity and the business
impact of your module, add as many tests as you
need.
Abbildung: Eigendarstellung
Twitter: @DavidLambauer22
Writing Unit Tests
‱ Use File- and Live Templates (PHPStorm).
‱ Assertion should be as simple as possible.
‱ Test possible Exceptions with Annotation (i.e: @expectedException).
‱ Unit Test can be a 3-Liner.
‱ Use Multi-Cursor whenever it is possible.
Twitter: @DavidLambauer23 Abbildung: PHPStorm EAP 2017.1
Twitter: @DavidLambauer24 Abbildung: PHPStorm EAP 2017.1
Twitter: @DavidLambauer25
Implement
‱ After the Specification, generate standard Magento Code.
‱ Implement the business Logic.
‱ That’s it! We already did the main work by adding the Specs.
Twitter: @DavidLambauer26 https://mage2gen.com/
Twitter: @DavidLambauer27 https://github.com/netz98/n98-magerun2
Twitter: @DavidLambauer28
In case you missed it, what did we actually do?
‱ Learned from the Core.
‱ Added some Markdown to have a Specification.
‱ Generated a good looking Document with a single Command.
‱ Generated UML Diagrams by adding some simple Code.
‱ Generated Unit Tests with File- and Live Templates.
‱ Generated Magento Standard Code with one of the great Code Generator.
Twitter: @DavidLambauer29
Avoid hand-hacking; write programs to write
programs when you can.
Rule of Generation
- Eric Raymond’s
Twitter: @DavidLambauer30
Started on GitHub!
AOEpeople/Magento-2-Module-Skeleton
Get situated under a minute.
Twitter: @DavidLambauer31
Twitter: @DavidLambauer32
One more thing

Twitter: @DavidLambauer33
As a Troll, I do change my requirements!
Minors should not be able to register either!
Twitter: @DavidLambauer34
Add one more entry point and we‘re good.
Restart the Workflow, don’t forget to add the new specs.
Twitter: @DavidLambauer35
That’s it!
Thank you so much for your attention, I would love to answer some
questions.

Mais conteĂșdo relacionado

Mais procurados

Architecture & Workflow of Modern Web Apps
Architecture & Workflow of Modern Web AppsArchitecture & Workflow of Modern Web Apps
Architecture & Workflow of Modern Web Apps
Rasheed Waraich
 
Auditing Drupal Sites
Auditing Drupal SitesAuditing Drupal Sites
Auditing Drupal Sites
Exove
 
Puppet powershell
Puppet powershellPuppet powershell
Puppet powershell
Paul Stack
 
FSOSS - Take the red pill and enter the Matrix
FSOSS - Take the red pill and enter the MatrixFSOSS - Take the red pill and enter the Matrix
FSOSS - Take the red pill and enter the Matrix
Frédéric Harper
 

Mais procurados (20)

Architecture & Workflow of Modern Web Apps
Architecture & Workflow of Modern Web AppsArchitecture & Workflow of Modern Web Apps
Architecture & Workflow of Modern Web Apps
 
Welcome to IE8 - Integrating Your Site With Internet Explorer 8
Welcome to IE8 - Integrating Your Site With Internet Explorer 8Welcome to IE8 - Integrating Your Site With Internet Explorer 8
Welcome to IE8 - Integrating Your Site With Internet Explorer 8
 
Front-end Automated Testing
Front-end Automated TestingFront-end Automated Testing
Front-end Automated Testing
 
Web testing with Selenium
Web testing with SeleniumWeb testing with Selenium
Web testing with Selenium
 
SydJS.com
SydJS.comSydJS.com
SydJS.com
 
EuroPython 2011 - How to build complex web applications having fun?
EuroPython 2011 - How to build complex web applications having fun?EuroPython 2011 - How to build complex web applications having fun?
EuroPython 2011 - How to build complex web applications having fun?
 
Auditing Drupal Sites
Auditing Drupal SitesAuditing Drupal Sites
Auditing Drupal Sites
 
ASP.NET & Unit Testing
ASP.NET & Unit TestingASP.NET & Unit Testing
ASP.NET & Unit Testing
 
Puppet powershell
Puppet powershellPuppet powershell
Puppet powershell
 
FSOSS - Take the red pill and enter the Matrix
FSOSS - Take the red pill and enter the MatrixFSOSS - Take the red pill and enter the Matrix
FSOSS - Take the red pill and enter the Matrix
 
Spring Boot
Spring BootSpring Boot
Spring Boot
 
Php Development Stack
Php Development StackPhp Development Stack
Php Development Stack
 
What is difference between spring MVC and spring boot?
What is difference between spring MVC and spring boot?What is difference between spring MVC and spring boot?
What is difference between spring MVC and spring boot?
 
Automate testing with behat, selenium, phantom js and nightwatch.js (5)
Automate testing with behat, selenium, phantom js and nightwatch.js (5)Automate testing with behat, selenium, phantom js and nightwatch.js (5)
Automate testing with behat, selenium, phantom js and nightwatch.js (5)
 
Building a PWA with Ionic, Angular, and Spring Boot - GeeCON 2017
Building a PWA with Ionic, Angular, and Spring Boot - GeeCON 2017Building a PWA with Ionic, Angular, and Spring Boot - GeeCON 2017
Building a PWA with Ionic, Angular, and Spring Boot - GeeCON 2017
 
Automated Testing using JavaScript
Automated Testing using JavaScriptAutomated Testing using JavaScript
Automated Testing using JavaScript
 
Introduction to Development for the Internet
Introduction to Development for the InternetIntroduction to Development for the Internet
Introduction to Development for the Internet
 
Browser Automated Testing Frameworks - Nightwatch.js
Browser Automated Testing Frameworks - Nightwatch.jsBrowser Automated Testing Frameworks - Nightwatch.js
Browser Automated Testing Frameworks - Nightwatch.js
 
API Design Principles for Accelerated Development
API Design Principles for Accelerated DevelopmentAPI Design Principles for Accelerated Development
API Design Principles for Accelerated Development
 
How to Build and Maintain Quality Drupal Sites with Automated Testing
How to Build and Maintain Quality Drupal Sites with Automated TestingHow to Build and Maintain Quality Drupal Sites with Automated Testing
How to Build and Maintain Quality Drupal Sites with Automated Testing
 

Semelhante a Magento 2 Best Practice Workfow // David Lambauer // Meet Magento 2017 // Leipzig

Cardiff University FTS presentation 2011 (MS Word plug in)
Cardiff University FTS presentation 2011 (MS Word plug in)Cardiff University FTS presentation 2011 (MS Word plug in)
Cardiff University FTS presentation 2011 (MS Word plug in)
salsalamah
 
Reusing JavaScript knowledge in Windows Store apps
Reusing JavaScript knowledge in Windows Store appsReusing JavaScript knowledge in Windows Store apps
Reusing JavaScript knowledge in Windows Store apps
Timmy Kokke
 

Semelhante a Magento 2 Best Practice Workfow // David Lambauer // Meet Magento 2017 // Leipzig (20)

MongoDB.local Seattle 2019: MongoDB Stitch Tutorial
MongoDB.local Seattle 2019: MongoDB Stitch TutorialMongoDB.local Seattle 2019: MongoDB Stitch Tutorial
MongoDB.local Seattle 2019: MongoDB Stitch Tutorial
 
MongoDB.local Dallas 2019: MongoDB Stitch Tutorial
MongoDB.local Dallas 2019: MongoDB Stitch TutorialMongoDB.local Dallas 2019: MongoDB Stitch Tutorial
MongoDB.local Dallas 2019: MongoDB Stitch Tutorial
 
Test Driven Development (TDD) Preso 360|Flex 2010
Test Driven Development (TDD) Preso 360|Flex 2010Test Driven Development (TDD) Preso 360|Flex 2010
Test Driven Development (TDD) Preso 360|Flex 2010
 
Test Driven Development (TDD) with FlexUnit 4 - 360|Flex San Jose preso
Test Driven Development (TDD) with FlexUnit 4 - 360|Flex San Jose presoTest Driven Development (TDD) with FlexUnit 4 - 360|Flex San Jose preso
Test Driven Development (TDD) with FlexUnit 4 - 360|Flex San Jose preso
 
Lug
LugLug
Lug
 
MongoDB.local Atlanta: MongoDB Stitch Tutorial
MongoDB.local Atlanta: MongoDB Stitch TutorialMongoDB.local Atlanta: MongoDB Stitch Tutorial
MongoDB.local Atlanta: MongoDB Stitch Tutorial
 
Azure DevOps Realtime Work Item Sync: the good, the bad, the ugly!
Azure DevOps Realtime Work Item Sync: the good, the bad, the ugly!Azure DevOps Realtime Work Item Sync: the good, the bad, the ugly!
Azure DevOps Realtime Work Item Sync: the good, the bad, the ugly!
 
Cardiff University FTS presentation 2011 (MS Word plug in)
Cardiff University FTS presentation 2011 (MS Word plug in)Cardiff University FTS presentation 2011 (MS Word plug in)
Cardiff University FTS presentation 2011 (MS Word plug in)
 
JavaOne 2015: Top Performance Patterns Deep Dive
JavaOne 2015: Top Performance Patterns Deep DiveJavaOne 2015: Top Performance Patterns Deep Dive
JavaOne 2015: Top Performance Patterns Deep Dive
 
Dev ops presentation
Dev ops presentationDev ops presentation
Dev ops presentation
 
Reusing JavaScript knowledge in Windows Store apps
Reusing JavaScript knowledge in Windows Store appsReusing JavaScript knowledge in Windows Store apps
Reusing JavaScript knowledge in Windows Store apps
 
Ship code like a keptn
Ship code like a keptnShip code like a keptn
Ship code like a keptn
 
Best Practices for Building WordPress Applications
Best Practices for Building WordPress ApplicationsBest Practices for Building WordPress Applications
Best Practices for Building WordPress Applications
 
Five Ways to Fix Your SQL Server Dev-Test Problems
Five Ways to Fix Your SQL Server Dev-Test Problems Five Ways to Fix Your SQL Server Dev-Test Problems
Five Ways to Fix Your SQL Server Dev-Test Problems
 
[Pinto] Is my SharePoint Development team properly enlighted?
[Pinto] Is my SharePoint Development team properly enlighted?[Pinto] Is my SharePoint Development team properly enlighted?
[Pinto] Is my SharePoint Development team properly enlighted?
 
Click, Click, Test - Automated Tests for APEX Applications
Click, Click, Test - Automated Tests for APEX ApplicationsClick, Click, Test - Automated Tests for APEX Applications
Click, Click, Test - Automated Tests for APEX Applications
 
Stanislav Khorunzhyi, "Front-end it like a PRO"
Stanislav Khorunzhyi, "Front-end it like a PRO"Stanislav Khorunzhyi, "Front-end it like a PRO"
Stanislav Khorunzhyi, "Front-end it like a PRO"
 
Webinar on How to use MyAppConverter
Webinar on How to use  MyAppConverterWebinar on How to use  MyAppConverter
Webinar on How to use MyAppConverter
 
Scale your Software development process while scaling your team
Scale your Software development process while scaling your teamScale your Software development process while scaling your team
Scale your Software development process while scaling your team
 
Application Lifecycle Management
Application Lifecycle ManagementApplication Lifecycle Management
Application Lifecycle Management
 

Mais de AOE

Mais de AOE (20)

Re-inventing airport non-aeronautical revenue generation post COVID-19
Re-inventing airport non-aeronautical revenue generation post COVID-19Re-inventing airport non-aeronautical revenue generation post COVID-19
Re-inventing airport non-aeronautical revenue generation post COVID-19
 
Flamingo - Inspiring Commerce Frontend made in Go - Meet Magento 2019
Flamingo - Inspiring Commerce Frontend made in Go - Meet Magento 2019Flamingo - Inspiring Commerce Frontend made in Go - Meet Magento 2019
Flamingo - Inspiring Commerce Frontend made in Go - Meet Magento 2019
 
Flamingo presentation at code.talks commerce by Daniel Pötzinger
Flamingo presentation at code.talks commerce by Daniel PötzingerFlamingo presentation at code.talks commerce by Daniel Pötzinger
Flamingo presentation at code.talks commerce by Daniel Pötzinger
 
A bag full of trust - Christof Braun at AOE Conference 2018
A bag full of trust - Christof Braun at AOE Conference 2018A bag full of trust - Christof Braun at AOE Conference 2018
A bag full of trust - Christof Braun at AOE Conference 2018
 
Digitalizing the Global Travel Retail World - Kian Gould at Global Retailing ...
Digitalizing the Global Travel Retail World - Kian Gould at Global Retailing ...Digitalizing the Global Travel Retail World - Kian Gould at Global Retailing ...
Digitalizing the Global Travel Retail World - Kian Gould at Global Retailing ...
 
Frankfurt Airport Digitalization Case Study
Frankfurt Airport Digitalization Case StudyFrankfurt Airport Digitalization Case Study
Frankfurt Airport Digitalization Case Study
 
This is what has to change for Travel Retail to survive - Manuel Heidler, AOE
This is what has to change for Travel Retail to survive - Manuel Heidler, AOEThis is what has to change for Travel Retail to survive - Manuel Heidler, AOE
This is what has to change for Travel Retail to survive - Manuel Heidler, AOE
 
AOEconf17: Application Security
AOEconf17: Application SecurityAOEconf17: Application Security
AOEconf17: Application Security
 
AOEconf17: AOE Tech Radar Insights
AOEconf17: AOE Tech Radar InsightsAOEconf17: AOE Tech Radar Insights
AOEconf17: AOE Tech Radar Insights
 
AOEconf17: A flight through our OMÂł Systems
AOEconf17: A flight through our OMÂł SystemsAOEconf17: A flight through our OMÂł Systems
AOEconf17: A flight through our OMÂł Systems
 
AOEconf17: AOE Tech Radar Insights
AOEconf17: AOE Tech Radar InsightsAOEconf17: AOE Tech Radar Insights
AOEconf17: AOE Tech Radar Insights
 
AOEconf17: Pets vs. Cattle - modern Application Infrastructure - by Fabrizio ...
AOEconf17: Pets vs. Cattle - modern Application Infrastructure - by Fabrizio ...AOEconf17: Pets vs. Cattle - modern Application Infrastructure - by Fabrizio ...
AOEconf17: Pets vs. Cattle - modern Application Infrastructure - by Fabrizio ...
 
AOEconf17: Agile scaling concepts
AOEconf17: Agile scaling conceptsAOEconf17: Agile scaling concepts
AOEconf17: Agile scaling concepts
 
AOEcon17: Searchperience - The journey from PHP and Solr to Scala and Elastic...
AOEcon17: Searchperience - The journey from PHP and Solr to Scala and Elastic...AOEcon17: Searchperience - The journey from PHP and Solr to Scala and Elastic...
AOEcon17: Searchperience - The journey from PHP and Solr to Scala and Elastic...
 
AOEconf17: UI challenges in a microservice world
AOEconf17: UI challenges in a microservice worldAOEconf17: UI challenges in a microservice world
AOEconf17: UI challenges in a microservice world
 
AOEconf17: Application Security - Bastian Ike
AOEconf17: Application Security - Bastian IkeAOEconf17: Application Security - Bastian Ike
AOEconf17: Application Security - Bastian Ike
 
AOEconf17: Management 3.0 - the secret to happy, performing and motivated sel...
AOEconf17: Management 3.0 - the secret to happy, performing and motivated sel...AOEconf17: Management 3.0 - the secret to happy, performing and motivated sel...
AOEconf17: Management 3.0 - the secret to happy, performing and motivated sel...
 
AOEconf17: How to eat an elePHPant, congstar style - Timo Fuchs & Stefan Rotsch
AOEconf17: How to eat an elePHPant, congstar style - Timo Fuchs & Stefan RotschAOEconf17: How to eat an elePHPant, congstar style - Timo Fuchs & Stefan Rotsch
AOEconf17: How to eat an elePHPant, congstar style - Timo Fuchs & Stefan Rotsch
 
Joern Bock: The basic concept of an agile organisation
Joern Bock: The basic concept of an agile organisationJoern Bock: The basic concept of an agile organisation
Joern Bock: The basic concept of an agile organisation
 
SUPER-scaling E-Commerce with Magento
SUPER-scaling E-Commerce with MagentoSUPER-scaling E-Commerce with Magento
SUPER-scaling E-Commerce with Magento
 

Último

The title is not connected to what is inside
The title is not connected to what is insideThe title is not connected to what is inside
The title is not connected to what is inside
shinachiaurasa2
 
Abortion Pill Prices Tembisa [(+27832195400*)] đŸ„ Women's Abortion Clinic in T...
Abortion Pill Prices Tembisa [(+27832195400*)] đŸ„ Women's Abortion Clinic in T...Abortion Pill Prices Tembisa [(+27832195400*)] đŸ„ Women's Abortion Clinic in T...
Abortion Pill Prices Tembisa [(+27832195400*)] đŸ„ Women's Abortion Clinic in T...
Medical / Health Care (+971588192166) Mifepristone and Misoprostol tablets 200mg
 
Devoxx UK 2024 - Going serverless with Quarkus, GraalVM native images and AWS...
Devoxx UK 2024 - Going serverless with Quarkus, GraalVM native images and AWS...Devoxx UK 2024 - Going serverless with Quarkus, GraalVM native images and AWS...
Devoxx UK 2024 - Going serverless with Quarkus, GraalVM native images and AWS...
Bert Jan Schrijver
 
%+27788225528 love spells in Colorado Springs Psychic Readings, Attraction sp...
%+27788225528 love spells in Colorado Springs Psychic Readings, Attraction sp...%+27788225528 love spells in Colorado Springs Psychic Readings, Attraction sp...
%+27788225528 love spells in Colorado Springs Psychic Readings, Attraction sp...
masabamasaba
 
%+27788225528 love spells in Knoxville Psychic Readings, Attraction spells,Br...
%+27788225528 love spells in Knoxville Psychic Readings, Attraction spells,Br...%+27788225528 love spells in Knoxville Psychic Readings, Attraction spells,Br...
%+27788225528 love spells in Knoxville Psychic Readings, Attraction spells,Br...
masabamasaba
 
%+27788225528 love spells in new york Psychic Readings, Attraction spells,Bri...
%+27788225528 love spells in new york Psychic Readings, Attraction spells,Bri...%+27788225528 love spells in new york Psychic Readings, Attraction spells,Bri...
%+27788225528 love spells in new york Psychic Readings, Attraction spells,Bri...
masabamasaba
 

Último (20)

WSO2CON 2024 - Does Open Source Still Matter?
WSO2CON 2024 - Does Open Source Still Matter?WSO2CON 2024 - Does Open Source Still Matter?
WSO2CON 2024 - Does Open Source Still Matter?
 
WSO2Con2024 - From Code To Cloud: Fast Track Your Cloud Native Journey with C...
WSO2Con2024 - From Code To Cloud: Fast Track Your Cloud Native Journey with C...WSO2Con2024 - From Code To Cloud: Fast Track Your Cloud Native Journey with C...
WSO2Con2024 - From Code To Cloud: Fast Track Your Cloud Native Journey with C...
 
%in ivory park+277-882-255-28 abortion pills for sale in ivory park
%in ivory park+277-882-255-28 abortion pills for sale in ivory park %in ivory park+277-882-255-28 abortion pills for sale in ivory park
%in ivory park+277-882-255-28 abortion pills for sale in ivory park
 
The title is not connected to what is inside
The title is not connected to what is insideThe title is not connected to what is inside
The title is not connected to what is inside
 
Abortion Pill Prices Tembisa [(+27832195400*)] đŸ„ Women's Abortion Clinic in T...
Abortion Pill Prices Tembisa [(+27832195400*)] đŸ„ Women's Abortion Clinic in T...Abortion Pill Prices Tembisa [(+27832195400*)] đŸ„ Women's Abortion Clinic in T...
Abortion Pill Prices Tembisa [(+27832195400*)] đŸ„ Women's Abortion Clinic in T...
 
MarTech Trend 2024 Book : Marketing Technology Trends (2024 Edition) How Data...
MarTech Trend 2024 Book : Marketing Technology Trends (2024 Edition) How Data...MarTech Trend 2024 Book : Marketing Technology Trends (2024 Edition) How Data...
MarTech Trend 2024 Book : Marketing Technology Trends (2024 Edition) How Data...
 
WSO2CON 2024 - Cloud Native Middleware: Domain-Driven Design, Cell-Based Arch...
WSO2CON 2024 - Cloud Native Middleware: Domain-Driven Design, Cell-Based Arch...WSO2CON 2024 - Cloud Native Middleware: Domain-Driven Design, Cell-Based Arch...
WSO2CON 2024 - Cloud Native Middleware: Domain-Driven Design, Cell-Based Arch...
 
Devoxx UK 2024 - Going serverless with Quarkus, GraalVM native images and AWS...
Devoxx UK 2024 - Going serverless with Quarkus, GraalVM native images and AWS...Devoxx UK 2024 - Going serverless with Quarkus, GraalVM native images and AWS...
Devoxx UK 2024 - Going serverless with Quarkus, GraalVM native images and AWS...
 
Shapes for Sharing between Graph Data Spaces - and Epistemic Querying of RDF-...
Shapes for Sharing between Graph Data Spaces - and Epistemic Querying of RDF-...Shapes for Sharing between Graph Data Spaces - and Epistemic Querying of RDF-...
Shapes for Sharing between Graph Data Spaces - and Epistemic Querying of RDF-...
 
%+27788225528 love spells in Colorado Springs Psychic Readings, Attraction sp...
%+27788225528 love spells in Colorado Springs Psychic Readings, Attraction sp...%+27788225528 love spells in Colorado Springs Psychic Readings, Attraction sp...
%+27788225528 love spells in Colorado Springs Psychic Readings, Attraction sp...
 
call girls in Vaishali (Ghaziabad) 🔝 >àŒ’8448380779 🔝 genuine Escort Service đŸ”âœ”ïžâœ”ïž
call girls in Vaishali (Ghaziabad) 🔝 >àŒ’8448380779 🔝 genuine Escort Service đŸ”âœ”ïžâœ”ïžcall girls in Vaishali (Ghaziabad) 🔝 >àŒ’8448380779 🔝 genuine Escort Service đŸ”âœ”ïžâœ”ïž
call girls in Vaishali (Ghaziabad) 🔝 >àŒ’8448380779 🔝 genuine Escort Service đŸ”âœ”ïžâœ”ïž
 
Crypto Cloud Review - How To Earn Up To $500 Per DAY Of Bitcoin 100% On AutoP...
Crypto Cloud Review - How To Earn Up To $500 Per DAY Of Bitcoin 100% On AutoP...Crypto Cloud Review - How To Earn Up To $500 Per DAY Of Bitcoin 100% On AutoP...
Crypto Cloud Review - How To Earn Up To $500 Per DAY Of Bitcoin 100% On AutoP...
 
%in kempton park+277-882-255-28 abortion pills for sale in kempton park
%in kempton park+277-882-255-28 abortion pills for sale in kempton park %in kempton park+277-882-255-28 abortion pills for sale in kempton park
%in kempton park+277-882-255-28 abortion pills for sale in kempton park
 
%+27788225528 love spells in Knoxville Psychic Readings, Attraction spells,Br...
%+27788225528 love spells in Knoxville Psychic Readings, Attraction spells,Br...%+27788225528 love spells in Knoxville Psychic Readings, Attraction spells,Br...
%+27788225528 love spells in Knoxville Psychic Readings, Attraction spells,Br...
 
%in Stilfontein+277-882-255-28 abortion pills for sale in Stilfontein
%in Stilfontein+277-882-255-28 abortion pills for sale in Stilfontein%in Stilfontein+277-882-255-28 abortion pills for sale in Stilfontein
%in Stilfontein+277-882-255-28 abortion pills for sale in Stilfontein
 
Software Quality Assurance Interview Questions
Software Quality Assurance Interview QuestionsSoftware Quality Assurance Interview Questions
Software Quality Assurance Interview Questions
 
%+27788225528 love spells in new york Psychic Readings, Attraction spells,Bri...
%+27788225528 love spells in new york Psychic Readings, Attraction spells,Bri...%+27788225528 love spells in new york Psychic Readings, Attraction spells,Bri...
%+27788225528 love spells in new york Psychic Readings, Attraction spells,Bri...
 
Direct Style Effect Systems - The Print[A] Example - A Comprehension Aid
Direct Style Effect Systems -The Print[A] Example- A Comprehension AidDirect Style Effect Systems -The Print[A] Example- A Comprehension Aid
Direct Style Effect Systems - The Print[A] Example - A Comprehension Aid
 
%in Hazyview+277-882-255-28 abortion pills for sale in Hazyview
%in Hazyview+277-882-255-28 abortion pills for sale in Hazyview%in Hazyview+277-882-255-28 abortion pills for sale in Hazyview
%in Hazyview+277-882-255-28 abortion pills for sale in Hazyview
 
8257 interfacing 2 in microprocessor for btech students
8257 interfacing 2 in microprocessor for btech students8257 interfacing 2 in microprocessor for btech students
8257 interfacing 2 in microprocessor for btech students
 

Magento 2 Best Practice Workfow // David Lambauer // Meet Magento 2017 // Leipzig

Notas do Editor

  1. Hallo zusammen, Freut mich das so viele gekommen sind. Heute geht es um Magento 2 Best Practice Workflow und zwar in der Modulentwicklung. Ich möchte zum einen zeigen, welche Vorgehensweise sich bewÀhrt hat und wie man diese Vorgehensweise wirtschaftlich effizient und technisch qualitativ hochwertig einsetzten kann.
  2. Bevor wir anfangen, ein paar Worte zu mir: Ich bin David Lambauer, Software Entwickler und habe ein Fabel fĂŒr Open Source, Software QualitĂ€t, Zitate, Emojis und Memes. HĂ€tte man aber bestimmt auch gemerkt im Laufe des Vortrags :D
  3. Ich bin zu finden auf Github und Twitter...
  4. Und ich arbeite bei AOE in Wiesbaden!
  5. Jedem ist es schon einmal passiert, dass man in ein fachliches GesprÀch gekommen ist und der GesprÀchspartner von Dingen erzÀhlt von denen man noch nie etwas gehört hat. Nach diesen Situationen gehe ich immer total geflasht raus und frage mich wie es sein kann das ich absolut noch nie etwas von dem Inhalt des GesprÀchs vorher gehört habe.
  6. In diesem Momenten fĂŒhlt man sich immer wie ein totaler noob :D Das ganze ist aber nur semi schlimm und mittlerweile mag ich es total in solche Situationen zu kommen, denn nur so wird man wirklich besser.
  7. Es gibt immer jemanden der besser auf einem bestimmten Gebiet ist als man selbst. Das sollte man definitiv fĂŒr sich nutzen und so viel Wissen einsammeln wie es nur geht. Deswegen wird dieser Vortrag auch keine expliziete Schritt fĂŒr Schritt Anleitung sondern eher eine theoretische Story mit vielen Buzzwords 
  8. Nachdem ich wiederholt auf die fachlich vermeintlich besseren Menschen traf habe ich beschlossen zu analysieren was denn eigentlich so cool ist und warum sie so gut sind wie sie sind.
  9. Als Grundlage dafĂŒr habe ich mir verschiedene Quellen gesucht. Zum einen habe ich klassische Literatur gelesen wie etwa das Gang of Four Buch oder Clean Code. Zum anderen habe ich meine Kollegen beobachtet, GitHub Module analysiert und versucht diese Quellen zusammen zu bringen und auf Magento 2 zu mĂŒnzen. Es gibt eine Hand von Buzzwords die mir besonders im Magento 2 Umfeld wichtig waren. Diese habe ich mal wie folgt definiert: Spiegelstriche vorlesen.... Nachdem ich diese sehr Allgemeine Analyse gemacht habe, habe ich eine weitere Analyse zu Magento 2 Modulen erstellt. Das Ergebnis davon ist etwa das folgende:
  10. Ein M2 Modul besteht prinzipiell aus vier Bestandteilen. Application Code  Registration.php // di.xml // module.xml Business Logic  Komponenten die mit Magento interagieren aber kein direkter Bestandteil des Systems sein mĂŒssen. Framework oder Library  Guzzle // CsvParser // FileWriter Meta  Tests // Composer Dependencies // Dokumentation // Spezifikation Diese vier Bestandteile sollten wir im Hinterkopf behalten.
  11. Um unsere Analysen nun auch nutzen zu können, habe ich mir eine Super simple Story ausgedacht, die aber recht anschaulich ein Beispiel zeigen sollte
  12. Ich möchte nicht, das Jugendliche in einem definierten Alter Alkohol in meinem Shop kaufen