Computer Science
2. Callbacks & Higher Order functions
- Sumber: Closure, Async, and OOP: The Hard Parts of JavaScript | Frontend Masters
- Jumlah video: 7
- Jumlah kartu anki: 36 (Akumulasi Principles of Javascript, Closure, dan Callback & Higher Order Functions)
Pada chapter ini, Will Sentance, utamanya, mengenalkan Higher Order Functions dan Callback Functions.
Chapter dimulai secara to-the-point untuk membahas topik intinya — Higher Order Function dan Callback, penjelasan yang sangat lugas karena disertai contoh kasus dan visualisasi dengan papan tulis. Instruktor juga mengenalkan beberapa contoh built-in function yang menggunakan konsep Higher Order Function, dampak positifnya, rekayasa array dan pembaruan di ES2023, dan termasuk arrow function.
Ada 7 video di chapter ini, berikut hasil distilasi masing-masingnya:
Callback & Higher Order Functions
Menyebutkan kalau fungsi seperti map, filter, reduce memanfaatkan konsep Higher Order Functions. Menjelaskan kalau konsep Higher Order Functions membuat kode Javascript lebih deklaratif dan mudah dibaca. Mengenalkan prinsip dasar dari konsep Higher Order Function, yaitu Generalizing Functions.
Copy and Change Array
Disini Instruktor mengilustrasikan dengan sangat jelas bagaimana cara kerja Higher Order Function dengan menunjukkan secara langsung kasus nyata dan cara kerjanya.
Pass a Function as an Argument
Video ini lanjutan dari video sebelumnya, Instruktor masih lanjut mengilustrasikan bagaimana Callback Function punya peran pada Higher Order Function.
Declarative & Readable Code
Instruktor membedah alasan kenapa fungsi bisa diperlakukan dengan cukup advance di Javascript — itu karena fungsi adalah first class object di Javascript. Kemudian menunjukkan dampak positif adanya Higher Order Function di Javascript — menghasilkan kode yang deklaratif dan mendukung prinsip DRY (Don’t Repeat Yourself).
Arrow Functions
Mengenalkan cara lebih ringkas dalam mendeklarasikan fungsi, yaitu dengan sintaksis arrow functions.
Non-mutating Array Methods
Menjelaskan kalau array method seperti .sort(), .reverse(), dan .splice() itu memutasi array secara langsung di memori — tidak membuat salinan untuk outputnya. Kemudian mengenalkan fitur baru dari EES2023 yaitu .toSorted(), .toReversed(), dan .toSpliced() yang membuat salinan terlebih dahulu untuk pekerjaannya tanpa langsung memutasi array aslinya.
Pair Programming
Mengenalkan konsep Pair Programming, dimana itu adalah aktivitas kolaborasi untuk dua orang — yang satu jadi researcher dan yang lain jadi vibe coder.