撰寫閱讀「Ruby 物件導向設計實踐」的重點和心得,紀錄自己對於此語言的熟悉程度與應用,加深對於物件導向語言的理解,藉此延伸出更多的思考與討論
什麼是型別(Type) 在程式語言中,type(類型)指的是變數或數據的分類或分類方式,它確定了數據的性質,包括它可以執行的操作,佔用的記憶體空間,以及對該數據...
設計良好的應用程式由可重複使用的程式碼所構成。 在物件導向程式設計中,「可重複」就是倚賴繼承的方式來實現整個應用程式的運作,繼承是一種程式碼共用技巧,通常內...
找出抽象類別 建立抽象父類別 Bicycle是MountainBike和RoadBike的父類別,Bicycle包含共同的行為,而MountainBike和Ro...
理解角色 有些問題需要在其他不相關的物件之間共用行為。這種共同行為對類別來說是正確的 ,它是物件所扮演的角色。 在設計物件導向程式時,有些問題需要多個不相關的物...
昨天,我們認識了角色,鴨子類別是一種 角色 ,能夠表現共同行為的角色都算是鴨子類別。再來,我們可以定義一組獨立於類別的方法,並且可以被其他物件使用,稱為 模組...
組合(composition) 是指將不同的小部分結合成一個複雜的整體,整體也僅是一部分,並非代表全部,以音樂作為比喻,音樂是由音符組合而成,但音樂不僅是由音符...
組合 Bicycle Bicycle有一個Parts,而Parts則有一個Part物件集合。 Parts是一個扮演Parts角色的類別,它實作spares...
談測試之前,我們必須先知道,撰寫可修改的程式碼實踐依賴於三項不同的技能: 必須瞭解物件導向設計了解如何設計良好的對象和類結構是至關重要的。合理的設計可以最小...
本章的測試都是使用MiniTest來撰寫,目前MiniTest可以在安裝了 Ruby 1.9及以上版本的任何地方執行。 至於筆者在工作上則是使用RSpec搭配C...
今天,要來說明鴨子類型的測試,選擇好測試案例後,我們就可以根據前面兩天的步驟來測試輸入及輸出訊息。 測試鴨子類型 測試角色 以第5章的程式碼為範例,程式碼包含了...