軟件開發的設計原則

據我瞭解 ,軟件的開發原則有六大原則

開閉原則:開閉原則是面向對象的可複用設計的第一塊基石,它是最重要的面向對象設計原則。一個軟件實體應當對擴展開放,對修改關閉。即軟件實體應儘量在不修改原有代碼的情況下進行擴展。

單一職責原則 : 單一職責原則是最簡單的面向對象設計的原則,一個類只負責一個功能領域中的相應職責,或者可以定義爲:就一個類而言,應該只有一個引起它變化的原因,單一職責原則是實現高內聚、低耦合

接口隔離原則:使用多個專門的接口,而不使用單一的總接口,即客戶端不應該依賴哪些它不需要的接口。

里氏代換原則所有引用父類的地方都能夠透明地使用其子類對象,反過來則不成立
這裏叫一個例子:
【例如】
我說我喜歡動物 , 那麼可以推斷我肯定喜歡狗 , 因爲狗是動物
但是 如果我說我喜歡狗,你不能說我喜歡動物,因爲我不喜歡貓和老鼠,因爲貓和老師都是動物

迪米特法則一個軟件實體應當儘可能少地與其他實體類發生相互作用
就是說不要跟陌生人講話 , 有事跟你朋友說

依賴倒換原則 : 抽象不應該依賴細節,而細節應該依賴於抽象。
在這裏插入圖片描述
換言之就是我們經常所講的面向接口編程 , 面向抽象編程 , 依賴倒換原則要求我們在代碼傳遞參數時或關聯關係時,儘量引用層次較高的抽象類,即使用接口和抽象類進行變量類型的聲明(例如多態機制)參數類型聲明、方法返回值類型聲明,以及數據類型的轉換等,而不要用具體類來指定。
也因此。爲了確保該原則的應用,一個具體類應當只實現接口或抽象類中聲明過的方法,而不要給出多餘的方法,否則將無法調用到在子類中增加的新方法。

以上就是我們軟件設計中經常用到的設計原則, 其實我們說不用這些設計原則能不能編程,當然能,但是我們總說,在一個項目團隊中,約定優於配置 這句話也就是說,我們也是按照約定編程,別人都是這樣做,那你必須也這樣,也因此經驗越久的程序員也是遵守這些原則。

此外,也有統計發現, 在一個項目團隊中,想法比較活躍的都是剛進團隊的年輕人,並不是說年齡大一點的程序員想法就少,而是基本都遵守公司的一套開發流程和開發規則,而年輕人有時候喜歡按照自己的想法來,雖然最後結果也能實現,但是可能在後期的開發中,沒人需要的功能模塊你寫的完全不一樣,這樣別人調用時候得不到想要的結果

這裏就談到分佈式開發(例如Dubbo框架) 所有 大家還是能夠遵守這些共同約定俗成的設計原則。

好了。晚安 ,不知道爲什麼北京這麼冷了,讓我一個武漢人怎麼說的了啊。。。。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章