現在的**和bs結構的資訊系統, 一般都採用n層架構.
優點1、開發人員可以只關注整個結構中的其中某一層;
2、可以很容易的用新的實現來替換原有層次的實現;
3、可以降低層與層之間的依賴;
4、有利於標準化;
5、利於各層邏輯的復用。
缺點1、降低了系統的效能。這是不言而喻的。如果不採用分層式結構,很多業務可以直接造訪資料庫,以此獲取相應的資料,如今卻必須通過中間層來完成。
2、有時會導致級聯的修改。這種修改尤其體現在自上而下的方向。如果在表示層中需要增加乙個功能,為保證其設計符合分層式結構,可能需要在相應的業務邏輯層和資料訪問層中都增加相應的**。
3、增加了開發成本。
對於大型系統, n層架構是非常適合的. 但對於中小型系統, 由於成本比較低,人員不足等問題, 往往達不到預期效果, 反而會造成系統的失敗, 這就有些得不償失.
在系統的開發過程中, 我發現中間層完全可以透明, 變成web, database結構. 一般情況下無需改動中間層.
web層用於資料的表示和輸入,js, jquery, easyui實現.
database 層用於資料儲存和邏輯, 由儲存過程和嵌入式程式實現.
這種架構有以下優點:
1.效能高. 全部資料在資料庫端操作.
2.容易修改. 當表結構改變時, 只需改儲存過程和頁面.
3.開發速度快. 由於省去了中間層, 程式量減少.
4.邏輯可復用. 由於採用了儲存過程,
5.容易改變邏輯
6.與語言,作業系統無關.
缺點是:
程式安全性低.可以通過加密儲存過程來克服.
不同資料庫之間移植困難.
總之, 作為低成本, 敏捷, 這套web/database結構開發框架還是比較適合的.
golang開發目錄結構
在實際的專案中發現大家的目錄結構都比較凌亂,基本每個人都有每個人的風格,乙個專案在不斷地變大,一些新的檔案或目錄又不斷地被新增進來,從這裡面去找到自己需要的資訊的成本越來越高,乙個統一的通用的目錄結構非常有必要。以下內容來自於github上的這個專案 不要把很多的 放到這個目錄下面,這裡面的 盡可能...
iOS開發 OC分支結構
bool型別 返回值 真 yes 假 no bool 資料型別佔乙個位元組的記憶體空間,佔位符為 d。計算機在識別時,yes就替換成1,no就替換成0。bool是c語言中的布林型別,返回值為true和false 0為假,除0以為任何數字均為真 計算型別是位元組大小 sizeof bool 1 uns...
網路開發常用結構體
1 struct ethhdr attribute packed 2 struct iphdr 3 struct tcphdr 4 struct udphdr 5 struct sk buff 如圖所示 6 註冊乙個hook函式是圍繞nf hook ops資料結構的乙個非常簡單的操作,nf hook...