What you'll learn
- Master ES6 new syntaxes: let, map, set, Symbol, iterator, generator, reflect, promise, proxy, etc.
- Destructuring assignment
- ES6 Module and CommonJS
- Constructors and classes
- Real-life creative ways of designing constructors and inheritance programs
- The strict mode
- Tail call optimization
- Deep and shallow object copy
- Two-way data binding
- Data structure
- Sorting algorithms
About this course:
What you will learn:
You will learn ES6 new features like destructuring assignment, async/await, reflect, proxy, symbol, iterator, generator, etc.
To further boost your coding skills, you will also learn 8 sorting algorithms: bubble sorting, cocktail sorting, quick sorting, counting sorting, insertion sorting, bucket sorting, selection sorting and heap sorting.
You will also develop a proper understanding of linear and non-linear data structures, including array, linked list, binary search tree, max heap, min heap, etc.
What you will achieve:
Throughout the course, you will also learn how to answer questions that are frequently seen in job interviews.
Lecture 1, 2: Everything you need to know about var and let [FREE Preview]
Lecture 6: Priority comparison: variable name, function name and argument name
Lecture 9, 10: Higher-order function and currying
Lecture 11, 12: Closure and its real-life application [FREE Preview]
Lecture 85: two-way data binding
Lecture 103: Data structure: Queue, Stack and Heap [FREE Preview]
Lecture 104: Thread and Process, sync and async, blocking and non-blocking
Lecture 105: Recursion and stack overflow
Lecture 107: Event loop
Lecture 108: Interview challenges: predict the result of the following programs using event loop, marco and micro task queue
Lecture 110, 111: tail call optimization
Lecture 114, 115, 116, 117: creative inheritance program design
Lecture 120, 121: 'Deep' copy and assign objects
Lecture 124, 125, 126, 127: Basic computing knowledge: bit, byte, memory address, byte addressing, bit width, encoding
Lecture 142, 153, 144: Type coercion, wrapper object, explicit and implicit typecasting
Lecture 151-163: Bubble sorting
Lecture 164, 165: Cocktail sorting
Lecture 166, 167: Quick sorting
Lecture 168, 169, 170, 171: Counting sorting
Lecture 172, 173: Insertion sorting
Lecture 174. 175: Bucket sorting
Lecture 176, 177: Selection sorting
Lecture 178: Time and space complexity and the big O notation
Lecture 179, 180: Linear and non-linear data structures: array, linked list, binary search tree, max heap, min heap, etc.
Lecture 181, 182, 183, 184: binary heap and heap sorting
Lecture 185, 186, 187: the Observer pattern and two-way data binding using the Observer pattern
Please Note: This is NOT a beginner course and does not cover JS DOM and jQuery.
Who this course is for:
- Developers who need to improve the efficiency and quality of their codes
Stop hiding unwanted things in mist (Jordan Peterson, Beyond Order). Shake off the dead weight that slows you down.
Your time is limited, and you have other things going on in your life. More likely than not, you will only get busier as time goes by.
New technologies show up everyday. Existing ones keep upgrading, adopting new features, switching to new syntaxes.
For you to stay relevant, you have to keep learning.
Most importantly, you must do so quickly and easily, without spending too much time or making too much effort. Otherwise, you won't keep up with the rapid tech progress, and your life as a programmer would be too painful as you are constantly struggling with learning something new.
It seems that you are caught in a dilemma where there is a lot to learn but not enough time to do it.
The programming world emphasizes reusing codes. You, as a programmer, must "reuse" learning experience. The experience of learning one programming technology should enable you to pick up another one with less time and effort.
In order to do so, you must disperse the mist and remove all the "unwanted things" you hide there.
The "unwanted things hidden in the mist" are the insufficient understanding of a coding language or framework. You have never dug deep enough, all you have done is copying what the manual says. When things get complicated, you won't be able to come up with a solution.