.NET框架設計(1)
阿新 • • 發佈:2019-02-04
框架設計的基本概念
- 框架
- 框架的通常作用及層面
軟體開發要滿足使用者的業務需求,然後滿足編寫程式碼時的非業務需求。非業務需求有很多種:安全、穩定、易維護、易擴充套件等等。
框架的主要作用是讓我們更好地實現非業務性需求,因為其影響著業務需求的效能。良好的使用者體驗、良好的視覺效果是現代軟體必須的。 - 框架的生命週期
業務需求的一個特點就是不變性,但是業務需求是各不相同的,每個系統都有著自己獨特的需求,但是非業務需求可以在多個系統直接複用,所以,支撐非業務需求的框架也就是可以複用的。
框架在其生命週期中,為了滿足各種需求,需要不斷維護。所以框架並不是一成不變的
- 框架的通常作用及層面
框架的設計
- 確定問題域和識別變化點
首先要確定問題域,問題域就是你將要用框架解決問題的範圍。
例如通訊框架,首先是確定業務範圍,允許哪些型別的訊息通過該框架,在腦海裡要有一個大致的範圍。如圖:
確定問題域後,進一步去分析其變化點,如圖:
這對框架的整體設計起著驅動作用。
變化點的整理可以讓我們更細緻地瞭解架構,這對後面的架構選擇很重要,因為架構模型是由架構模式驅動出來的,正所謂模式驅動模型,模型驅動架構。 選擇合適的架構模式、配置變化資料、視覺化管理。
選擇架構模式的前提是你已經確定了問題域並且識別出大部分的變化點。通常是一種模式對應一種問題解決方案。根據上邊的問題域和變化點,可以大概得知即將使用的部分模式:- 通訊框架:管道模式
- 訊息:契約式設計
- 通訊埠:非同步訊息+事件驅動
- 安全:鏈式程式設計
- 壓縮:IOC注入第三方壓縮演算法
設計好架構之後,就需要將變化點配置起來,以便在需要的時候配置變化點。配置的方式基本有兩種:
- 本地靜態檔案:無需及時更新
- 遠端服務動態:執行時隨需求會變化
框架設計中另一個很重要的部分就是視覺化。
作為一個完善的框架,不僅需要在執行時穩定,而且也要保證該框架是可測試的
- 確定問題域和識別變化點
- 框架設計核心三要素:模式,配置和工具
- 框架模式:框架模式是一套針對框架設計而言的解決方法,不同的模式解決不同的問題域。
- 框架的配置:配置的存放位置、配置的讀取方式、配置資訊的生成方式等。
- 框架工具:框架的視覺化。
- 開發時:視覺化程式設計。
- 編譯時:企業級分散式框架需要在很多環境中執行,不同的環境,需要配置不同的環境資訊,這時候需要在使用框架編譯時能夠生成一些環境變數資訊。
- 執行時:日誌、監管、除錯等功能都需要框架提供。
模式是骨架,配置是變化點,工具是輔助管理從框架的架構到變化的配置,再到框架的使用工具,這是一條框架設計的指導路線。