關於語言與架構(四)

2021-08-29 14:47:53 字數 1028 閱讀 4193

說架構,遠不如討論語言來得有感覺。架構這個詞有點彆扭,是這幾年才說得比較多的乙個詞語。沒有感覺就順便先說幾句。

從問題出發,我們要解決乙個應用系統,實現其目標,並不是一件容易的事。這裡不再掉書包說以前的方法了,就說眼前的。眼前的架構不管其名稱是什麼有一點是共同的,那就是多層結構,最普遍的是三層結構。為什麼是多層而不是一層或兩層,這個是科技發展過來的,說不上什麼道理。這好比以前建磚瓦房,現在建框架房一樣,將梁和牆分開被事實證明是乙個正確的選擇。

普通的三層結構,一般分為資料層,業務層和ui,資料層簡而言之是是實現資料訪問,資料關係,核心就是資料庫。對於普通的應用而言,oracle,db2和mysql沒什麼區別,因此在這一層裡應該沒什麼貓尿才對。但恰恰相反,不知道是我理解不深還是沒做過什麼大系統的緣故,這裡有orm,有jdo,有active record(剛剛看過介紹文章),天啦,尿多去了。(全是因為oo建模的關係)

資料層不討論了,因為我的觀點這時候不用說讀者也明白了,與其說出來找罵不如保留觀點。業務層的內容就多了,有很多人認為乙個系統的核心就是這層內容了。我認為這層很重要,系統實際上是run在這層上的。但是這個層不是核心,核心是兩個,一是資料層和業務層的設計以使既能夠滿足業務需求,又能夠適應需求變化的要求。這話說起來有些拗口,沒關係,老外已經把這個總結為「分析模式」了,當我看到這本書的時候,我不是感到激動,而是佩服,佩服he能夠把這麼寶貴的經驗拿出來,而且還整理得這麼好。對於這個核心,我要說的是,不是了解或者掌握了oo建模就能夠把這件事情幹好的,因為按照oo建模的理論,是要將現實世界對映到oo,而對映的結果將會很多,分析模式中提供的方案絕不會是最直觀的。這裡面充滿了技巧和經驗。

另乙個核心也和需求所反映的邏輯關係無關,另一句拗口的句子,將業務層換成了ui層。那就是切身體會的理解使用者的ui操作體驗,用一把小刀修修你的資料層。要獲得美麗的容顏,僅僅靠化妝品是不夠的,適當的修修內功,內外兼收才能培養出絕色美女。

關於應用系統核心的觀點有很多人會不同意,管別人怎麼想做什麼呢,我既然寫了出來,我就先佔據了主動,不是嗎?又要待續了,因為財務的原因,買的房子樓層低,有蚊子了,還是用火點的蚊香可靠些,技術裡也有很多像老蚊香一樣實實在在的東西,不要丟掉哦!

架構之美隨筆五 語言與架構

美 作為軟體架構的口號,並不是由旁觀者來判定的。其實早就存在一些明確的標準。可靠性 該架構能否幫助我們建立出正確 健壯的軟體。可擴充套件性 應對變化是否很容易。復用性 該解決方案是否具有同樣性,或者甚至可以將其作為乙個元件直接插入到新的應用程式中,而無需做定製開發。這部分內容,作者從之前所概括的軟體...

對話 關於架構 設計與需求

2007年10月22日 10 12 00 wwe wwe 我這幾年的大部分工作也是偏重架構設計 aim 有什麼感想呢?wwe 個人覺得架構設計就像生活中的一部分 aim en.這個怎麼講?wwe 架構設計就像規劃你的生活一樣,都想把它變好 變美 aim 但是,你也應該知道。會有很多人 很多因素讓生活...

對話 關於架構 設計與需求

wwe wwe 我這幾年的大部分工作也是偏重架構設計 aim 有什麼感想呢?wwe 個人覺得架構設計就像生活中的一部分 aim en.這個怎麼講?wwe 架構設計就像規劃你的生活一樣,都想把它變好 變美 aim 但是,你也應該知道。會有很多人 很多因素讓生活變得不美好。wwe 當然 wwe 但有乙個...