JavaScript Object-Oriented Masterclass

Go to class
Write Review

JavaScript Object-Oriented Masterclass provided by Udemy is a comprehensive online course, which lasts for 4-5 hours worth of material. JavaScript Object-Oriented Masterclass is taught by Mehdi Maujood. Upon completion of the course, you can receive an e-certificate from Udemy. The course is taught in Englishand is Paid Course. Visit the course page at Udemy for detailed price information.

Overview
  • Write robust, highly maintainable and elegant JavaScript applications by deeply understanding Object-Oriented JavaScript

    What you'll learn:

    • Objects and functions
    • Scopes and closures
    • The "this" keyword and call, bind and apply functions
    • The module pattern
    • Prototype-based object-oriented programming
    • Prototypes vs classes
    • A deep-dive into the constructor pattern
    • Classes
    • Concatenative inheritance and prototype-based OOP
    • Multiple Inheritance using concatenative inheritance
    • Private variables and functions
    • Introduction to TypeScript
    • Explore a real-world object-oriented JavaScript application

    "- the use of classes ... is the source of a number of complications. This paper discusses prototypes as an alternative to classes ... In a prototype-based language, copying rather than instantiation is the mechanism provided to the user for making new objects."

    This is a line from a 1986 research paper discussing prototypes as an alternative to classes. Did you know that JavaScript is a prototype-based language and does not need classes? Did you know that JavaScript's Object-Oriented system is actually simpler than classes?

    Unfortunately, due to the language being marketed as "Java's little brother", something called the "constructor pattern" was designed as a way to for the language to "look like" class-based Java. The decision to conceal JavaScript's true identity as a prototype-based language in favor of something that looked like half-baked classes has led to widespread confusion among developers that lives to this day.

    In this course, we will explore JavaScript's true identity as a prototype-based language and look at different ways of doing OOP in JavaScript. We don't ignore classes or constructors - we will study them deeply and learn how they are abstractions over a prototype-based system and learn how to effectively utilize them.

    In this lesson, we will learn how to write effective, maintainable and robust object-oriented code using JavaScript.