golang不是物件導向的,go是過程導向的語言,也不是函數式程式設計範式,其表現在缺少箭頭函數,需要明確宣告lambda,而且不講究純函數和immutable。
golang不是物件導向的,go是物件導向的語言
沒有class
,一般oop
特徵明顯的語言會定義出class關鍵字,而且很多會強制要求你把程式碼全部塞入class裡面去,以實現萬事萬物都是對象,甚至包括main函數,都做成static放進去
也不是函數式程式設計範式,其表現在缺少箭頭函數,需要明確宣告lambda,而且不講究純函數和immutable
go的程式碼不講究封裝和整理,很多原始碼都是幾千行程式碼待在裡面,表現出了典型的過程式語言的基本特徵
多數腳本語言,c等都是過程式的,go的語言特性跟這些語言很相似,只是增加了gc,goroitine等常用工具而已,作者本身就對oop,fp等缺乏了解,只是根據c的經驗,整理出了一些常用的工具,然後將其放到語言的runtime中去罷了
你說可以做出類似效果,那就猶如java你全部用static也能寫得跟c類似一樣,那並不是一個語言範式的基本特徵
相關學習推薦:Go語言教學
以上是golang是物件導向嗎?的詳細內容。更多資訊請關注PHP中文網其他相關文章!