iT邦幫忙

2023 iThome 鐵人賽

DAY 19
0

在程式學到一定程度之後,一定會學到一個東西,那就是OOP物件導向程式設計。

但後來可能會在聽到另一個東西FP函數程式設計,他們兩個到底有什麼愛恨情仇相愛相殺呢,讓我們繼續看下去。

其實OOP跟FP都是寫程式上,幫助思考的模式,兩個對事情的解釋完全不一樣。但通常OOP會比較簡單而且很明顯快速的提升對製作複雜專案的能力,所以一般都是會先學習到OOP,有些甚至根本沒有接觸過FP。

所以讓我們來簡單介紹一下吧!

OOP

  1. 把各種東西想像成物件,物件可以「主動」去做事,也可以被動被做事
  2. 封裝,外面改變不到東西內部,要改變東西內部只能使用物件的method
  3. 類別可以繼承自別的類別

FP

  1. 以函式為主,資料丟進函式,得到回傳值
  2. 函式也是一等公民,函式本身也可以被當成一個值做傳遞
  3. 每次的執行結果都應該一樣,也不該讀取跟修改外部的東西
  4. 所有東西都是「被動的」,除了把檔案存起來,不應該有數值的改變
  5. 只需要給我處理後的結果,不需要過問結果如何而來

結語

基本上來說,其實我們在寫OOP的時候,有些部分也是會去使用FP的想法。

這些都是幫助我們可以把程式寫的更節儉漂亮的準則,可以多多參考利用喔!

本期meme

https://ithelp.ithome.com.tw/upload/images/20231003/201335742zedyppPZN.png


上一篇
Day18 敏捷開發
下一篇
Day20 開源節流
系列文
寫程式的那些宗教戰爭30
圖片
  直播研討會
圖片
{{ item.channelVendor }} {{ item.webinarstarted }} |
{{ formatDate(item.duration) }}
直播中

尚未有邦友留言

立即登入留言