An introduction to object-oriented programming


If most of your web development work focuses around current stable versions of Drupal, you may be new to object-oriented programming. This is an approach to coding that centers around objects, which are data of their own types (classes) with their own behavior that are defined by developers and can easily be built upon by other developers. It also includes concepts such as interfaces, more compartimentalized design, dependency injection and unit testing.

This session will explain these concepts to you from the point of view of someone coming from procedural programming, which was Drupal’s predominant coding style before version 8. Afterwards, you will be familiar with the main concepts used by Drupal 8 and other modern PHP libraries and frameworks and you will be able to recognize and work with them in your favorite new Drupal version.

Why should you attend this presentation?

  • If you are yet unfamiliar with interfaces, (abstract) classes, traits, inheritance, or type hinting.

  • If you have never really worked with object-oriented code in PHP before.

  • If you want to contribute to Drupal 8’s back-end.

What isn’t covered in this presentation?

  • Software design patterns

  • PHPUnit best practices

  • PHP 7 or Drupal 9

Session Track

Coding and Development

Experience Level


Drupal Version