目錄
常見設計原則
S.O.L.I.D設計原則
首頁 後端開發 C#.Net教程 常見設計原則實例詳解

常見設計原則實例詳解

Jun 23, 2017 pm 02:28 PM
原則 概述 設計 軟體

設計原則構成了設計模式賴以建構的基礎。透過遵循經過驗證的設計原則,自己的程式碼會變得更靈活、更有能力適應變化,而且可維護性更佳。

常見設計原則

  • 簡約原則(KISS)
    KISS原則的目標就是讓程式碼保持簡潔但不要過於簡陋,從而避免引入任何不必要但複雜度。

  • 不要重複自己(DRY)
    BRY原則但目的是透過將公用但部分抽離出來放在一個單獨的地方,從而避免重複系統中的任何部分。當然避免重複的不僅是程式碼,還包括業務邏輯。

  • 講述而不要詢問(Tell,Don't Ask)
    這個原則要求應該告訴物件您希望它們執行什麼動作,而不是詢問有關物件狀態的問題然後您自己決定希望執行什麼動作。這樣有助於匹配責任並避免類別之間的緊密耦合。

  • 您不需要它(YAGNI)
    該原則指的是只需要將應用程式必須的功能包含進來,而不要試圖添加任何其他您認為可能需要的功能。

  • 分離關注點(SoC)
    SoC這個過程將軟體分解為多項不同的功能,每項功能封裝了可供其他類別使用的唯一行為和數據。通常,一個關注點代表類別的一項功能或行為。將程式劃分成若干獨立職責的做法顯著提高了程式碼的重用成都、維護性和可測試性。

S.O.L.I.D設計原則

  • #單一職責原則(SRP)
    SRP與分離關注原則保持高度一致。它要求每個物件應該有且只有一個職責關注點,即只有一個引起類別變化的原因。

  • 開放封閉原則(OCP)
    該原則要求類別對於擴展應該是開放的,而對於修改應該是關閉的,這樣應該就能夠在不改變類別的內部行為的情況下為類別添加新功能,並且避免類別被破壞,造成不必要的錯誤或則bug。

  • 里氏替換原則(LSP)
    任何父類別都應該可以被子類別替代,並且保持其行為不變。改原則與OCP原則保持一致,確保繼承類別不會影響父類別的行為。

  • 介面分離原則(ISP)
    ISP原則關注的是將介面方法依職責分割為若干個群組,並且為這些分組指派不同的介面。避免客戶端實現一個龐大和一堆用不到的介面。

  • 依賴倒置原則(DIP)
    DIP原則的宗旨是將自己寫的類別與具體的實作隔離開來,讓這些類別依賴抽像或介面。它提倡面向介面編程,這確保程式碼不會與某種實現緊密耦合,從而提高惡系統的靈活性。

  • 依賴注入(DI)與控制反轉(SoC)原則
    DI、SoC與DIP是緊密相連的。 DI透過建構器、方法或屬性提供低層類別或從屬類別。配合使用DI原則,這些從屬類可以反轉為介面或抽象類,這樣就可以形成一個具有較高的可測試性和易於修改的低耦合系統。

ASP.NET設計模式:

以上是常見設計原則實例詳解的詳細內容。更多資訊請關注PHP中文網其他相關文章!

本網站聲明
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn

熱AI工具

Undresser.AI Undress

Undresser.AI Undress

人工智慧驅動的應用程序,用於創建逼真的裸體照片

AI Clothes Remover

AI Clothes Remover

用於從照片中去除衣服的線上人工智慧工具。

Undress AI Tool

Undress AI Tool

免費脫衣圖片

Clothoff.io

Clothoff.io

AI脫衣器

Video Face Swap

Video Face Swap

使用我們完全免費的人工智慧換臉工具,輕鬆在任何影片中換臉!

熱工具

記事本++7.3.1

記事本++7.3.1

好用且免費的程式碼編輯器

SublimeText3漢化版

SublimeText3漢化版

中文版,非常好用

禪工作室 13.0.1

禪工作室 13.0.1

強大的PHP整合開發環境

Dreamweaver CS6

Dreamweaver CS6

視覺化網頁開發工具

SublimeText3 Mac版

SublimeText3 Mac版

神級程式碼編輯軟體(SublimeText3)

crystaldiskmark是什麼軟體? -crystaldiskmark如何使用? crystaldiskmark是什麼軟體? -crystaldiskmark如何使用? Mar 18, 2024 pm 02:58 PM

CrystalDiskMark是一款適用於硬碟的小型HDD基準測試工具,可快速測量順序和隨機讀取/寫入速度。接下來就讓小編為大家介紹一下CrystalDiskMark,以及crystaldiskmark如何使用吧~一、CrystalDiskMark介紹CrystalDiskMark是一款廣泛使用的磁碟效能測試工具,用於評估機械硬碟和固態硬碟(SSD)的讀取和寫入速度和隨機I/O性能。它是一款免費的Windows應用程序,並提供用戶友好的介面和各種測試模式來評估硬碟效能的不同方面,並被廣泛用於硬體評

CrystalDiskinfo使用教學-CrystalDiskinfo是什麼軟體? CrystalDiskinfo使用教學-CrystalDiskinfo是什麼軟體? Mar 18, 2024 pm 04:50 PM

CrystalDiskInfo是一款用來查看電腦硬體設備的軟體,在這款軟體中我們可以對自己的電腦硬體進行查看,例如讀取速度、傳輸模式以及介面等!那除了這些功能之外,CrystalDiskInfo怎麼使用,CrystalDiskInfo究竟是什麼呢,以下就讓小編為大家整理一下吧!一、CrystalDiskInfo的由來作為電腦主機三大件之一,固態硬碟是電腦的儲存媒介,負責電腦的資料存儲,一塊好的固態硬碟能加快檔案的讀取速度,影響消費者使用體驗。當消費者收到新設備時,可透過第三方軟體或其他固態硬碟

首發899元 中興5G隨身Wi-Fi U50S開賣:最高網速500Mbps 首發899元 中興5G隨身Wi-Fi U50S開賣:最高網速500Mbps Apr 26, 2024 pm 03:46 PM

4月26日消息,中興5G隨身Wi-FiU50S目前已經正式開賣,首發899元。外觀設計上,中興U50S隨身Wi-Fi簡約時尚,易於手持和包裝。其尺寸為159/73/18mm,攜帶方便,讓您隨時隨地暢享5G高速網絡,實現暢行無阻的行動辦公與娛樂體驗。中興5G隨身Wi-FiU50S該設備支援先進的Wi-Fi6協議,峰值速率高達1800Mbps,依托驍龍X55高效能5G平台,為用戶提供極速的網路體驗。不僅支援5G雙模SA+NSA網路環境與Sub-6GHz頻段,實測網速更可達驚人的500Mbps,輕鬆滿

復古潮流! HMD與喜力聯合推出翻蓋手機:透明外殼設計 復古潮流! HMD與喜力聯合推出翻蓋手機:透明外殼設計 Apr 17, 2024 pm 06:50 PM

4月17日消息,HMD攜手知名啤酒品牌喜力以及創意公司Bodega,聯袂推出了一款獨特的翻蓋手機-無聊手機(TheBoringPhone)。這款手機不僅在設計上充滿新意,更在功能上返璞歸真,旨在引領人們回歸真實的人際交往,享受與朋友暢飲的純粹時光。無聊手機採用了獨特的透明翻蓋設計,展現出簡約而不失優雅的美感。其內部配備了2.8英寸QVGA顯示屏,外部則是一塊1.77英寸的顯示屏,為用戶提供了基本的視覺交互體驗。在攝影方面,雖然僅搭載了30萬畫素的鏡頭,但足以應付日常的簡

一個不相容的軟體嘗試與Edge載入怎麼解決? 一個不相容的軟體嘗試與Edge載入怎麼解決? Mar 15, 2024 pm 01:34 PM

  我們在使用Edge瀏覽器的時候有時候會出現不相容的軟體嘗試一起加載,那麼這是怎麼回事?下面就讓本站來為用戶們來仔細的介紹一下一個不相容的軟體嘗試與Edge加載怎麼解決吧。  一個不相容的軟體嘗試與Edge載入怎麼解決  解決方案一:  開始選單搜IE,直接用IE存取即可。  解決方案二:  注意:修改註冊表可能會導致系統故障,謹慎操作。  修改登錄參數。  1、運行中輸入regedit。  2、找到路徑\HKEY_LOCAL_MACHINE\SOFTWARE\Policies\Micros

photoshopcs5是什麼軟體? -photoshopcs5使用教學課程 photoshopcs5是什麼軟體? -photoshopcs5使用教學課程 Mar 19, 2024 am 09:04 AM

PhotoshopCS是PhotoshopCreativeSuite的縮寫,由Adobe公司出品的軟體,被廣泛用於平面設計和圖像處理,作為新手學習PS,今天就讓小編為您解答一下photoshopcs5是什麼軟體以及photoshopcs5使用教程。一、photoshopcs5是什麼軟體AdobePhotoshopCS5Extended是電影、視訊和多媒體領域的專業人士,使用3D和動畫的圖形和Web設計人員,以及工程和科學領域的專業人士的理想選擇。呈現3D影像並將它合併到2D複合影像中。輕鬆編輯視

榮耀Magic V3首發AI離焦護眼技術:有效緩和近視發展 榮耀Magic V3首發AI離焦護眼技術:有效緩和近視發展 Jul 18, 2024 am 09:27 AM

7月12日消息,榮耀MagicV3系列今日正式發布,搭載全新榮耀視力舒緩綠洲護眼屏,在屏幕本身俱備高規格和高素質的同時,還開創性的引入AI主動式護眼技術。據悉,傳統的緩解近視的方式是“近視鏡”,近視眼鏡度數均勻分佈,保證了視線中心區域成像在視網膜之上,但周邊區域成像在視網膜後,視網膜感應到成像在後,促進眼軸向後生長,從而使度數加深。目前主要的緩解近視發展的方式之一是“離焦鏡”,其中心區域度數正常,週邊區域透過光學設計分區調整,從而使周邊區域成像落在視網膜前,

台電M50 Mini小平板來了:8.7吋IPS螢幕、5000mAh電池 台電M50 Mini小平板來了:8.7吋IPS螢幕、5000mAh電池 Apr 04, 2024 am 08:31 AM

4月3日消息,台電即將推出的M50Mini平板電腦是一款功能豐富、效能強大的裝置。這款8吋小平板新品搭載了8.7吋的IPS螢幕,為用戶提供了出色的視覺體驗。其金屬機身設計不僅美觀,也增強了設備的耐用性。在性能方面,M50Mini搭載了紫光展銳T606八核心處理器,擁有兩個A75核心和六個A55核心,確保了流暢且高效的運作體驗。同時,該平板還配備了6GB+128GB的儲存方案,並支援8GB記憶體擴展,滿足了用戶對於儲存和多任務處理的需求。在續航上,M50Mini配備了5000mAh的電池,支援Ty

See all articles