發表文章

目前顯示的是有「開發技術類-FP-基本觀念」標籤的文章

自救必看三大準則

Functional Programming 基本觀念

Functional Programming 是 Rx 最重要的觀念之一,基本上只要學會 FP 要上手 Rx 就不難了!Functional Programming 可以說是近年來的顯學,各種新的函式編程語言推出之外,其他舊有的語言也都在新版中加強對 FP 的支援! ============================================ 什麼是 Functional Programming ? Functional Programming 是一種編程範式(programming paradigm),就像 Object-oriented Programming(OOP)一樣,就是一種寫程式的方法論,這些方法論告訴我們如何思考及解決問題。 簡單說 Functional Programming 核心思想就是做運算處理,並用 function 來思考問題,例如像以下的算數運算式: ( 5 + 6 ) - 1 * 3 我們可以寫成 const add = ( a, b ) => a + b const mul = ( a, b ) => a * b const sub = ( a, b ) => a - b sub(add( 5 , 6 ), mul( 1 , 3 )) 我們把每個運算包成一個個不同的 function,並用這些 function 組合出我們要的結果,這就是最簡單的 Functional Programming。 Functional Programming 基本要件 跟 OOP 一樣不是所有的語言都支持 FP,要能夠支持 FP 的語言至少需要符合 函式為一等公民 的特性。 函式為一等公民 (First Class) 一等公民就是指跟其他資料型別具有同等地位,也就是說函式能夠被賦值給變數,函式也能夠被當作參數傳入另一個函式,也可當作一個函式的回傳值 函式能夠被賦值給變數 var hello = function ( ) {} 函式能被當作參數傳入 fetch( 'www.google.com' ) .then( function ( response ) {}) // 匿名 function 被傳入 then() 函式能...