iT邦幫忙

2023 iThome 鐵人賽

DAY 6
0
自我挑戰組

自我挑戰Ruby系列 第 6

Day 6 - 物件導向概念

  • 分享至 

  • xImage
  •  

何謂物件導向程式設計

物件導向程式設計(Object-oriented programming),縮寫為OOP。

維基百科定義如下:(https://zh.wikipedia.org/zh-tw/面向对象程序设计)

它將物件作為程式的基本單元,將程式和資料封裝其中,以提高軟體的重用性、靈活性和擴充性,

物件裡的程式可以訪問及經常修改物件相關連的資料。

但對於一個初學者的我,看完後也是有看沒有懂。

其實「物件」在我們的生活息息相關,因為我們生活的週遭早就無時無刻都是「物件導向」了。

例如:我現在站在廚房炒菜。

瓦斯爐、鍋子、鏟子、青菜…等都是個物件,就連「我」都是個物件,

而這個例子中,就是其他物件和「我」這個物件,彼此互相進行互動的過程。

然而,物件導向程式設計就是將程式語言內的東西均以「物件」的形式呈現,

在程式中,物件和物件之間互相有區別,但又以程式碼的方式互相應用。

物件導向三大特性

封裝性 - 被外界使用或受內部保護,細分來說分成以下三種:

  • public:公用等級。
  • private:私用等級。
  • protected:保護等級。

繼承性 - 為達成重複使用的目的

多型性 - 可以藉由很多方法達到效果

資料型態

一般來說,資料會儲存於記憶體中,當資料型態有所不相同的時候,

在儲存時所需要的容量也有所不同,不同的資料也會給不盡相同的空間大小來儲存,所以形成資料型態的意義。

然而在Ruby中,Ruby是物件導向的語言,所以Ruby中的資料型態都是物件。

Day 6 結語

在Ruby的世界,就算看起來是一個數字,但在這世界會是以一個物件來呈現,

或許對於我們以往對資料的概念有所不同。但使用物件導向讓有些東西重複使用性較大,

減少重複的程式碼,亦可以降低複雜的程度。


上一篇
Day 5 - 註解
下一篇
Day 7 - 變數定義
系列文
自我挑戰Ruby30
圖片
  直播研討會
圖片
{{ item.channelVendor }} {{ item.webinarstarted }} |
{{ formatDate(item.duration) }}
直播中

尚未有邦友留言

立即登入留言