Role-Based Learning Pathways
Blog postToday we're introducing a new learning tool: role-based learning pathways!
Do you want to build Drupal sites? Do you want to work with Drupal themes or become a Drupal developer? If yes, then these pathways are for you. Check them out, and start learning (more) Drupal!
LaunchCode Education Partnership
Blog postWe're now a LaunchCode Education Partner, and we're thrilled to introduce you to this great organization!
Meet Front-End Developer Helena Zubkow
Blog postIn this Drupalize.Me interview, we talk with Helena Zubkow, front-end developer at Lullabot, based in Orlando, Florida. This interview is part of an ongoing series where we talk with a variety of people in the Drupal community about the work they do. Each interview focuses on a particular Drupal role and this interview with Helena focuses on the front-end developer role.
In this series, Object-Oriented PHP Part 3, we'll teach you all about inheritance in PHP, including how that works in classes, abstractions, and interfaces. These concepts are keys to understanding the code you will see in Drupal 8 modules.
In this series, we’ll continue to build the spaceship app that we’ve started in Introduction to Object-Oriented PHP and Object-Oriented PHP Part 2. In this tutorial, I’ll show you how to use the extends
keyword in PHP so that you can use it to inherit properties and methods from another class
.
Additional resources
In this tutorial, I will show you how to override a method that you’ve inherited from another class. By having two classes we are starting to shape the different behaviors and properties of each, while still keeping most things in common and not duplicated.
In this tutorial, I will show you the difference between public, private, and protected methods or properties in PHP classes. By the end of this lesson you will learn how to make things private at first, protected once you need to access them in a subclass, and public when you need to use it outside of its class and subclass.
Additional resources
In this tutorial, I will show you how to get around the problem of calling a function that you have overridden in your class: how to call the parent class method.
Additional resources
In this tutorial, I will show you how we can build a better blueprint and hierarchical structure for our app’s classes through the use of abstract classes.
Additional resources
In this tutorial, I will show you the power of abstract classes and how you can enforce subclasses to define certain functions. In this way, you can share logic but for things that are really specific to subclasses, you can force them to define certain functions, but with the specific logic required.
Additional resources
In this tutorial, I will show you how to extend an abstract class and ensure that all the methods that are required by the abstract class are included in this new class.
Additional resources
In this tutorial, I will show you how to handle new requirements for data storage by creating two smaller abstract classes out of our original data storage class. By creating these new abstract classes, we can build more flexibility into our code.
Additional resources
Now that we have created new abstract classes, we need to load and utilize them in our code. In this tutorial, I will show you how we can refactor our code to make use of our new abstract data loading classes.
We have an abstract class with methods that we require, but there’s no logic in these abstract methods. This is a perfect opportunity to use interfaces. In this tutorial, I will show you how to create and implement Interfaces. I will also explain how interfaces are useful when you will be sharing your code. But even if you’re not creating interfaces to share, chances are, if you’re using open source code — and definitely in Drupal — you will need to know how to implement interfaces.
Additional resources
Object-Oriented PHP Part 3
CourseMeet Drupal Developer Kate Marshalkina
Blog postIn this Drupalize.Me interview, we talk with Kate Marshalkina, senior developer at SystemSeed, based in Moscow, Russia. This interview is part of an ongoing series where we talk with a variety of people in the Drupal community about the work they do. Each interview focuses on a particular Drupal role and this interview with Kate focuses on the developer role.
Drupalize.Me Is Going to ZendCon
Blog postWe'll be attending ZendCon 2015 this week, learning about what the PHP community is up to, and sharing our Drupal knowledge.
Meet Project Manager Jeanne Cost
Blog postIn this Drupalize.Me interview, we talk with Jeanne Cost, project manager at Fuse IQ, based in Seattle, Washington. This interview is part of an ongoing series where we talk with a variety of people in the Drupal community about the work they do. Each interview focuses on a particular Drupal role and this interview with Jeanne focuses on the project manager role.
How to Log Messages in Drupal 8
Blog postDevelopers familiar with Drupal 7 will also be familiar with watchdog(), an API function that allows you to create a log message that appears on the Reports page in the Drupal administrative UI. Implementing D7’s hook_watchdog allows module developers to customize the destination of these log messages. In Drupal 8, both functions are replaced by a PSR-3-compatible logging interface (change notice).
Meet Front-End Developer Tiffany Tse
Blog postIn this Drupalize.Me interview, we talked with Tiffany Tse, front-end developer, Creative Director for Coldfront Labs, Inc., and instructor at Alongquin College. This interview is part of an ongoing series where we talk with a variety of people in the Drupal community about the work they do. Each interview focuses on a particular Drupal role and this interview with Tiffany focuses on the front-end developer and themer role.