版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認領(lǐng)
文檔簡介
1、ARC320基于.Net Framework2.0企業(yè)應(yīng)用框架的設(shè)計與實現(xiàn),,課程內(nèi)容概述,我們試圖通過實際的企業(yè)應(yīng)用框架的設(shè)計開發(fā)過程,跟大家分享三件事情。第一開發(fā)適合自己企業(yè)的基礎(chǔ)框架,可以極大提的高生產(chǎn)率和軟件質(zhì)量;第二講述我們基于DotNet2.0開發(fā)自己企業(yè)應(yīng)用框架的故事;第三探討企業(yè)應(yīng)用框的架設(shè)計和實現(xiàn)。,課程內(nèi)容安排,為什么我們需要應(yīng)用框架企業(yè)應(yīng)用框架介紹企業(yè)應(yīng)用框架的設(shè)計企業(yè)應(yīng)用框架的實現(xiàn)
2、企業(yè)應(yīng)用框架實施,,為什么我們需要應(yīng)用框架,問題?,在我們的項目開發(fā)中是否經(jīng)常遇到這些問題:一些基礎(chǔ)的功能在不同的系統(tǒng)中總是重復(fù)開發(fā)?譬如:數(shù)據(jù)訪問,事務(wù)管理,用戶認證,權(quán)限管理等等。不同的程序員總是出現(xiàn)同樣的錯誤?譬如:沒有釋放資源,異常沒有處理等等。功能相似的代碼在多個地方出現(xiàn)?每個項目啟動都要搭建一套基礎(chǔ)框架?在組織級沒有技術(shù)積累,項目的成敗很多時候決定于幾個關(guān)鍵成員?,問題?(續(xù)),沒有體系結(jié)構(gòu)的代碼隨處可見,大家風格
3、各異,維護性差?系統(tǒng)的擴展性差,沒有成員愿意動以前的代碼,常常更愿意重新做?系統(tǒng)的模塊、單元職責不清,緊密耦合,很難重用?……,如何解決這些問題?,引入應(yīng)用框架是一種行之有效的方法。,,讓軟件開發(fā)工作變?yōu)橐环N榮譽感和成就感,,企業(yè)應(yīng)用框架介紹,框架,在建筑行業(yè)框架指的是支撐其它物體的結(jié)構(gòu),或者說是建筑物的基礎(chǔ)支撐骨架。,軟件的框架是一個軟件的支撐結(jié)構(gòu),是經(jīng)驗的積累,是失敗的教訓,是一種創(chuàng)新,是一組可重用的設(shè)計和代碼 ……,為何使用
4、應(yīng)用框架,從已有的框架分析:MVCMFCDotNetJAVASpring……基于框架開發(fā)可以極大提高生產(chǎn)率和軟件質(zhì)量。使用框架可以使我們擺脫前面所述“問題”的困擾。使用框架還有更多的優(yōu)點。,使用框架的優(yōu)點(1),模塊化把應(yīng)用分割成多個組件或者模塊,分而治之。隔離變化的影響范圍。降低系統(tǒng)的復(fù)雜性。 可重用框架為項目提供可重復(fù)使用的,穩(wěn)定、成熟、可靠的組件。極大的提高系統(tǒng)的開發(fā)效率。不僅僅是代碼,組件的重用,
5、而且重用了以前的設(shè)計、經(jīng)驗、教訓。站在巨人的肩上。,使用框架的優(yōu)點(2),簡潔性不是框架簡單了,是應(yīng)用程序開發(fā)者的工作變得簡單快樂。通過框架封裝了基礎(chǔ)的處理流程和控制邏輯,開發(fā)者可以透明的使用,極大的提高開發(fā)效率,節(jié)約成本??删S護是我們的應(yīng)用系統(tǒng)可以“隨需而變”的一種能力。由于框架被多個應(yīng)用所共享,代碼已有一份,所以只需修改一次,所有的地方都保持一致。使用框架,業(yè)務(wù)規(guī)則被抽象出來作為一種擴展機制實現(xiàn)業(yè)務(wù)規(guī)則的修改只需要修改
6、配置或者提供一個擴展實現(xiàn)即可。,使用框架的優(yōu)點(3),可靠性系統(tǒng)持續(xù)正確的運行,不間斷的提供服務(wù)的一種能力??蚣苁情_發(fā)工作長期的積累,是經(jīng)過實踐穩(wěn)定下來的一組可重用的設(shè)計和代碼,它是經(jīng)過實踐檢驗的,可以提供極高的可靠性??蓴U展框架可以非常方便增加自定義的功能,以適應(yīng)特定的業(yè)務(wù)需求。在框架設(shè)計中很關(guān)鍵的是在應(yīng)用可能發(fā)生變化的地方增加系統(tǒng)的擴展性和靈活性?!?使用框架的不足,開發(fā)成本框架的設(shè)計開發(fā)需要大量的人力資源和物質(zhì)資源
7、。開發(fā)高可用性和高可靠性的框架,需要業(yè)務(wù)領(lǐng)域的專家和軟件設(shè)計開發(fā)領(lǐng)域的專家??蚣艿拈_發(fā)是一種長線的投資,適用于有多個應(yīng)用的大中型企業(yè)。學習成本要在項目中應(yīng)用框架,所有的開發(fā)者首先要學習框架的使用??蚣芴峁┝艘环N新的編程模型,新的API,新的服務(wù)和配置項,需要開發(fā)者掌握更多的開發(fā)技術(shù),才可以高效的構(gòu)建應(yīng)用系統(tǒng)。,框架的分類,業(yè)務(wù)應(yīng)用(Business Application)實現(xiàn)具體業(yè)務(wù)應(yīng)用的框架。應(yīng)用框架(Applicati
8、on Framework)應(yīng)用系統(tǒng)的支撐體系結(jié)構(gòu),應(yīng)用系統(tǒng)的半成品。特定領(lǐng)域框架針對特定領(lǐng)域的業(yè)務(wù)邏輯構(gòu)建的專有組件??珙I(lǐng)域的框架不包括業(yè)務(wù)領(lǐng)域知識的共享組件。基礎(chǔ)框架(Foundation Framework)應(yīng)用框架和業(yè)務(wù)系統(tǒng)構(gòu)建的基礎(chǔ),軟件開發(fā)商提供的開發(fā)工具:DotNet、Java、MFC,Spring,Struts。,框架的開發(fā)過程,和其它項目一樣,框架開發(fā)也包含下面幾個階段:分析確定框架的目標和范圍。設(shè)計
9、確定架構(gòu)的通用點和擴展點,設(shè)計框架的藍圖。實現(xiàn)編碼實現(xiàn)框架。穩(wěn)定開發(fā)者驗證框架實現(xiàn),開發(fā)Demo項目和文檔。,,企業(yè)應(yīng)用框架的設(shè)計,框架設(shè)計藍圖,框架設(shè)計解析(1),ZTE Framework 統(tǒng)一的基礎(chǔ)平臺,包括系統(tǒng)各個層次需要的基礎(chǔ)功能。如:數(shù)據(jù)訪問組件,事務(wù)管理組件,日志記錄組件,異常處理組件等。ZTE Business Block 各種商務(wù)應(yīng)用模塊集合。例如:采購管理模塊,合同管理模塊,庫存管理模塊,財務(wù)管理模塊,計
10、劃模塊,MRP模塊,車間管理模塊,供應(yīng)商管理模塊,銷售管理模塊,客戶管理模塊等等。每個塊都是產(chǎn)品化的系統(tǒng)模塊, 可以方便的Plug-In到系統(tǒng)框架,通過ZTE Management Studio 配置后,可以滿足各種典型的商務(wù)應(yīng)用。,框架設(shè)計解析(2),ZTE Business Flow 工作流組件。支持ZTE Business Block之間的工作流控制和管理。ZTE Management Studio 框架產(chǎn)品的管理、配置、監(jiān)控平
11、臺。ZTE Business Client ZTE業(yè)務(wù)客戶應(yīng)用模塊,用戶可按CS模式使用,也可按BS模式使用。Visual Studio.Net 框架的開發(fā)工具,支持用戶使用Visual Studio.Net開發(fā)新的模塊,注冊到 ZTE Business Block中,擴展系統(tǒng)的功能,滿足自定義的業(yè)務(wù)功能擴展。,ZTE Framework設(shè)計,通用類庫( Common )應(yīng)用層類庫( Application )業(yè)務(wù)層類庫(
12、Business )資源層類庫( DataAccess )工具庫( Tools ),通用類庫( Common ),系統(tǒng)通用的組件集合數(shù)據(jù)訪問組件事務(wù)管理組件異常管理組件日志管理組件緩存管理組件數(shù)據(jù)加密組件服務(wù)通訊組件自動更新組件,應(yīng)用層類庫( Application ),系統(tǒng)應(yīng)用層通用組件集合客戶端主框架Web主框架WinForm用戶管理WebForm用戶管理,業(yè)務(wù)邏輯層類庫( Business ),系統(tǒng)業(yè)務(wù)
13、層可重用組件集合系統(tǒng)主框架服務(wù)用戶認證服務(wù)用戶管理服務(wù),數(shù)據(jù)訪問層類庫( DataAccess ),系統(tǒng)資源訪問層可重用的組件集合系統(tǒng)主框架數(shù)據(jù)訪問組件用戶認證數(shù)據(jù)訪問組件用戶管理數(shù)據(jù)訪問組件,工具庫( Tools ),自動更新配置工具文檔生成工具(NDoc2.0)查詢生成工具密鑰生成工具,,企業(yè)應(yīng)用框架的實現(xiàn),通用類庫實現(xiàn)(1),數(shù)據(jù)訪問組件擴展Enterprise Library中的DataAccess模塊添加
14、SqlMapper功能添加DbRefCursor功能Oracle返回游標。事務(wù)管理組件基于數(shù)據(jù)訪問組件實現(xiàn),使用線程靜態(tài)的上下文類保持用戶的數(shù)據(jù)庫鏈接狀態(tài)和事務(wù)狀態(tài)。自動綁定參數(shù)。,通用類庫實現(xiàn)(2),異常管理組件擴展Enterprise Library中的ExceptionHandling模塊定制了兩種類型的異常處理策略定義系統(tǒng)基礎(chǔ)異常處理數(shù)據(jù)庫異常(常見的錯誤碼替換為用戶異常)日志管理組件擴展Enterprise
15、 Library中的Logging模塊定義自己的日志配置,簡化了日志寫出動作。,通用類庫實現(xiàn)(3),緩存管理組件直接使用Enterprise Library中的Cache模塊。數(shù)據(jù)加密組件直接使用Enterprise Library中的Cryptography模塊。,通用類庫實現(xiàn)(4),服務(wù)通訊組件包裝DotNet中的Remoting和Web服務(wù)的類庫,通過配置實現(xiàn)切換。添加服務(wù)基礎(chǔ)類,用戶上下文信息。自動更新組件擴展
16、Update Application Block模塊。添加按定義的模塊,角色下載部分的應(yīng)用程序。自動更新配置工具。,應(yīng)用層類庫實現(xiàn)(1),客戶端主框架包括系統(tǒng)主界面,用戶登陸窗,基礎(chǔ)窗體,版本信息等用戶登陸全過程(認證,系統(tǒng)初始化)用戶權(quán)限透明校驗用戶菜單加載通過配置文件動態(tài)加載業(yè)務(wù)窗體Web主框架MasterPage、基礎(chǔ)WebForm,用戶登陸,系統(tǒng)版本信息用戶登陸認證過程。用戶權(quán)限數(shù)據(jù)的加載,系統(tǒng)初始化通過
17、配置動態(tài)加載業(yè)務(wù)應(yīng)用界面。,應(yīng)用層類庫實現(xiàn)(2),WinForm用戶管理用戶創(chuàng)建,修改,分配角色等UI界面實現(xiàn)角色創(chuàng)建,修改,授權(quán)的UI界面實現(xiàn)WebForm用戶管理用戶創(chuàng)建,修改,分配角色等Web窗體實現(xiàn)。角色創(chuàng)建,修改,授權(quán)的Web頁面實現(xiàn)。,業(yè)務(wù)層類庫實現(xiàn),系統(tǒng)主框架服務(wù)按用戶的權(quán)限取用戶的菜單項,構(gòu)建用戶的菜單樹。取的用戶Profile數(shù)據(jù)。用戶的自定義的桌面,與我有關(guān)。用戶認證服務(wù)提供內(nèi)部認證和外部認證方
18、式。認證的方法可擴展。用戶管理服務(wù)用戶權(quán)限模型實現(xiàn)RBAC0模型實現(xiàn)RBAC2模型實現(xiàn),數(shù)據(jù)訪問層類庫實現(xiàn),系統(tǒng)主框架數(shù)據(jù)訪問組件用戶權(quán)限數(shù)據(jù)讀取,用戶菜單數(shù)據(jù),角色數(shù)據(jù)等。用戶Profile數(shù)據(jù),用戶桌面數(shù)據(jù)。用戶認證數(shù)據(jù)訪問層訪問數(shù)據(jù)庫讀取用戶身份認證的數(shù)據(jù)。用戶管理數(shù)據(jù)訪問層用戶數(shù)據(jù)讀取,修改。角色數(shù)據(jù)讀取,修改。用戶角色關(guān)聯(lián)數(shù)據(jù)讀取,修改。角色權(quán)限數(shù)據(jù)讀取,修改。,工具庫(1),自動更新配置工具使用
19、UAB 中的配置工具擴展,生成按模塊或者角色的方式下載部指定部分的模塊。文檔生成工具(NDoc2.0)當時沒有NDoc2.0版本,我們用NDoc提供的源碼,升級到DotNet2.0版本。修改中文XML處理亂碼問題。,工具庫(2),查詢生成工具用戶使用工具定義界面元素,指定數(shù)據(jù)庫查詢過程。使用數(shù)據(jù)庫保存用戶定義的元數(shù)據(jù)。使用解析引擎解析界面的元數(shù)據(jù),動態(tài)生成界面元素。綁定數(shù)據(jù)庫過程返回結(jié)果集到界面。,,企業(yè)應(yīng)用框架的實施,框
20、架給大家的是什么?,一個安裝包基礎(chǔ)類庫集合。系統(tǒng)開發(fā)、支持的一些工具。一份開發(fā)說明文檔開發(fā)規(guī)范。用戶手冊。SDK一個Demo項目一個Demo項目提供給開發(fā)者學習用。,通用類庫使用(1),事務(wù)管理組件異常管理組件日志管理組件緩存管理組件數(shù)據(jù)加密組件服務(wù)通訊組件自動更新組件,通用類庫使用(2),通用類庫使用(3),通用類庫使用(4),應(yīng)用層類庫使用,客戶端主框架。Web主框架。WinForm用戶管理。Web
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 眾賞文庫僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責。
- 6. 下載文件中如有侵權(quán)或不適當內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 基于.net平臺的應(yīng)用框架的設(shè)計與實現(xiàn)
- 基于.net框架的企業(yè)應(yīng)用集成研究和實現(xiàn)
- 基于.net框架的多層企業(yè)應(yīng)用系統(tǒng)架構(gòu)與設(shè)計
- 基于.net技術(shù)平臺的web應(yīng)用框架的設(shè)計與實現(xiàn)
- 企業(yè)web應(yīng)用.net開發(fā)框架的設(shè)計與應(yīng)用
- 企業(yè)web應(yīng)用.net開發(fā)框架的設(shè)計與應(yīng)用
- 基于.net的企業(yè)應(yīng)用系統(tǒng)可復(fù)用框架的研究與設(shè)計
- 基于xpo的.net應(yīng)用開發(fā)框架的研究與實現(xiàn)
- 基于.net的支持復(fù)雜應(yīng)用的門戶框架系統(tǒng)的設(shè)計與實現(xiàn)
- 基于.net平臺的webgis框架設(shè)計與實現(xiàn)
- 基于.net的應(yīng)用服務(wù)層框架的設(shè)計和實現(xiàn)
- 基于.net的電子商務(wù)框架的設(shè)計與實現(xiàn)
- 基于.net框架的婚戀交友系統(tǒng)的設(shè)計與實現(xiàn)
- 基于.net平臺的多層分布式web應(yīng)用框架的設(shè)計與實現(xiàn)
- 基于.net平臺的公交流轉(zhuǎn)應(yīng)用框架的設(shè)計和實現(xiàn)
- 基于.net框架通用物資管理系統(tǒng)設(shè)計與實現(xiàn)
- 基于.net框架的展覽公司信息平臺的設(shè)計與實現(xiàn)
- 基于Web的企業(yè)應(yīng)用框架設(shè)計與實現(xiàn).pdf
- 基于.net框架的短消息服務(wù)系統(tǒng)的設(shè)計與實現(xiàn)
- 基于.net的制造企業(yè)erp設(shè)計與實現(xiàn)
評論
0/150
提交評論