Object-Oriented Bootcamp
As wonderful as Laravel is, it does assume that you have a basic understanding of object-oriented programming. If you don't, that's okay, we all were there at one point; however, you need to buckle down and learn this stuff before continuing on to the various lessons on this site. Let me help!
Updated Series Available
You are viewing an archived course. We instead recommend that you watch Object-Oriented Principles in PHP.
Progress
Series Info
- Episodes
- 10
- Run Time
- 1h 59m
- Difficulty
- Beginner
- Last Updated
- Nov 11, 2015
- Version
- Latest
Series Episodes
- Episodes (10)
Classes
Naturally, the first step in our journey is to review the structure of a PHP class. As you'll find, they allow us to represent pieces of our domain in a readable and flexible fashion.Getters and Setters
When I was first learning, I had a lot of trouble understanding the need for getters and setters. Hopefully, I can make it easier for you, than it was for me!Encapsulation
Encapsulation is a confusing, scary term, that simply refers to the act of hiding information. Let me show you.Inheritance
Luckily, inheritance is a fairly easy concept to understand. I'll show you a few different examples to illustrate this common pattern.Messages 101
The key to OOP is undestanding that objects send messages to one another. So far, we've exclusively worked with single classes, but that's not even remotely indicative of a real-world application. So, let's take a step up the ladder, and talk about communication.Namespacing and Autoloading
Though not directly related to OOP, it's important that we take a short break to discuss such topics as namespacing and autoloading. These are core concepts that you must learn.Statics and Constants
You've likely come across an article on the web, which stated that statics are evil. What do they mean by this? Is it true? Well...partially. Let's talk about it in this episode.Interfaces
Appreciating the benefits of coding to an interface took me a very, very long time. This video will be step one on your journey. Watch it multiple times.Interfaces vs. Abstract Classes
When I was first learning OOP, I very quickly became confused by interfaces and abstract classes. What is the difference between the two? How do I decide which is appropriate for any given situation?A Review
I want to impress upon you that developers, at all times, have multiple ways to solve any particular problem. In certain contexts, one approach might be preferred, while in other situations, it very much might be the wrong approach. The key is to measure the pros and cons as best as you can.
