熱點推薦:
您现在的位置: 電腦知識網 >> 編程 >> Java編程 >> Java高級技術 >> 正文

Java程序中通用的體系模式 windancery

2013-11-23 19:48:26  來源: Java高級技術 

  作者eclipse
  
  層面式
  層面式是一種通用的體系模式它有助於把一個復雜的程序分成幾個獨立的部分層面是基於它們的功能模塊劃分每一個層面負責一個主要的功能Packages代表的是邏輯層級別高的層能使用級別低的層的函數相反則不然級別低的層不能使用級別高的層的函數表A顯示了一個通用的層面模式
  
  表A
  
  表達
   顯示程序用戶界面成分和處理用戶請求
  
  范圍
  負責程序特定的邏輯通訊
  
  數據源
  有助於一些後台服務的通訊如數據庫連接消息處理管理等
  
  
  
  定義合理的層面對整個程序非常的重要因為定義良好的層將提高維護性和使用性這正是我們早先討論到的啟發式知識的核心
  
  當分層一個程序時最重要的是定義層與層之間的關聯隨後設計packages之間的關聯也很重要除此之外packags關聯最好的是單向的因為級別高的層能調用級別低的層的函數反之不行
  
  程序的分層的目是提高功能的多次調用一般來說級別低的層要比級別高的層容易調用當頻繁使用一個層時你可以參考一下《Java的封裝功能》這篇文章定義良好的層面能讓其他開發人員更容易地理解和使用程序中的函數
  
  然而分層也要格外注意定義過多的層面會導致程序的復雜所以設計分層時你必須認真考慮
  
  分割方式
  分割方式是把程序中的非中心邏輯部分從中心邏輯部分中脫離開來與層面方式一樣分割方式使用packages來代表邏輯關聯表B顯示了兩個主要的分割
  表 B 垂直
   程序中數據交換的主要功能包括交換過程交換邏輯交換規則
  
  水平
  程序中數據交換的非主要功能包括錯誤處理郵件服務數據庫訪問
  
  
  
  當識別一個分割層時你必須注意每一個獨立的package的主要目的每一個分割層面都能產生有意義的package在設計packages關聯時一定要確保它們能夠提供合理的功能函數
  
  除此之外垂直分割層的功能函數一般都調用水平分割層的功能函數水平分割層的功能函數可以在程序裡面或程序之間調用關鍵之處是你如何集中使用和改變這其中的類如果水平功能函數被多個程序調用此時最重要的是考慮如何獨立地調用這些獨立的功能函數
  
  
  聯合模式
  在面向對象程序設計中這兩種體系模式都起著關鍵的作用除了獨立地使用層面方法和分割方式在實際設計過程中也常常把二者混合起來這樣就可以達到在分割中分層和分層中分割的目的圖A演示了把兩個層面分成兩個分割的抽象關聯模型箭頭的方向指明了可允許的關聯
  
  Figure A
  
  [img][/img]
  
  總結
  每一種模式都代表著一種改進的體系設計方法這些模式強調的是程序中的packages之間的關系這就構成了packages的啟發式知識在體系設計中有著重要的參考意義
  

From:http://tw.wingwit.com/Article/program/Java/gj/201311/27486.html
    推薦文章
    Copyright © 2005-2013 電腦知識網 Computer Knowledge   All rights reserved.