What is Object-oriented Programming (OOP)?
Object-oriented programming (OOP) is a popular programming paradigm or style of programming. It’s been around since ‘70s, but unlike tools and frameworks that come and go, OOP is still very relevant today. That’s because it’s not a programming language or a tool. It’s a style of programming.
Why learn OOP?
OOP helps you manage and reduce complexity in software by building re-usable building blocks (objects). Properly designed objects provide a simple interface and hide the unnecessary complexity from the outside, just like a DVD player! A DVD player has a complex logic board on the inside and a few buttons on the outside. When you press the play button, you don’t care how all those microchips talk to each other.
Object-oriented programming helps you:
- Manage and reduce complexity
- Eliminate redundant code
- Build re-usable building blocks
- Write cleaner code
An essential skills for every developer
OOP comes up in many technical interviews. So if you really want to be a serious developer, you need to understand object-oriented programming. As a technical interviewer myself, if I see a candidate with OOP on their resume, that candidate stands out to me.
It may interest you to know that many of the popular frameworks out there that you might be using are actually designed with OOP concepts in mind. Angular is an example of such frameworks!
A Step-by-Step, A to Z course
What you'll get when you sign up for this course:
- No more wasting time on disjointed tutorials
- Learn at your own pace - lifetime access - so take your time if you prefer
- Watch on any device, online or offline
- Prepare for technical interviews
- Learn the best practices and common pitfalls to avoid
- Certificate of completion to present to your employer
- The core principles of OOP: encapsulation, abstraction, inheritance and polymorphism
- All about objects, their properties, property descriptors, getters and setters
- Difference between factory and constructor functions
- ES6+ features used in object-oriented programming
This course is for you if:
Having OOP and JS on your resume helps you
find more jobs and make more money.
"Hi Mosh, I'm really loving your OOP course. I’m finally understanding prototypical inheritance and async programming! I'm 8 months into learning how to become a developer, and making very good progress. My previous instruction before your courses on those subjects wasn't thorough enough to be especially useful. You really hammer home details about constructor functions and the use of the .prototype property. "
- Brian Haller
- Mathew Hemmingway
Hi! My name is Mosh Hamedani. I'm a software engineer with almost two decades of experience and I've taught over three million people how to code or how to become a professional software engineer through my online courses and YouTube channel.
I believe coding should be fun and accessible to everyone.
Start1- Introduction (0:44)
Start2- Object Literals (3:03)
Start3- Factories (2:51)
Start4- Constructors (5:36)
Start5- Constructor Property (2:24)
Start6- Functions are Objects (4:47)
Start7- Value vs Reference Types (5:49)
Start8- Adding or Removing Properties (3:53)
Start9- Enumerating Properties (2:50)
Start10- Abstraction (4:02)
Start11- Private Properties and Methods (4:05)
Start12- Getters and Setters (5:36)
Start13- Cheat Sheet
Start14- Exercise- Stopwatch (2:08)
Start15- Solution- Stopwatch (2:31)
Start1- Inheritance (2:26)
Start2- Prototypes and Prototypical Inheritance (5:33)
Start3- Multilevel Inheritance (2:51)
Start4- Property Descriptors (5:07)
Start5- Constructor Prototypes (3:52)
Start6- Prototype vs Instance Members (6:04)
Start7- Iterating Instance and Prototype Members (2:39)
Start8- Avoid Extending the Built-in Objects (1:41)
Start9- Cheat Sheet
Start10- Exercise (1:33)
Start11- Solution (5:38)
Frequently Asked Questions
Full Money Back Guarantee for 30 Days
Try it risk-free
You can ask for a full refund any time during the first 30 days if you decide the course isn’t for you.
Full, instant refund, no questions asked.
"Mosh does a great job of covering the many variants of OOP in JS. He is thorough while being accessible and I really enjoyed his careful review of each concept as we went along."
- Shawn Larkin
Are you ready to take your
Stop wasting your time jumping from one tutorial to another. Enroll in the course to get:
- 4 hours of HD videos
- Exercises and solutions
- Little known expert tips
- Best practices to apply
- Common mistakes to avoid
- Unlimited access
- Learn at your own pace
- Watch online or offline
- Watch on any devices
- Certificate of completion
With a 30-day full money-back guarantee, what do you have to lose?
Join 13243 happy students!
Stop wasting your time jumping from one video tutorial to another.
With our amazing reviews and money back guarantee, what are you waiting for?