iT邦幫忙

0

[台北] 架構設計好簡單系列(II) - 設計符合團隊的範本精靈

Gelis老師繼「架構設計好簡單 - 快速從Web Form 到ASP.NET MVC」課程之後,
推出新課程 -- 架構設計好簡單系列 - 設計符合團隊的範本精靈 (Project Template)

[台北]3/26(六) -- Gelis老師:架構設計好簡單系列 - 設計符合團隊的範本精靈 (Project Template)
https://dotblogs.com.tw/mis2000lab/2016/02/25/gelis\_project\_template\_2016
=== 課程大綱 請看:https://dotblogs.com.tw/gelis/2015/11/15/153931 ====================

圖(一)、還記得課程『如何有架構性將現有 ASP.NET WebForm 轉換為MVC? 』,中所使用的範本精靈嗎?

image

圖(二)、還記得這個產生 UnitOfWork & Repository 程式碼定義的精靈嗎?課程中會告訴大家如何設計

image

課程大綱

關於為什麼要做範本精靈?

  1. 多人的團隊
  2. 一致性的團隊的開發規範 - Coding Standard (Programming Rule)
  3. 加速開發 - 避免重複造輪子
  4. 保障程式碼品質 (搭配 UnitTest & Code Review)
  5. 讓程式碼便於交接、維護、與重用

企業內部控管流程

如何開始?困難點有哪一些?

  1. 減低重複性的工作
    可透過一些現有的工具、或是自行開發一些 Tool 來解決問題
    結合前一次課程『如何將現有 Web Form 轉換到MVC』所提到到的架構設計概念 與 Design Pattern
    避免不必要的浪費

  2. 建立團隊開發的共同規範 - Coding Standard (Programming Rule)
    程式碼品質並不是有 Project Template + Framework 就可以解決。還必須搭配 Unit Test、Code Review 來達成
    制定規範
    Coding Standard (Programming Rule) 程式碼撰寫規範
    Visual Studio 專案切割方式都要加以定義
    分層方式 (.aspx 不應該出現存取資料庫的敘述)
    所以:這些規範就必須加入待會的 Project Template 中,使 Template 建立出來的程式碼即是符合上方的 "Coding Standard (Programming Rule) 程式碼撰寫規範"

  3. 建立重用性的元件,起碼必須分層,彼此耦合度低,並真正使用適當的 Design Pattern
    DAL
    Business Logic
    Common Utlity

  4. 將 Common Utlity 規劃為 NuGet Package

  5. 開始設計我們的第一個 Project Template
    A. 設計一個 ASP.NET Web Form 的範本
    (1). 先包裝一個 DAL的 NuGet 套件
    (2). 建立一個包含 BasePage 的 Web Form 專案 (或者 COPY 給大家)
    (3). 設定 Web Form 專案裡的 packages.config 以便這個 Project Template 被建立時,會自動安裝 NuGet 套件
    (4). 建立 IWizard 專案 (加入 envdte 參考/撰寫 RunStarted & ProjectFinishedGenerating)
    編譯為可註冊 GAC 的 DLL,並註冊到 GAC 中
    (5). 將前面撰寫的 Web Form 專案匯出
    調整 nameSpace 為 $safeprojectname$
    (6). 解壓縮 ZIP 檔案 ==> 調整 MyTemplate.vstemplate 檔案,設定 <WizardExtension> 標籤
    (7). 將 ZIP 檔案放置到正確位置上,並測試是否可以在 Visual Studio 2013 中使用

=== 課程大綱 請看:https://dotblogs.com.tw/gelis/2015/11/15/153931 ====================

[台北]3/26(六) -- Gelis老師:架構設計好簡單系列 - 設計符合團隊的範本精靈 (Project Template)
https://dotblogs.com.tw/mis2000lab/2016/02/25/gelis\_project\_template\_2016


尚未有邦友留言

立即登入留言