Beginning Object-Oriented Programming with JavaScript


Ota yhteyttä

Voit olla meihin yhteydessä ja tiedustella koulutuksistamme täydentämällä yhteystietosi ja koulutuksen nimen oheen.

Tilaa uutiskirje

Haluan tarjouksia ja tietoa koulutuksista sähköpostiini.

Tietosuojalauseke ja yksityisyys

Annan Insoft Services Ltd:lle oikeuden olla minuun yhteydessä. Annan Insoft Servicelle oikeuden käsitellä, kerätä ja tallentaa tietojani. Kaikki annetut tiedot käsitellään tietoturvallisesti tietosuojalausekkeen mukaisesti.

Tulevat päivämäärät

Oct 17 - Oct 19, 2022
09:00 - 17:00

Nov 14 - Nov 16, 2022
09:00 - 17:00

Dec 12 - Dec 14, 2022
09:00 - 17:00

Jan 9 - Jan 11, 2023
09:00 - 17:00

Feb 6 - Feb 8, 2023
09:00 - 17:00

Mar 6 - Mar 8, 2023
09:00 - 17:00

Beginning Object-Oriented Programming with JavaScript
3 days  (Instructor Led Online)  |  Web Development

Course Details


The purpose of this Beginning Object-Oriented Programming with JavaScript course is to cover all the new object-oriented features introduced in ECMAScript 2015 and show how to build large-scale web apps that promote scalability, maintainability, and reusability. It is ideal for development teams that are thinking of using JavaScript for full-stack web development so that they only need to worry about one language across the entire stack.

JavaScript is one of the most widely used programming languages in the world. Born as a simple glue between the user and HTML, it has evolved over the years and has acquired an increasingly important role in modern software development. Today, its scope is no longer just the web browser. Now, it also resides on the server, desktop PCs, mobile devices, and even embedded devices.

JavaScript has now become a language to create complex applications. Beginning Object-Oriented Programming with JavaScript course explains how to write robust and efficient code with JavaScript to create scalable and maintainable applications.


See other courses available


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


This course is for existing developers who are new to OOP in JavaScript. They will be looking to build their understanding of modern web development, using the features from the latest changes to the ECMAScript specification.



We specifically focus on object-oriented programming with JS in this course, so prior understanding of basic syntax is assumed.



For successful completion of this course, students will require the computer systems with the following:

  • Processor: 1.8 GHz or higher Pentium 4 (or equivalent)
  • Memory: 2 GB RAM
  • Hard disk: 10 GB
  • Projector
  • Internet connection



Most of the code provided in this course is not bound to a specific JavaScript runtime environment, so it could run in any JavaScript environment. For this course we will be using the following environment:

  • Chrome DevTools
  • Atom


Installation and Setup