Object oriented programming (OOP) is at the heart of most software development. Though JavaScript is a bit unusual in its approach to OOP, it is nevertheless an OOP language. In this course, we'll work on demystifying OOP and how to code in an OO fashion. We'll look at how JavaScript's functions are first class objects, and how that gives us the ability to use callbacks and function expressions. We'll also explore the extremely important concept of execution context, dealing with context loss, and how to bind functions to specific context objects. We'll cover the cornerstone concepts of OOP as they apply to JavaScript, namely prototypal inheritance, encapsulation, and polymorphism. You'll be challenged to debug and design several non-trivial OO programs using Node.js. After this course, you should know and understand objects, properties, methods, prototypal inheritance, factory functions, constructors, ES6 classes, and the OLOO pattern, as well as many other basic OO concepts.
Course No. | Name |
---|---|
JS109d | Assessment: Programming Foundations with JavaScript |
OR | |
JS119 | Assessment: Programming Foundations with JavaScript: Intermediate |