Re: 繼承和多重繼承
※ 引述《march20 ()》之銘言:
: ※ 引述《tinlans ( )》之銘言:
: : 其實我比較好奇的是,
: : 「交通工具」這種分類有什麼共通特性和介面值得你把它抽出來?
: : 要不要考慮拿掉這個 class?
: 我猜在他在"交通工具" 實作了某些 utility.
: 如果是這樣, 應該是把 "交通工具" 變成 pure interface,
: 然後把這些 utility function 提取到 TrafficUtil, MillageUtil 才對..
他講的水陸兩用車,
讓我覺得分類法應該是以功能做分類,
繼承樹應該建立在「移動方式」的行為上,
各種交通工具只是以合成或聚合的方式去使用這些行為物件,
這樣水陸兩用車就可以直接繼承交通工具 (如果真的有必要留交通工具的話)。
第二行到第四行簡單來說就是 strategy pattern。
--
Ling-hua Tseng (uranus@tinlans.org)
Department of Computer Science, National Tsing-Hua University
Interesting: C++, Compiler, PL/PD, OS, VM, Large-scale software design
Researching: Software pipelining for VLIW architectures
Homepage: https://www.tinlans.org
--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 118.160.105.128
推
07/17 00:18, , 1F
07/17 00:18, 1F
推
07/17 00:20, , 2F
07/17 00:20, 2F
推
07/17 00:20, , 3F
07/17 00:20, 3F
推
07/17 00:21, , 4F
07/17 00:21, 4F
推
07/17 00:24, , 5F
07/17 00:24, 5F
→
07/17 15:36, , 6F
07/17 15:36, 6F
→
07/17 15:37, , 7F
07/17 15:37, 7F
→
07/17 15:38, , 8F
07/17 15:38, 8F
→
07/17 15:38, , 9F
07/17 15:38, 9F
→
07/17 15:40, , 10F
07/17 15:40, 10F
推
07/17 17:14, , 11F
07/17 17:14, 11F
推
07/17 17:14, , 12F
07/17 17:14, 12F
→
07/17 17:26, , 13F
07/17 17:26, 13F
討論串 (同標題文章)