一、Smart Client Software Factory 簡介
Smart Client Software Factory 是微軟 patterns & practice 項目組的 Software Factory 系列軟體架構,用於協助開發人員建立基於 MVP 模式的傳統型程式(Winform),當然這種傳統型程式是微軟一直大力推廣的所謂智能用戶端程式(Smart Client)。
智能用戶端(Smart Client)可以最大可能的整合瘦用戶端(例如:基於 Browser 的 B\S Web 應用程式)和胖用戶端(例如:傳統的C\S結構的用戶端應用)的優勢,避免 B\S 使用者體驗差和 C\S 部署維護成本大的問題。
智能用戶端與傳統胖用戶端的最大不同是 Smart Client 允許離線運行,一般通過 Web Service (或者 WCF) 與伺服器互動。既可以充分利用用戶端本機電腦的計算能力又可降低對伺服器的強烈依賴。
Smart Client Software Factory 首先是為 Smart Client 應用設計的編程架構(就像 Java 中的 Struts,WebWork,是一個程式的半成品),通過合理的使用架構模式、設計模式和最佳實務為我們提供了建立 Smart Client 的指導原則和架構基礎。同時 Smart Client Software Factory 也是一個軟體工廠,它通過 Visual Studio 的 GuidanceAutomation 擴充了 VS 的功能,利用 Recipes 和 Templates (guidance package )協助我們產生基礎架構和代碼,後面我們會看到。
二、Smart Client Software Factory 安裝
這裡介紹微軟 2008-04-25 最新發行的 SCSF (April 2008 Release)。
安裝必須環境:
- Microsoft Visual Studio 2008
- Microsoft .NET Framework 3.5
- Guidance Automation Extensions (February 2008 or later) (如果沒有,可以按照,但是不能使用 guidance package 功能)
- SQL Server 2005 Compact Edition(VS 2008 安裝時已經安裝)
安裝可選組件:
- Enterprise Library 3.1. (還不支援 4.0)
- Guidance Automation Toolkit for Visual Studio 2008 (February 2008 or later).
- Microsoft Visual Studio 2008 SDK. (用於修改guidance package)
三、利用 Visual Studio 的模板建立項目
建立基於 Guidance Packages 的 Smart Client Development 項目
彈出建立嚮導:
點完成後,自動產生的解決方案檔案夾
在自動產生的項目架構基礎上建立解決方案檔案夾,自訂項目,也可以通過在解決方案檔案夾上點右鍵,選擇 Smart Client Factory ,建立 Module 。
在 Smart Client 項目或者項目中的檔案夾上點右鍵,Smart Client Factory 可以添加帶有 Presenter 的 View (MVP)。
如何具體使用,以後介紹。