Java for android基礎(chǔ)知識(shí)
面向?qū)ο蟮?個(gè)設(shè)計(jì)原則和23經(jīng)典設(shè)計(jì)模式
一、設(shè)計(jì)原則
1.單一職責(zé)原則:一個(gè)類負(fù)責(zé)一個(gè)職責(zé)簿训。
2.里氏替換原則:子類可以擴(kuò)展父類功能咱娶,但不能改變父類原有功能。
3.依賴倒置原則:其核心思想是面向接口編程强品。
4.接口隔離原則:一個(gè)類與另一個(gè)類的依賴應(yīng)該建立在最小接口上膘侮,也就是細(xì)化接口,接口中的方法盡量少的榛。
5.迪米特法則(最少知識(shí)原則):一個(gè)對(duì)象應(yīng)當(dāng)對(duì)其他對(duì)象有最少的了解琼了。也就是一個(gè)類中不要有過(guò)多的其他類。
6.開(kāi)閉原則:一個(gè)軟件實(shí)體(如類夫晌,模塊雕薪,函數(shù))應(yīng)該對(duì)擴(kuò)展開(kāi)放,對(duì)修改關(guān)閉晓淀。當(dāng)軟件需要變化時(shí)所袁,盡量通過(guò)擴(kuò)展軟件實(shí)體的行為來(lái)實(shí)現(xiàn)變化,而不是通過(guò)修改已有代碼來(lái)實(shí)現(xiàn)凶掰。
二燥爷、設(shè)計(jì)模式
1.創(chuàng)建型模式:
(1)抽象工廠(abstract factory)
(2)生成器(builder)
(3)工廠方法(factory method)
(4)原型(prototype)
(5)單件(singleton)
2.結(jié)構(gòu)型模式
(1)適配器(adapter)
(2)橋接(bridge)
(3)組成(composite)
(4)裝飾(decorator)
(5)外觀(facade)
(6)享元(flyweight)
(7)代理(proxy)
3.行為模式
(1)職責(zé)鏈(chain of responsibility)
(2)命令(command)
(3)解釋器(interpreter)
(4)迭代器(iterator)
(5)中介者(mediator)
(6)備忘錄(memento)
(7)觀察者(observer)
(8)狀態(tài)(state)
(9)策略(strategy)
(10)模板方法(template method)
(11)訪問(wèn)者(visitor)