if you get stuck or miss class
Module | Mac π | Duration | Window πΌοΈ | Duration |
---|---|---|---|---|
01 | Video πΊ | 00:49:20 β²οΈ | Video πΊ | 00:49:20 β²οΈ |
02 | Video πΊ | 00:55:56 β²οΈ | Video πΊ | 00:55:56 β²οΈ |
03 | Video πΊ | 00:35:50 β²οΈ | Video πΊ | 00:35:50 β²οΈ |
04 | Video πΊ | 00:41:45 β²οΈ | Video πΊ | 00:41:45 β²οΈ |
Module | Mac π | Duration | Window πΌοΈ | Duration |
---|---|---|---|---|
12 | Video πΊ | 00:41:45 β²οΈ | Video πΊ | 00:41:35 β²οΈ |
In this module, we’ll discuss object-oriented programming in JavaScript as we learn about constructors and the prototype chain. Constructors are special functions that help us create objects of similar types. Prototypes are JavaScriptβs built-in system that allows objects to inherit features from other objects.
On the Job: Prototypes are generally considered an advanced JavaScript concept. Mastering this concept will make you a more competitive JavaScript developer!
We’ll also cover test-driven development (TDD), which involves writing tests for application features before writing any code. Then we write only the minimum amount of code needed to make the tests pass—and repeat this process until the application is complete. Among its many benefits, test-driven development helps us write more understandable and maintainable code.
We’ll conclude this unit with an introduction to modern class syntax and inheritance. ES6 introduced a class
keyword, which allows us to create objects that use class structures like those found in other OOP programming languages. Essentially, classes are just constructor functions with more intuitive syntax. They allow us to implement more advanced OOP patterns, like inheritance, without needing to understand every aspect of JavaScript’s prototypal inheritance system.
The following topics will be covered in this unit:
In the challenge for this module, students will create an application that generates HTML files using input from a command-line interface. The application will gather information about their team or organization, and they’ll be able to add as many team members as they want.