Advanced JavaScript Course
The Purpose of this Advanced JavaScript Course is to prepare students to cover
the latest JavaScript standard ES 6 (ES 2015) and those JavaScript topics, which
are required before starting to learn, React, React Native, Angular 4 and Redux. It
covers Functional Programming, Object-Oriented programming, and
Asynchronous and Reactive Programming.
The prerequisite for this course is that the students have covered the book The
Smarter Way to Learn JavaScript by Mark Mayers. The duration of this course
will be two months or 8 weeks.
Week Topic Learning Material
1 Think functionally Chapter 1 and topics 2.1, and 2.2 of
Functional Programming in JavaScript
by Luis Atencio
https://www.slideshare.net/LuisAtenci
o3/functional-programming-in-
javascript-by-luis-atencio
2 Functions as First Class Chapter 3 of Secrets of the JavaScript
Objects, Callback Functions, Ninja, 2nd Edition
Arrow Functions, Rest
parameters and Default Topic 2.3 of Functional Programming in
Parameters JavaScript by Luis Atencio
This function parameter, Topics 4.1.2, 4.2.1, 4.2.2, and 4.3 of
invocation as a function, Secrets of the JavaScript Ninja, 2nd
invocation as a method and Edition
function contexts
3 Closures, using closures with Topics 5.1, 5.2.2, 5.5.1, 5.5.2, and 5.6.3
callbacks, types of variables, of Secrets of the JavaScript Ninja, 2nd
and scopes Edition
Topic 2.4 of Functional Programming in
JavaScript by Luis Atencio
4 Pure Functions, Functional https://medium.com/javascript-
Programming, Maps, scene/master-the-javascript-interview-
Searching Arrays, and Reduce what-is-a-pure-function-d1c076bec976
https://medium.com/javascript-
scene/master-the-javascript-interview-
what-is-functional-programming-
7f218c68b3a0
Topics 9.2, SEARCHING ARRAYS (pages
237-240) AGGREGATING ARRAY
ITEMS (pages 241-242) of Secrets of
the JavaScript Ninja, 2nd Edition
Topic 3.3 of Functional Programming in
JavaScript by Luis Atencio
5 Prototypes, using classes in ES Topics 7.1, 7.3.2, 7.4, and 8.1.1 of
6, and defining getters and Secrets of the JavaScript Ninja, 2nd
setters Edition and
https://medium.com/javascript-
scene/master-the-javascript-interview-
what-s-the-difference-between-class-
prototypal-inheritance-e4cd0a7562e9
6 Modularizing JavaScript Topics 11.1.2, and 11.2 of Secrets of the
applications with AMD, JavaScript Ninja, 2nd Edition
CommonJS, and ES 6
7 Challenges of Working with Topics 6.3 and 6.4.1 of Secrets of the
Asynchronous code, working JavaScript Ninja, 2nd Edition
with Promises, Async
functions, and Introducing Topics 8.2 and 8.4 of Functional
Reactive Programming Programming in JavaScript by Luis
Atencio
8 Reactive Programming using Chapters 1, 2, 3, and 4 of RxJS in Action
RxJS by Paul Daniels and Luis Atencio
Advanced JavaScript Test Covering all the topics covered above