Prototypes, closures, promises, async/await, IIFEs, and many other concepts holding you back
What you'll learn-and how you can apply it
- Write elegant JS code with ES6 syntax for use in web apps, node backend, or lambdas.
- Advanced concepts such as promises, async/await, apply/call/bind and frequently used design patterns for writing performant, bug-free, and maintainable code.
This training course is for you because...
- If you would like to follow along in real-time, have your favorite IDE, browser, and terminal running.
- Alternatively, you can take notes during the session and try the examples at a later time (a link to the code and slides will be posted).
About your instructor
Sahil is a Software Engineer with 10+ years of experience in developing user facing apps and websites. He is currently part of the front-end team at OANDA and has previously worked at Expedia where he was part of the group responsible for revamping the mobile web experience. A multipotentialite at heart, Sahil loves to learn and equally loves to share that knowledge with others. He takes pride in breaking down complicated concepts and making them easy to understand with analogies and diagrams.
The timeframes are only estimates and may vary according to how the class is progressing
Segment 1: Overview Length (5 min)
- Instructor will give an overview of the training and the topics covered
Segment 2: ES6 Syntax Refresher Length (20 min)
- Arrow functions
- Default params
- Template literals
- Implicit returns
- Spread syntax
- Array methods
Segment 3: Lexical Context, Closure and Hoisting Length (20 min)
- Functions and variable context/scope
- Functions invocation and execution stack
- Hoisting tips and tricks
- Difference between a function and an object
- Classes old way vs. new (much easier) way
- Inheritance and why bother
- Break: 5 min
Segment 5: Apply, Call and Bind Length (15 min)
- apply/call/bind what and why
- Alternative to apply/call/bind
Segment 6: Design Patterns Length (30 min)
- What are design patterns and why they are important
- Design patterns you were using but didn’t realize
- Introduction to popular design patterns such as - Module, Observer and Singleton
Segment 7: Asynchronous Programming Length (30 min)
- Callbacks - how they work and when they start to get messy
- Promises to the rescue - reject/resolve, chaining, promise.all and error handling
- Async/Await - not just syntactic sugar
- How to pick one between callbacks, promises and async/await
- Break: 5 min
Segment 8: Developing a Library Length (30 min)
- Why develop a library
- How to structure the code
- Making it work
- Publish to npm