iT邦幫忙

ood相關文章
共有 14 則文章
鐵人賽 自我挑戰組 DAY 7

技術 【從工程師升級成為資深工程師的那檔事 Day7】淺談 OOA與 OOD

程式的撰寫有很多種方式 OOP、FP、AOP、COP...等(之後在專門做一期為大家解說),不過這個系列還是主要專注在物件導向程式設計(OOP)上面跟大家分享。...

鐵人賽 自我挑戰組 DAY 3

技術 Day3 CH1物件導向的設計?(下)

昨天,我們對於物件導向設計有初步了解後,今天,我們接續來看看物件設計導向的原則。 物件導向設計原則 說到物件導向設計原則,就不得不提 SOLID 以及 DRY...

鐵人賽 自我挑戰組 DAY 12

技術 Day12 CH6 藉由繼承取得行為(上)

設計良好的應用程式由可重複使用的程式碼所構成。 在物件導向程式設計中,「可重複」就是倚賴繼承的方式來實現整個應用程式的運作,繼承是一種程式碼共用技巧,通常內...

鐵人賽 自我挑戰組 DAY 14

技術 Day14 CH7使用模組共用角色行爲(上)

理解角色 有些問題需要在其他不相關的物件之間共用行為。這種共同行為對類別來說是正確的 ,它是物件所扮演的角色。 在設計物件導向程式時,有些問題需要多個不相關的物...

鐵人賽 自我挑戰組 DAY 6

技術 Day6 CH3 管理依賴關係(上)

關於物件與依賴 如果物件依賴於另一個物件,那麼當其中一個物件有所變化時另一個可能也會被迫發生變化。依賴關係會造成耦合,兩個物件耦合得越緊密,它們的行爲就越像一個...

鐵人賽 自我挑戰組 DAY 10

技術 Day10 CH5 使用鴨子類型技巧降低成本(上)

今天要來瞭解另一種介面,有別於第4章所提及的「介面」:存在於類別裡,並且由其方法所組成。另一種介面是指跨越多個類別,並獨立於單一類別的「介面」,介面代表的是一組...

鐵人賽 自我挑戰組 DAY 8

技術 Day8 CH4 建立靈活的介面(上)

來到了第四章(快過半了,加油!),今天我們要進入到介面的世界,介面到底扮演什麼樣的角色?物件之間又是如何藉由介面去溝通呢?根據前三章所學,我們可以先歸納出三個要...

鐵人賽 自我挑戰組 DAY 4

技術 Day4 CH2 設計具有單一職責的類別(上)

在上一章我們提到了一個基於類別的物件導向語言,物件之間通過訊息傳送來呼叫彼此的行為,物件導向系統的基礎是訊息(message ),但最明顯的組織結構則是類別(c...

鐵人賽 自我挑戰組 DAY 9

技術 Day9 CH4 建立靈活的介面(下)

今天我們要透過一個工具來協助我們設計介面,讓所有物件都能依賴公共介面來傳遞訊息。 找出公共介面 實例演練 假設現在有一間自行車公司,提供兩種服務內容,公路和山地...

鐵人賽 自我挑戰組 DAY 15

技術 Day15 CH7使用模組共用角色行爲(下)

昨天,我們認識了角色,鴨子類別是一種 角色 ,能夠表現共同行為的角色都算是鴨子類別。再來,我們可以定義一組獨立於類別的方法,並且可以被其他物件使用,稱為 模組...

鐵人賽 自我挑戰組 DAY 13

技術 Day13 CH6 藉由繼承取得行為(下)

找出抽象類別 建立抽象父類別 Bicycle是MountainBike和RoadBike的父類別,Bicycle包含共同的行為,而MountainBike和Ro...

鐵人賽 自我挑戰組 DAY 5

技術 Day5 CH2 設計具有單一職責的類別 (下)

瞭解單一職責的內容後,我們可以進一步修正,讓程式碼的調整彈性更高、更易於修改,書中提及兩種修正方向:1.依賴行為而非資料2.全面實施單一職責 依賴行為而非資料...

鐵人賽 Python DAY 10
Python 錦囊密技 系列 第 10

技術 【Python錦囊㊙️技10】OOA、OOD and OOP

前言 雖然,物件導向程式設計(Object-oriented programming, OOP)已是老生常談,網路上有太多的資源可參考,不過,因為實在太重要了,...

鐵人賽 自我挑戰組 DAY 16

技術 Day16 CH8組合物件(上)

組合(composition) 是指將不同的小部分結合成一個複雜的整體,整體也僅是一部分,並非代表全部,以音樂作為比喻,音樂是由音符組合而成,但音樂不僅是由音符...