「請問你知道什麼是 FP 嗎?」使用 JavaScript 這門程式語言開發網頁的工程師,或多或少曾經被你的面試官這麼問過吧。
然而真的去 Google 這個關鍵字時,會發現大部分的文章充滿「 Ramda 演算、純函式、高階函式、柯理化」等關鍵字、艱深且又學術的內容。
還沒開始研究,但已經感到壓力山大⋯⋯
《致 JavaScript 開發者的 Functional Programming 新手指南》,紀錄了一個新手開發者從零開始學習 FP 的學習脈絡,希望大家可以透過更簡單的方式了解這個設計模式,希望大家可以透過更簡單的方式了解這個設計模式,讓自己的程式碼更加脈絡化與系統化。
嗨,大家好!歡迎來到「致 JavaScript 開發者的 Functional Programming 指南」! 在切入到正題前,首先想要跟大家說說自己與 Ja...
在前一章節中,我們曾經聊到初級前端工程師在撰寫或是學習 JavaScript 會遇到的元件封裝問題,但除了元件的封裝外,相信大家也會有以下疑惑: 要怎麼預防臭...
在前一章節中,我們花了很多的篇幅來聊 FP 這個程式設計的演進史,從中不難看出由於 JavaScript 的基因設定本來就會帶有多設計典範(Multi-para...
在了解 FP 與 JavaScript 的歷史之後,有沒有覺得:「咦?設計模式其實也沒有離自己那麼遠嘛!」在繼續深入了解 FP 之前,讓我們來看看 JavaSc...
在上個章節,我們聊到 JavaScript 其實是一種非常容易、不小心就變動到變數值的一種語言,這其實與它底層運作的記憶體位置有關,這說起來有點抽象,我們先來看...
說到 Functional Programming,其實我們不難發現這個設計模式基本上就是以「函式」作為主軸。 函式在 FP 中可以說是核心概念,就像先前所提到...
相信各位 JavaScript 開發者,對表達式(Expression)與陳述式(statement)的概念不陌生,這兩個概念可以說是初階前端工程師必考的面試題...
截至這個章節,我們大致上把要應用 FP 所需要、也最基礎的 JavaScript 概念了解過一遍了,當然在 後的章節中,我們還會把先前所提到的概念往更進階的延伸...
在一開始的簡介中我們曾經聊過構成 FP 的幾個要素,其中一點是,在 FP 這個設計典範中我們只使用 Immutable Data 來進行資料的處理。 為什麼「只...
在討論如何使用 Immutable 的方式來操作物件的狀態前,讓我們來思考另外一個狀況:還記得前端常常考的面試題淺拷貝、深拷貝嗎? 在這邊我們不會以深拷貝、淺拷...