一次進銷存軟體架構的實踐(二)——業務外觀層設計

來源:互聯網
上載者:User

一次進銷存軟體架構的實踐(一)——概述

1.結構

  根據經驗可以發現一個介面總是一塊一塊的,每一塊裡都是一些基本控制項(按鈕、文字框或者日期控制項等)或者是一個網格控制項和樹形控制項等,如果每塊稱為地區,裡面的成為項,這樣我們可以把介面抽象出兩個基類:地區和項,從地區派生出的其他地區分別用來建立編輯地區、網格地區和樹形地區,編輯地區中的項由項這個類中的類型屬性通過分支語句去建立。

  然後就是各種類型的表單包含的地區不同,那就再加一個外觀的類,它有個屬性存放所有的地區,從外觀派生出的類定義各種可能的地區。而各地區的位置等資訊是由表單去做的。

  這些類還有其他的職責,從外觀派生出的類負責各地區的互動等,地區負責資料繫結、固定的事件、資料初始化等,項也有資料繫結的職責,外觀類的職責就是多很多了,主要一個職責是運行機制。

  事實上我不是一開始就這樣思考的,我是希望各種控制項等都能夠用統一的方式建立、綁定、驗證和許可權,所以才想到有基類抽象他們,才有了項,但單有項還不能完成一個複雜的介面,所以一步一步的思考就成上面描述的結構了。

2.運行機制

這裡簡單列下運行時候要做的事。

1.預初始化

    一些初始值的設定和合法性驗證已決定是否繼續等等必須放到表單開啟前的工作。

    2.載入資料

      通過外觀類中的業務對象所實現的介面方法載入資料存放區到外觀類的dataset類型的資料屬性中。

      3.初始化許可權

        設定權限物件中一些與資料庫中的資料有關的屬性。

        4.建立外觀

          這個時候表單中的各控制項就建立了。

          5.初始化驗證

            同初始化許可權,我的驗證和許可權用的是同樣的一些類,我將他們抽象成了相同的東西。參考淺談MIS系統架構,這塊有些複雜但我不準備說了,用到了一個MB.JsEvaluator.dll來完成動態條件運算式。

            6.結束初始化

            7.綁定資料

            相關文章

            聯繫我們

            該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

            如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

            A Free Trial That Lets You Build Big!

            Start building with 50+ products and up to 12 months usage for Elastic Compute Service

            • Sales Support

              1 on 1 presale consultation

            • After-Sales Support

              24/7 Technical Support 6 Free Tickets per Quarter Faster Response

            • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.