This program covers Javascript programming. It starts with language building blocks and introduces participants to some of advanced topics with target that they can write practically useful code using Javascript. Program assume no prior knowledge of Javascript. Teaching style is based on demo code and hands-on.
Audience
Program is primarily for developers who are starting with Javascript.
Prerequisites
Participant has beginner level knowledge of any other Object Oriented language like Java, C#, C++, Python etc.
Topics
Introduction
- Javascript and Usage
- Specs
- VS Code and Dev Tools
- Hello, World!
- Comments
- Statements and Expressions
- Execution Model
- Strict
- Variables
- Numbers, Strings
- Objects
- Arrays
- Type Conversion
- Operators
- Looping and Branching
- Functions
- Logging and Debugging
- Exceptions
- Modules
- Export and Import
- Dynamic Import
More
- Key methods
- Iterables
- Map
- Set
- Assignment
- Date and Time
- Json
Functions
- Recursion
- Spread
- Scope
- var vs let
- Global Object
- Named
- new Function
- Arrow Function
- Currying
- Scheduling call
- Decorators & Forwarding
- Call, Apply, Bind
Objects and Classes
- Getters and Setters
- Prototype
- Class and Inheritance
- Static, Private, Protected
- Extend Built-in
- Checking Class
Advanced
- Underscore library
- Keyword this
- WeakMap
- WeakSet
- Closure
- Property Flags
- Descriptors
- Mixins
- Generators
- Callback & Promise
- Chaining
- Exception with Promises
- Async/Await
- Async Iteration and Generations
- Proxy and Reflect
- Eval
- Event Loop
- Transpiling
- Garbage Collection
- Polyfills
Javascript in Browser
- Environment
- Scripts
- Specs
- DOM Tree
- Managing DOM
- Nodes, Attributes, Properties
- CSS
- Key API
- Events and Handlers
- Bubbling, Capturing, Delegation
- Events - Mouse etc, Forms, Page
- Custom Events
- Selection
- Ajax and Fetch
- Cookies
- Storage
- Files
More
- Intro to Animation
- Intro to WebSockets
- Intro to Web Components
- Intro to React
- Intro to NodeJS
- Intro to Testing with Mocha, Chai
- Intro to Mocking
- Intro to BDD
Exclusions
Advanced details
Anything not mentioned in Topics
Software Requirements
Visual Studio Code or any other IDE supporting Javascript
Node with Yarn
Internet Requirements
Good unrestricted internet connection is required.
Hardware Requirements
Laptop capable to run MS Office
Classroom Requirements
Projector with HDMI, White Board, Markers with Eraser
Online Requirements
Appropriate meeting software e.g. Zoom, MS Teams Please make sure that camera, speaker and mic are working
If you have any query, please contact now.