摘自大話設計模式(程杰注)
一.單一設計原則:
定義:就乙個類而言,應該僅有乙個引起它變化的原因
舉例:設計遊戲的時候邏輯類和窗體顯示類需要分開,這樣當我們有一天需要更改介面的時候邏輯可以直接拿過來用.
題外話:軟體設計真正要做的許多內容,就是發現職責,並把那些職責相互分離
二.開放封閉原則:
定義:軟體實體(類,模組,函式等等)應該可以擴充套件,但是不可以修改,也就是說對於擴充套件是開放,而對於更改是封閉的.
需要記住和理解的點:我們如何設計才能面對需求的改變卻可以保持相對穩定,從而使得系統可以在第乙個版本一會不斷的退出新的版本,我們經常會遇到高內聚,低耦合的說法
開放封閉原則是物件導向核心所在,遵循這個原則可以帶來物件導向技術所帶來的巨大的好處,也就是可維護,可復用,可擴充套件,靈活性好.開發人員應該僅對程式中呈現出頻繁變化的哪些部分做出抽象,然而,我們不要去刻意的抽象,拒絕不成熟的抽象和抽象本身一樣重要.
三,依賴倒轉原則:
定義:1.高層次的模組不應該依賴低層次的模組,兩個都應該依賴抽象.(只要介面穩定,任何更改都不用擔心受到其他的影響)
2.抽象不應該依賴細節,細節應該依賴抽象.(說白了就是要針對介面程式設計,不要對實現程式設計)
四:黎克特制代換原則
定義:子型別必須能夠替換掉他的父型別(在軟體裡面,把父類都替換成他的子類,程式的行為沒有發生變化)
需要記住和理解的點:依賴倒轉其實可以說是物件導向設計的標誌,用哪種語言來編寫程式不重要,如果編寫時考慮的都是如何針對抽象程式設計而不是針對細節程式設計,即程式中所有的依賴關係都是已終止於抽象類或者介面,那就是物件導向程式設計,反之就是過程化的設計了.
需要用到的Linux命令
1.預設級別轉換為3 文字模式 ln sf lib systemd system multi user.target etc systemd system default.target 2.或者預設級別轉換為5 圖形模式 ln sf lib systemd system graphical.targ...
python需要用到的筆記
總結 pycharm常用的一些命令 建立django專案的 django admin startproject 專案名稱 讓模型類轉變為資料表,生成遷移檔案 python manage.py makemigrations 執行遷移生成表 python manage.py migrate git命令 ...
遊戲上線需要用到的工具
移動遊戲在上線時需要用到很多的工具來進行輔助管理,今天分別列舉出部分工具為廣大遊戲開發者提供乙個選擇。遊戲測試 testbird是國內最早突破遊戲引擎的手遊測試工具 testbird可以深入到遊戲內部進行包括 安裝 啟動 新手引導等自動化遊戲測試任務。國內還有一款測試工具叫做testin,最早做的是...