国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 學院 > 開發設計 > 正文

Java的各種架構優缺點分析和展望

2019-11-18 12:05:48
字體:
來源:轉載
供稿:網友

  首先是UI層很難由美工和系統設計師來總體設計,由于即使是Delphi之類的可視化開發工具,界面問題還是要程序員自己調整。解決這個問題可以走兩條路:用自己的皮膚系統和美工本來就會IDE。
  
  其次是服務層的標準缺少,雖然Corba之類早已出現,但是昂貴的費用和實施的難度太大了。事實上這樣的服務層確實有象BEA的Tuxedo,IBM的CICS等,但伸縮性小,使用范圍小,不算是老少咸宜。
  
  最后是數據層一般是直接存取數據庫,高級一點的是通用性強一點,能多訪問幾個數據庫。但遠沒有到對象持久化這種程度。
  
 Java的各種架構優缺點分析和展望(圖一)


  傳統三層架構B/S
  J2EE架構的推出帶來了很大的進步,先前推出的phpasp等嵌入式腳本語言只限于一種模板腳本語言而已,真正的架構還是從J2EE開始起的。
  
  早期J2EE還未成熟,這張圖應該是J2EE1.2以后的,至少是EJB2.0以后的。
  
  在UI層與其他腳本嵌入語言類似,模板+腳本,仍然沒有較好的Action功能,這直到Struts之類的出現才開始改觀。
  
  SeesionBean的出現加速了服務層的建立,讓業務邏輯真正可以獨立出現,盡管現實沒有這么理想。
  
  Entity Bean的出現,非凡是CMP的出現,建立了對象持久層,數據庫再也不需要了解細節了,甚至對象數據存在哪里都沒人想知道了,雖然有這樣那樣的困難和問題。
  
 Java的各種架構優缺點分析和展望(圖二)

  現代多層架構
  多層架構是從開源開始的。
  
  Struts是聞名的MVC2,盡管現在看來問題還是不少,但是不可否認,它的功勞是顯著的。
  
  AspectJ帶來了AOP,讓開發換個思路。
  
  SPRing讓這些看上去很簡單,重新發掘Bean的力量。
  
  WebWork、JSTL、Tapestry、JSF、PIO、Hibernate、Castor等等一系列的開源計劃層出不窮,我可以列到你開始嘔吐為止。
  
  有很多顯著的特點:
  
  注重UI層的簡化開發,強化模板引擎和組件開發,使Action或Lisnter成為標準配備。
  
  服務層強調弱耦合,可以與多個輪子一起工作,方便更換合適的框架,甚至考慮兼容傳統系統。
  
  對象持久大行其道,都是針對EJB的軟肋去的,但3.0的發布會彌補EJB的問題。
  
  各大廠商爭相搶奪市場,工具和服務器和版本飛漲,跳得比計價器還快。
  
  xml大行其道,已經成為標準格式,至少是配置文件和轉換模板的標準。
  
Java的各種架構優缺點分析和展望(圖三)

  現代架構簡介
  View 展示層。顯示內容、接受用戶人工信息。
  
  Template Engine 模板引擎層。使用模板的方式產生最終View展示層的內容。
  
  Action或Listener 動作或監視層。接受用戶人工動作、根據動作反饋。
  
  Control 控制UI層。控制UI的動作反饋、頁面流程。
  
  Service 服務層。除業務邏輯以外的系統邏輯、訪問域邏輯的接口、轉發訪問域邏輯的請求。
  
  Domain Logic 域邏輯層。業務邏輯、與傳統遺留系統的業務邏輯接口。
  
  Domain Model 域模型層。業務模型,與業務有關的對象模型樹,包括對象屬性和之間的關系。
  
  XML Model。用XML定義的域模型。鑒于XML的重要性,單獨列出。
  
  Object Model。用Object對象來定義的域模型。
  
  Object Persistent 對象持久層。將域模型對象持久化。
  
  Database System 數據庫系統。關系型或對象型數據庫系統,代表了存儲系統。
  
  應用級架構
  可能應該稱為實用架構,因為以下這些架構與現代架構不沖突,是建立在現代架構基礎上的應用級架構。
  
  光有現代架構當然對開發來說并沒有省心,反而是更增加溝通和培訓成本,因此應用級架構,或可稱為中間件,非常重要。
  
  應用級架構是用來解決各種業務問題的高層次架構。
  
  Workflow 工作流。解決一切依靠流程的業務系統中的流程部分的問題。工作流只管流程。
  
  E-Form 電子表單。解決一切業務系統中需要頻繁變動界面。包括電子表單設計器和編譯器。
  
  Protal 門戶。解決多個業務系統的高級集成。多業務系統不僅是展示層上的集成,更深入到互動地集成,將可能產生相互影響。
  
  Data Exchange 數據交換。數據傳輸和格式轉換。解決多個業務系統的數據交換問題。
  
  Message 消息中間件。解決異步消息傳輸問題。
  
  Instance Message 即時消息。解決即時溝通交流問題,并且答應與業務系統互動。
  
  Real-Time 實時系統。對時間和高可靠性的要求。
  
  Embedded 嵌入式系統。開發各種其它設備上的應用系統。

發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 齐河县| 广饶县| 武邑县| 清丰县| 苏尼特左旗| 北辰区| 金沙县| 休宁县| 敖汉旗| 远安县| 南靖县| 丹棱县| 博爱县| 木里| 四平市| 家居| 堆龙德庆县| 东阿县| 施甸县| 盐亭县| 义乌市| 六安市| 钦州市| 梁山县| 大石桥市| 永新县| 芦山县| 大英县| 南川市| 广饶县| 钟祥市| 江孜县| 宁夏| 逊克县| 东宁县| 临西县| 新沂市| 河东区| 建水县| 泽库县| 昌平区|