# Lesson Plan JavaScript3 Week 3 ## Agenda The purpose of this class is to introduce to the student: - The purpose and use of `async/await` - What is `Object-Oriented Programming` (OOP) is and how it's applied to JavaScript - How to use ES6 `classes` ## Core concepts FIRST HALF (12.00 - 13.30) ## 1. async/await ### Explanation - It's an upgrade to `Promises` - Makes writing an asynchronous function more readable ### Example ### Excercise ### Essence ## 2.Object-Oriented Programming (OOP) ### Explanation - It's a programming style; it defines how to organise your application - In OOP each program would be split up into self-contained objects, that then communicate with each other - Each object represents a part of the application: it contains its own data and logic - OOP is meant to make thinking about your applications easier, by having each object represent a real-life entity (i.e. Users, Profiles, Products) ### Example ### Excercise ### Essence SECOND HALF (14.00 - 16.00) ## 3.ES6 classes ### Explanation - `classes` are a modern way of creating objects in JavaScript - It's `syntactical sugar` for object constructors - A `class` is a blueprint of an object, that can be instantiated ### Example ### Excercise ### Essence