天天看小說

第109章

大B:“都知道java最大的優點是它的完全OO化和它在多年的發展過程中吸收和總結了許多先進的框架與模式,其中工廠模式就是最常用的模式之一?!?

小A:“師兄,能不能講一下涉及到的OO原則的定義?”

大B:“好的。OCP(開閉原則,Open-ClosedPrinciple):一個軟件的實體應當對擴展開放,對修改關閉。我的理解是,對於一個已有的軟件,如果需要擴展,應當在不需修改已有代碼的基礎上進行。DIP(依賴倒轉原則,DependenceInversionPrinciple):要針對接口編程,不要針對實現編程。我的理解是,對於不同層次的編程,高層次暴露給低層次的應當只是接口,而不是它的具體類。LoD(迪米特法則,LawofDemeter):只與你直接的朋友通信,而避免和陌生人通信。衆所周知類(或模塊)之間的通信越少,耦合度就越低,從而更有利於我們對軟件的宏觀管理。老子論‘聖人之治’有相同的思想,《老子》雲:‘是以聖人之治,虛其心,實其腹,弱其志,常使民無知無慾。’,又云:‘小國寡民,鄰國相望,雞犬之聲相聞,民至老死,不相往來?!?。佩服我們的老祖宗,N千年前就想到了西方N千年後纔想到的東西,同時也佩服《java與模式》的作者閻宏,可以用中國傳統哲學思想這麼生動的說明這一軟件設計原則?!?

小A:“這麼說來,工廠方法模式有什麼意義???”

大B:“定義一個創建產品對象的工廠接口,將實際創建工作推遲到子類當中。核心工廠類不再負責產品的創建,這樣核心類成爲一個抽象工廠角色,僅負責具體工廠子類必須實現的接口,這樣進一步抽象化的好處是使得工廠方法模式可以使系統在不修改具體工廠角色的情況下引進新的產品?!?

第213章第162章第181章第135章第47章第209章第51章第206章第56章第221章第100章第211章第2章第123章第199章第111章第220章第206章第53章第106章第20章第38章第80章第24章第38章第201章第141章第152章第203章第157章第182章第70章第125章第73章第158章第146章第129章第68章第166章第23章第185章第207章第11章第171章第198章第103章第228章第38章第227章第83章第58章第1章第115章第71章第10章第74章第197章第218章第53章第141章第218章第58章第165章第208章第197章第24章第201章第102章第171章第174章第76章第107章第205章第41章第113章第103章第99章第100章第154章第12章第115章第159章第194章第173章第36章第202章第140章第100章第14章第28章第173章第150章第148章第169章第21章第10章第179章第123章
第213章第162章第181章第135章第47章第209章第51章第206章第56章第221章第100章第211章第2章第123章第199章第111章第220章第206章第53章第106章第20章第38章第80章第24章第38章第201章第141章第152章第203章第157章第182章第70章第125章第73章第158章第146章第129章第68章第166章第23章第185章第207章第11章第171章第198章第103章第228章第38章第227章第83章第58章第1章第115章第71章第10章第74章第197章第218章第53章第141章第218章第58章第165章第208章第197章第24章第201章第102章第171章第174章第76章第107章第205章第41章第113章第103章第99章第100章第154章第12章第115章第159章第194章第173章第36章第202章第140章第100章第14章第28章第173章第150章第148章第169章第21章第10章第179章第123章
主站蜘蛛池模板: 商丘市| 定兴县| 东港市| 都匀市| 临猗县| 隆回县| 林芝县| 凤城市| 区。| 沿河| 明光市| 长寿区| 永春县| 德兴市| 南阳市| 沙洋县| 安化县| 偃师市| 名山县| 凌云县| 齐河县| 微山县| 蒙城县| 鄱阳县| 赤城县| 和静县| 民勤县| 博野县| 同心县| 双峰县| 新建县| 七台河市| 高淳县| 紫云| 桦南县| 皮山县| 嘉定区| 四川省| 宽甸| 玉门市| 惠水县|