使用圖層圖表讓應用程式結構穩定
小組以少量遞增的方式開發程式碼時,經常會變更及擴充程式碼。 這些變更可能導致相依性複雜度逐漸增加,而使得程式碼在經過一段時間後更難進行變更。 為了協助防止發生此問題,小組可以使用圖層圖表來設計及驗證應用程式元件之間的相依性。
使用圖層圖表,小組就可以檢視應用程式的主要元件及其之間的相依性,而不用了解元件的運作和互動方式。
小組還可以使用圖層圖表來確認程式碼是否符合架構。 當您在 Visual Studio 中繪製圖層圖表時,可以從程式碼指派類別的群組給每個圖層,並以箭頭來指定相依性。 然後,您可以使用 Visual Studio 來驗證程式碼中的相依性是否真的遵循圖層圖表中繪製的箭頭。
小組可以定義簽入原則來驗證圖層圖表並將它用於小組的連續組建,藉此確認未來的變更總是符合架構。
導入圖層驗證
小組可以依照本節概述的下列程序來開始使用圖層驗證。
若要在撰寫新程式碼時使用圖層驗證
在接近首次為應用程式撰寫程式碼的時候,繪製圖層圖表來代表主要元件及其相依性。 您可能會在隨著應用程式開發專案的發展階段變更圖表。
如需詳細資訊,請參閱圖層圖表:參考。
建立命名空間或類別時,將它們指派給圖層。
簽入程式碼之前,以滑鼠右鍵按一下圖層圖表,然後按一下 [驗證架構]。
在簽入和一般建置程序中加入圖層驗證。
如需詳細資訊,請參閱 HOW TO:針對圖層圖表驗證 .NET 程式碼。
若要在更新現有應用程式時導入圖層驗證
使用 [架構總管] 和有向圖形探索應用程式,以便對其結構有所了解。 下列步驟有助於更加了解。
說明主要元件及相依性。 如需詳細資訊,請參閱 HOW TO:從成品建立圖層圖表。
從 [架構總管] 或 [方案總管] 拖曳項目,將項目指派給圖層。
以滑鼠右鍵按一下圖層圖表,然後按一下 [驗證架構]。
檢查任何錯誤報告,並使用下列方法修正任何錯誤:
修正圖層圖表。 改進圖層圖表來更精確地代表現有程式碼,或將程式碼項目重新指派給不同圖層。
修正程式碼。 如果您覺得圖層圖表比現有程式碼更能代表設計,您可以更新程式碼,使其符合圖層圖表。
如需詳細資訊,請參閱本主題稍後的重構現有程式碼以符合圖層圖表。
重複上述步驟,直到沒有錯誤為止。
在簽入和一般建置程序中加入圖層驗證。
如需詳細資訊,請參閱 HOW TO:針對圖層圖表驗證 .NET 程式碼。
重構現有程式碼以符合圖層圖表
小組開始處理現有應用程式時,可能會發現應用程式的結構比原來還要複雜。 當您嘗試繪製圖層圖表並將項目指派給圖層時,就會發現這種情形。 小組可能無法經由可驗證但不導入邏輯上不必要的圖層和相依性之方式,或透過導入略過圖層或表單迴圈的相依性,將項目指派給圖層。 這類缺點讓程式碼變得難以了解及變更,而且使得其行為可能因使用者而異。
小組可以重構程式碼以改進設計,讓程式碼變得更容易處理。 當小組決定重構程式碼以改進設計時,必須考慮下列幾點:
將重構變更和其他變更分開處理。 重構變更不得涉及使用者本文的重大變更。
將每個建議變更加入產品待處理項目中,並包含變更和預期好處的說明。
注意事項 只需幾小時實作及測試的重構變更可以被視為 Bug 處理。 較大規模的重構變更必須加入產品待處理項目中,並與待處理項目中的其他項目一起進行估計及排定優先順序。
在重構前,撰寫確定處理區域的功能並未變更的測試。
更新圖層模型
在前一個或兩個期程後,圖層圖表應該趨於穩定。 通常圖層驗證錯誤應該被視為程式碼中的錯誤,而不是圖層模型中的錯誤。
當您必須更新圖層模型時,請與小組一起檢閱建議變更。
大部分圖層模型變更可分類如下:
擴充: 您在程式碼中加入多個元件,並想要加入圖層來與之相符。
細分: 許多程式碼項目目前已指派給單一圖層。 您想要將單一圖層分割成較小圖層,以改進圖層驗證的有效性。
重構 您想要改進現有程式碼的相依性結構。 現有結構會反映在目前圖層圖表, 所以您想要同時改進圖層圖表與程式碼。
相關主題
圖層圖表:參考
如何繪製圖層圖表。圖層圖表:方針
用什麼來代表圖層,以及如何使用圖表。HOW TO:從成品建立圖層圖表
建立反映現有程式碼結構的圖層圖表。HOW TO:針對圖層圖表驗證 .NET 程式碼
使圖層驗證做為簽入和連續組建的一部分。