Re: [請益] 我這樣解釋OOP對嗎?

看板 Soft_Job
作者 xxxorc ()
時間 2017-11-16 15:30:33
留言 19則留言 (6推 0噓 13→)

想請問各位工程師在使用別人寫好的套件時 會直接使用繼承來複用套件中的 class ,還是會封裝一層當作黑箱來用呢 --
※ 批踢踢實業坊(ptt.cc), 來自: 60.251.70.124
※ 文章網址: https://www.ptt.cc/bbs/Soft_Job/M.1510817436.A.74F.html

loveflames: 繼承? 不先選擇組合嗎 11/16 15:38

xxxorc: 用組合的話 如果命名很類似怎麼辦 11/16 15:39

legendmtg: 別人寫的東西不見得有為了要被繼承而設計 11/16 15:42

legendmtg: 隨便繼承下去不小心就炸了 11/16 15:42

legendmtg: 命名類似有namespace啊 11/16 15:43

ripple0129: Composition over inheritance 11/16 18:52

sunsamy: It's right: Composition over inheritance. 11/16 20:54

sunsamy: Because doesn't have overriding or overloading to 11/16 20:55

sunsamy: confuse relation. 11/16 20:56

loveflames: 如果非要繼承,繼承抽象比繼承實作好 11/16 20:56

sunsamy: 繼承抽象比繼承實作好: 因為解耦掉底層的實作 11/16 21:04

sunsamy: 在runtime時才對應實作(i.e. Polymorphism、泛形、Templa 11/16 21:04

sunsamy: te) 11/16 21:05

sunsamy: 如:linux的HAL層解耦掉底層的IC的PolicyBased Design Pat 11/16 21:05

sunsamy: tern 11/16 21:05

loveflames: 進一步抽象可使用bridge,將介面與實作解耦 11/16 21:30

Killercat: 通常來講組合比繼承好,不過要看對方介面怎麼設計 11/22 15:13

Killercat: 至於介面實作是更好 但是很吃設計 包含自己跟對方 11/22 15:14

bitcch: 我會用封裝 繼承的耦合太大了 11/28 15:15

您可能感興趣