JWorld@TW the best professional Java site in Taiwan
      註冊 | 登入 | 全文檢索 | 排行榜  

» JWorld@TW » Software Design » Effective Java  

按列印兼容模式列印這個話題 列印話題    把這個話題寄給朋友 寄給朋友    訂閱主題
reply to postflat modego to previous topicgo to next topic
本主題所含的標籤
無標籤
作者 Re:[Effective Java] 條款 15 : 除非專為繼承而設計並提供文件,否則不要使用繼承 [Re:plutotw]
ingramchen

Web monkey



發文: 479
積分: 12
於 2004-06-18 19:49 user profilesend a private message to usersend email to ingramchenreply to postreply to postsearch all posts byselect and copy to clipboard. 
ie only, sorry for netscape users:-)add this post to my favorite list
嗯, Polygon 若refactor改採 composite 的方式來實做會比較有彈性。 Polygon 其實 extends Point 也可以做的出來,但我們不會 "因為可以用 繼承實做,就盡量用繼承"。

另外這個 Polygon 的需求是後來才蹦出來的 (也許是一年後吧...),原本的設計只有 square / rectangular 需求,當初設計成 point extends line 再 exnteds square 並沒有錯啊,而且也才三層而已,使用上不會多困難。然而現在需求多了個 polygon。如果不用 extends ,而改採 refactor 成 polygon 那會花多少精神時間?

在我的觀點裡是 maintain 比較重要啦... 而且繼承要做 refactoring 和 test 難度都比較高。所以習慣是 composite 優先於 繼承,除非頂多繼承一層而已。也許這種習慣只適用現在的 Java 而已....

個人淺見。


reply to postreply to post
MyBlog | 訂便當管理系統

話題樹型展開
人氣 標題 作者 字數 發文時間
7620 [Effective Java] 條款 15 : 除非專為繼承而設計並提供文件,否則不要使用繼承 metavige 1621 2004-05-26 22:16
6553 Re:[Effective Java] 條款 15 : 除非專為繼承而設計並提供文件,否則不要使用繼承 plutotw 221 2004-05-26 22:37
6635 Re:[Effective Java] 條款 15 : 除非專為繼承而設計並提供文件,否則不要使用繼承 ingramchen 569 2004-05-26 23:29
6659 Re:[Effective Java] 條款 15 : 除非專為繼承而設計並提供文件,否則不要使用繼承 plutotw 699 2004-05-27 00:44
6800 Re:[Effective Java] 條款 15 : 除非專為繼承而設計並提供文件,否則不要使用繼承 Yoshi 1892 2004-05-27 02:47
6557 Re:[Effective Java] 條款 15 : 除非專為繼承而設計並提供文件,否則不要使用繼承 plutotw 1172 2004-05-27 04:59
6449 Re:[Effective Java] 條款 15 : 除非專為繼承而設計並提供文件,否則不要使用繼承 giraffe 207 2004-06-18 11:21
6515 Re:[Effective Java] 條款 15 : 除非專為繼承而設計並提供文件,否則不要使用繼承 ingramchen 1349 2004-06-18 15:03
6323 Re:[Effective Java] 條款 15 : 除非專為繼承而設計並提供文件,否則不要使用繼承 plutotw 648 2004-06-18 17:36
6469 Re:[Effective Java] 條款 15 : 除非專為繼承而設計並提供文件,否則不要使用繼承 ingramchen 443 2004-06-18 19:49
6995 Re:[Effective Java] 條款 15 : 除非專為繼承而設計並提供文件,否則不要使用繼承 plutotw 263 2004-06-18 20:51
» JWorld@TW »  Software Design » Effective Java

reply to postflat modego to previous topicgo to next topic
  已讀文章
  新的文章
  被刪除的文章
Jump to the top of page

JWorld@TW 本站商標資訊

Powered by Powerful JuteForum® Version Jute 1.5.8