我新架構的構思及CSLA的使用心得
經過一段時間對CSLA的學習和實驗,對如何應用這個超級工具有了一些心得,慢慢感覺越來越順手了。(只是有些感慨,從認識CSLA到現在快兩年了,現在才基本瞭解如何使用它,真是慚愧啊)。
另外,公司的架構發展到現在,有了很多的積累和發展,感覺有很多地方顯得不方便,或者說有些功能無法完成。
老構架的優點:
1、功能與許可權檢查與.net framework 整合,無需手動設定,系統將在啟動時自動掃描並註冊到系統,可保證更新及時及有效。
2、介面註冊與功能關聯,不需要手動設定,系統將在啟動時自動掃描並註冊到系統,可保證更新及時有效。
3、軟體開發人員無需對使用者權限認證等等的技術細節有詳細的瞭解,就可進入狀態開發,只需進行一些基本的基礎知識學習就可以參加到項目裡,可以做到 不必知其所以然,只需看到現象和結果就可以了。
4、業務模組可以隨著時間的發展逐漸積累,現在已經有好幾個行業的模組可以使用。
老構架的缺點:
1、介面展現技術單一,使用Visual WebGui 來做表現模組,現在感覺其效率實在無法忍受,只能限定在內網使用,不得不說,當初選擇這樣的架構是個錯誤。
2、系統架構無法實現多層(縱向)分層,比如說:將商務邏輯分為應用程式層。使用場境:當一台WEB伺服器無法滿足負荷要求時,不能單獨把商務邏輯層取出來單獨運行。
3、 系統架構無法實現叢集(橫向)分層,比如說:一台伺服器無法滿足負荷要求時,不能把某一層單獨分出來做成負載平衡。
4、開發速度太慢,慢的原因有:架構分為三層,消耗時間最多的為介面和邏輯有效性驗證。介面層要進行資料有效性驗證,邏輯層也要進行資料有效性驗證,有很多的重複代碼。
5、現有架構的資料訪問層和介面之間的配合太差,導制有很多手工代碼,一方面是開發速度慢,另一方面對程式員的要求也提高了。
所以為了克服這些現有的缺點和問題,今年進行中新架構的研發,今天有了一些進展,記錄如下:
今天得到成果為:
1、根對象與子物件的配合,如何在適當的時候在根、子物件間切換。
2、資料繫結及編輯,如何?綁定與資料有效性驗證。
3、當對象有多態時,如何?添加與編輯。
4、如何?資料的更新與儲存,並形成一套固定的套路(用於培訓程式員)。
急需解決的問題:
1、新架構的使用者認證與授權,這涉及到細粒度的控制(控制到屬性的訪問,對象的建立及命令的執行等)還是粗粒度的控制(命令執行或者稱為功能執行)的問題。
2、功能與介面的關聯及主控介面的產生及子頁面間相互連信。
3、 全域內容相關的產生及靈活訪問。
4、基礎功能的完成(老系統中工具類業務)