開發中三個經典的原則

2022-03-02 07:02:19 字數 666 閱讀 8475

開發中三個經典的原則

單一職責:乙個類,乙個方法專注做一件事情。不要混合多個目標。

比如我的"繫結手機介面",目標的確是幹一件事情:繫結

但是裡面還是要判斷:這個手機號是不是被占用,還要判斷繫結歷史,判斷手機白名單

只不過把判斷繫結歷史,判斷白名單,封裝成單獨的方法來呼叫。

把判斷繫結歷史,判斷白名單,封裝成單獨的方法

這樣就是單一職責。以後其他地方需要用到,就呼叫這個方法

開放-閉合:是 2023年提出來的。對擴充套件要開放,容易擴充套件就是開放。對修改不允許,這是閉合。電腦硬體中的各個元件,是可以自己組裝,方便進行擴充套件(cpu和記憶體都是 自己可以換)。但是有些東西是不能讓你修改的。比如記憶體,電源裝置,這些內部封閉起來。不允許去修改記憶體裡面,把電源拆開修改。這樣以保證穩定性。

歸納為:對擴充套件功能是開放,對修改內部機制是遮蔽掉,不允許修改。

介面之間要進行隔離原則:比如有多個介面,不要混合成乙個介面實現。能拆分成多個介面,隔離起來。這樣做的好處,修改a介面,不會汙染到b介面。從另外乙個角度來看,乙個介面完成了多件事情,與單一職責的思想是類似的。

以上純根據自己理解寫出來。上面原則其實太抽象,空洞。需要隨著編碼遇到的坑越來越多,把例子舉出來,會更加加深對這些原則的理解。

漢語中「三個三個的,你認識多少?」

三個金念鑫 x n 三個水念淼 mi o 三個火念焱 y n 三個土念垚 y o 三個牛念犇 b n 三個手念掱 p 三個目念瞐 m 三個田念畾 l i 三個馬念驫 bi o 三個羊念羴 sh n 三個犬念猋 bi o 三個鹿念麤 c 三個魚念鱻 xi n 三個貝念贔 b 三個力念劦 lie 三個毛...

Makefile中三個自動變數 , ,

所謂自動變數,就是這種變數會把模式中所定義的一系列的檔案自動地挨個取出,直至所有的符合模式的檔案都取完了。這種自動化變數只應出現在規則的命令中。以乙個例子說明 objs ifconfig.o tftp util.o ping.o srcs objs o c phony all all built i...

SDK中三個Timer的區別

sdk中三個timer的區別 網上發現一篇文章,比較三個timer的區別,轉來以便備用 system.threading.timer system.timers.timer system.windows.forms.timer 後來發現微軟上的一遍文章,http msdn.microsoft.com...