編輯:關於android開發
實際上都是互補的,也就是說一些原則需要利用另一些原則來實現自己。
6大原則如下:
1)單一職責原則,一個合理的類,應該僅有一個引起它變化的原因,即單一職責,就是設計的這個類功能應該只有一個;
優點:消除耦合,減小因需求變化引起代碼僵化。
2) 開-閉原則,講的是設計要對擴展有好的支持,而對修改要嚴格限制。
優點:降低了程序各部分之間的耦合性,其適應性、靈活性、穩定性都比較好。當已有軟件系統需要增加新的功能時,不需要對作為系統基礎的抽象層進行修改,只需要在原有基礎上附加新的模塊就能實現所需要添加的功能。增加的新模塊對原有的模塊完全沒有影響或影響很小,這樣就無須為原有模塊進行重新測試。
3) 裡氏代換原則,很嚴格的原則,規則是“子類必須能夠替換基類,否則不應當設計為其子類。”也就是說,子類只能去擴展基類,而不是隱藏或覆蓋基類,
優點:可以很容易的實現同一父類下各個子類的互換,而客戶端可以毫不察覺。
4) 依賴倒換原則,“設計要依賴於抽象而不是具體化”。換句話說就是設計的時候我們要用抽象來思考,而不是一上來就開始劃分我需要哪些哪些類,因為這些是具體。
優點:人的思維本身實際上就是很抽象的,我們分析問題的時候不是一下子就考慮到細節,而是很抽象的將整個問題都構思出來,所以面向抽象設計是符合人的思維的。另外這個原則會很好的支持(開閉原則)OCP,面向抽象的設計使我們能夠不必太多依賴於實現,這樣擴展就成為了可能,這個原則也是另一篇文章《Design by Contract》的基石。
5) 接口隔離原則,“將大的接口打散成多個小接口”,讓系統解耦,從而容易重構,更改和重新部署。
優點:會使一個軟件系統功能擴展時,修改的壓力不會傳到別的對象那裡。
6) 迪米特法則或最少知識原則,這個原則首次在Demeter系統中得到正式運用,所以定義為迪米特法則。它講的是“一個對象應當盡可能少的去了解其他對象”。
優點:消除耦合。
Android自定義ViewGroup打造各種風格的SlidingMenu 看鴻洋大大的QQ5.0側滑菜單的視頻課程,對於側滑的時的動畫效果的實現有了新的認識,似乎打
深度剖析:Android_PullToRefresh 上拉加載更多,下拉刷新,網上比較強大比較全的一個開源庫PullToRefresh,支持Listview、GridVi
Android Studio 打包apk,自動追加版本號和版本名稱 默認AS大包好的apk是app-deubg.apk的,這樣的話版本多了找出一個bug在哪個版本中存在的
Android Handler、Loop 的簡單使用,androidhandler1、子線程和子線程之間的通信 package lib.com.myapplicatio