Class Central is learner-supported. When you buy through links on our site, we may earn an affiliate commission.

Udacity

Object-Oriented JavaScript

Hack Reactor via Udacity

Overview

Have you been dabbling with JavaScript but find your files keep turning into a mess of spaghetti code? Do you find yourself copying and pasting lines of code over and over throughout your application? Surely there’s a better way, right?

Yes, there is a better way -- object-oriented programming will allow you to build websites using reusable blocks of code known as libraries, similar to using bricks to build a house. This course is designed to teach web developers how to utilize the various object-oriented programming features within JavaScript, and more importantly, how to write reusable and maintainable libraries that will make your life easier.



Why Take This Course?

As a Front-End Web Developer, JavaScript is one of the most important languages in your toolbox. A strong foundation in the language’s features empowers you to write efficient and performant web applications. In this course you’ll explore a variety of ways to write object-oriented code in JavaScript.

You’ll build a variety of JavaScript objects and explore how their different inheritance models affect your code’s execution and in-memory model. You’ll use these features to write memory efficient code and seek simplicity and modularity in your own code.

Syllabus

Lesson 1: Scopes and Closures

We’ll start by discussing JavaScript’s functional variable scoping features, including lexical scopes (variable availability as you write your code) and dynamics scopes (variable availability as your code actively runs). We’ll then discuss closures, an often misunderstood but incredibly useful feature available in only a handful of languages, including JavaScript.

Lesson 2: The Keyword "this"

You’ll start your dive into JavaScript object-oriented features by first discovering the parameter "this". You’ll learn how the value of "this" is determined within various code structures and why it might be a lot easier to think of "this" as a parameter rather than a keyword.

Lesson 3: Prototype Delegation

You’re probably using one of JavaScript’s inheritance models already: prototype delegation! In this lesson you’ll learn more about this unique feature of JavaScript, how JavaScript uses this feature internally and how you can take advantage of it to maximize your application’s memory footprint.

Lesson 4: Code Reuse

There are numerous ways to write concise, maintainable and reusable code in JavaScript and you’ll practice a number of them in this lesson. We’ll start writing a library using basic functions and learn the decorator pattern. Then, we’ll refactor this library into the functional, prototypal and pseudoclassical inheritance models. Finally, we’ll explore sub-classing -- coding objects that directly inherit from objects we’ve previously defined.

Taught by

Marcus Phillips and Michael Wales

Reviews

4.6 rating, based on 10 Class Central reviews

Start your review of Object-Oriented JavaScript

  • Profile image for Chris Duncan
    Chris Duncan
  • - Very good course for intermediate javascript developers.
    - Have some basics knowledge of javascript before starting this course.
    - Well organised chapters.
  • Excellent class. The most confusing parts of JavaScript are taught so clearly. The examples given are so simple yet so informative.
  • Shashank Sharma
  • QZ
  • Daniel Campos

Never Stop Learning.

Get personalized course recommendations, track subjects and courses with reminders, and more.

Someone learning on their laptop while sitting on the floor.