Intermediate OOP in Drupal: Patterns, Services, Events, and Dependency Injection (morning)

Drupal Camp Asheville 2021 Online Edition - July 8th-9th

When & Where

Room
Other
Start Time
July 8, 2021 - 8:00 am EDT

Topics

Speaker

Speaker
Jonathan Daggerhart
Jonathan Daggerhart headshot
Company

About the Speaker(s)

About

Architect at Daggerhart Lab

Long time Drupal and WordPress developer. Organizer of Drupal Camp Asheville.

Training Description

Drupal 8+ changes made it necessary for developers to have a stronger understanding of object oriented programming. In this training we'll discuss and demystify some of the most useful OOP concepts, patterns, and jargon as they apply to modern Drupal development.

This training will best serve developers who have some understanding of OOP, and want to learn more about the theory behind best practices seen in Drupal 8+ and Symfony. The approach of this training is a series of discussions paired with practical examples of how the topics apply to Drupal 8 module development. If things get really wild, we'll live-code some modules.

Topics include:

  • OOP Concepts: Nouns & Verbs, Composition over Inheritance, Dependency Injection, Programming to Interfaces, Cohesion and Coupling
  • Patterns: Dependency Injection Container vs Service Locator, Events (vs Hooks), Factory, Decorator
  • Drupal/Symfony: Services and Dependency Injection for Services, Forms, Blocks, Controllers

Attendees will leave this training with working understanding of many new concepts they can use to create better and more maintainable Drupal modules.

Who is your ideal audience member, the person who would get the most out of your training?

This training will best serve developers who have some understanding of OOP, and want to learn more about the theory behind best practices seen in Drupal 8+ and Symfony. The approach of this training is a series of discussions paired with practical examples of how the topics apply to Drupal 8 module development. If things get really wild, we'll live-code some modules.

What do you expect people to be able to take away from your training?

Attendees will leave this training with working understanding of many new concepts they can use to create better and more maintainable Drupal modules.

How much and what kind of technical knowledge do people need going in to your training?

Some PHP experience required.