欢迎来到天天文库
浏览记录
ID:1647830
大小:171.50 KB
页数:5页
时间:2017-11-12
《高焕堂软体设计力-02》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库。
1、Part2十個主要的接口設計模式(InterfaceDesignPatterns)ByMISOO1.KnowUnknownpatternIntent:以接口來承接未知或變動之需求。Force1:SystemAnalyst經常面對未知的需求(unknownrequirements)Force2:Programmer不能在program裡寫上"unknown"keyword。Solution:Designer設計接口(interface)去面對unknownrequirements。Consequences:知之為知之,不知為不知,是知也。SA
2、可以追求真知,承接真知是設計力的極佳表現。2.ProgramtoInterfacepatternIntent:讓接口之雙方能獨立成長又互相輝映。Force1:兩個相關system經常需要異地分工及並行開發,開發過程各改變在所難免。Force2:兩個system需要不斷配合對方改變,導致溝通成本提高,並行開發效率下降。Solution:雙方都Programtoaninterface。Consequences:雙方依據接口而分工,施工細節不互相干涉,有效並行開發,進而time-to-market。3.InterfaceCreationpatte
3、rnIntent:接口設計在先,分工在後。Force1:分工生產依賴Interface。Force2:Interface是兩個最終產品的銜接點。Force3:在分工時,最終產品還未誕生。Solution:對最終產物構思其形(form),從兩個形磨合出Interface。Consequences:以well-designedinterface為分工之依據,分工之後也能自然整合了。1.IntegritypatternIntent:透過接口整合,達到優質的系統整合。Force1:大型系統經常包含許多Interface。Force2:Interfa
4、ce之間難免互相衝突。Solution:各part之interface先匯集,相互磨合、修正到合乎整體(whole)和諧之要求。Consequences:透過接口磨合,既能達到系統整合,又能維持PnP。避免因追求系統整合而失去PnP之效益。2.OrganicpatternAccordingtoChristopherAlexander,anorganicorderisachievedwhenthereisaperfectbalancebetweentheneedsofpartsandtheneedsofthewhole.Intent:一種形(
5、form),讓整體能有機成長。Force1:Theneedsofparts經常互相衝突。Force2:Theneedsofwhole極需要和諧(harmony)。Solution:規畫一個part代表whole以維持harmony,規劃一個part來銜接其它parts以支持PnP。Consequences:以柔軟而逐漸成長的architecture,強力支持component之蛻變,接近生物的有機成長。1.AdapterpatternIntent:封裝外來的專屬接口,降低相依性。Force1:使用外來system,經常需要使用它的專屬int
6、erface,因而產生dependency。Force2:depending外來interface,就無法有效PnP。Solution:善用adapter,把外來專屬接口轉變為自己訂定的接口。Consequences:adapter如同壁虎(即system)的尾巴,將連同外來系統一起被PnP掉,但不影響自己的系統(即壁虎)。2.MBpatternIntent:降低adapter間之相依姓。Force1:system經常需要與其它system溝通。Force2:adapter是壁虎的尾巴,會隨system而PnP。Force3:在PnP掉ad
7、apter時,經常牽動多個其他adapter。Solution:設計adapter的共同adapter。Consequences:此共同adapter就是一個softwareMB,而小adapter就成為他的port。1.CPUpatternIntent:統一管理整合性的rules。Force1:各system經常需要提供整體性的數據給它的user,其整合性之rules常分散於各system。Force2:為了維持整體和諧,需要對整合性rules進行統一管理。Solution:設計一個system,它代表whole而負責協調其它system
8、,確保完整性和即時性。Consequences:此system就是一個softwareCPU,成為整體的決策中心,它也很容易PnP它來面對rules的迅速變化。9.SWsuppo
此文档下载收益归作者所有