Course Overview
This two (2) day instructor-led course provides students the ability to:
- Define objects
- Understand essential OOP principles
- Work with inheritance
- Understand advanced patterns for object creation
- Manage dynamic typing
- Understand duck typing and polymorphism
What’s Included
- Class exercises in addition to training instruction
- Courseware books, notepads, pens, highlighters and other materials
- Full breakfast with variety of bagels, fruits, yogurt, doughnuts and juice
- Course retake option
- Tea, coffee, and soda available throughout the day
- Freshly baked cookies every afternoon – *only at participating locations
For group training options, call us at (240) 667-7757 or email promo@phoenixts.com.
Schedule
Currently, there are no public classes scheduled. Please contact a Phoenix TS Training Consultant to discuss hosting a private class at 240-667-7757.
![[image]](https://phoenixts.com/wp-content/themes/phoenixts-com/assets/images/temp/image-9@2x.jpg)
Not seeing a good fit?
Let us know. Our team of instructional designers, curriculum developers, and subject matter experts can create a custom course for you.
Learn more about custom training
Course Outline
Lesson 1: Diving into Objects and OOP Principles
- Creating and Managing Object Literals .
- Defining Object Constructors
- Using Object Prototypes
- Using Classes
- Beginning with Object-Oriented JavaScript
- Checking Abstraction and Modeling Support
- Analyzing OOP Principles Support in JavaScript
Lesson 2: Working with Encapsulation and Information Hiding
- Setting up Strategies for Encapsulation and Information Hiding
- Using the Meta-Closure Approach
- Using Property Descriptors
- Implementing Information Hiding in ES6 Classes
Lesson 3: Inheriting and Creating Mixins
- Implementing Objects, Inheritance, and Prototypes
- Using Class Inheritance
- Controlling Inheritance
- Implementing Multiple Inheritance
- Creating and Using Mixins
Lesson 4: Defining Contracts with Duck Typing
- Managing Dynamic Typing
- Defining Contracts and Interfaces
- Implementing Duck Typing
- Comparing Duck Typing and Polymorphism
Lesson 5: Advanced Object Creation
- Mastering Design Patterns, Object Creation, and Singletons
- Implementing an Object Factory
- Exploiting the Builder Pattern
Lesson 6: Working with Data
- Managing User Interfaces
- Implementing Presentation Patterns
- What is Data Binding?
- Implementing Data Binding
- Applying the Publish/Subscribe Pattern
Lesson 7: Asynchronous Programming and Promises
- Is JavaScript Asynchronous?
- Writing Asynchronous Code
- Introducing Promises
Lesson 8: Organizing Code
- Taking Control of the Global Scope
- Creating Namespaces
- Organizing Code with the Module Pattern
- Loading the Module
- Using the ECMAScript 2015 Modules