企業(yè)應(yīng)用架構(gòu)模式

出版時(shí)間:2010-4  出版社:機(jī)械工業(yè)  作者:Martin Fowler  頁數(shù):363  譯者:王懷民,周斌  
Tag標(biāo)簽:無  

前言

“每一個(gè)模式描述了一個(gè)在我們周圍不斷重復(fù)發(fā)生的問題,以及該問題的解決方案的核心。這樣,你就能一次又一次地使用該方案而不必做重復(fù)勞動。” —Christopher Alexander 本書是面向?qū)ο蟠髱烳artin Fowler繼《Analysis Patterns》、《UML Distilled》、《Planning Extreme Programming》、《Refactoring》之后的又一力作。 “溫故而知新”。Fowler在本書中再次向我們證明了《禮記》中這句古訓(xùn)的震撼力—他在回頭審視自己及同仁多年來從事企業(yè)應(yīng)用開發(fā)的經(jīng)驗(yàn)和教訓(xùn)后,歸納總結(jié)了40多種企業(yè)應(yīng)用架構(gòu)的設(shè)計(jì)模式。這些模式從不同層次、不同側(cè)面向我們展示了什么是好的企業(yè)應(yīng)用架構(gòu)?如何設(shè)計(jì)好的企業(yè)應(yīng)用? 正如作者自己所言,企業(yè)應(yīng)用在某些方面比其他軟件(如電信通信軟件)復(fù)雜得多:紛繁復(fù)雜的企業(yè)數(shù)據(jù)、“不合邏輯”的業(yè)務(wù)規(guī)則、變化莫測的用戶需求,等等。環(huán)顧四周—CORBA、J2EE、.NET—企業(yè)應(yīng)用開發(fā)技術(shù)可謂“前仆后繼、層出不窮”,開發(fā)平臺的種類之多就更不必說。 招式套路可以千變?nèi)f化,扎實(shí)深厚的“內(nèi)功”卻是始終如一!雖然企業(yè)應(yīng)用涉及的軟件技術(shù)不斷翻新,但是基本的架構(gòu)及設(shè)計(jì)思想?yún)s沒有太多變化。將以前行之有效的設(shè)計(jì)思路和方法加以適當(dāng)調(diào)整,并應(yīng)用到當(dāng)前的問題上,是最高效的做法。在一組專家級合作者的幫助下,Martin將40多種經(jīng)常出現(xiàn)的解決方案轉(zhuǎn)化成模式,最終融會成這本“內(nèi)功心法”。在仔細(xì)研讀、用心揣摩本書之后,希望它能夠幫助你應(yīng)對任何一種企業(yè)應(yīng)用平臺,駕馭任何一種企業(yè)應(yīng)用技術(shù)—無論是現(xiàn)在的技術(shù)還是未來的技術(shù)。 熟悉Fowler的讀者都知道,這位大師的寫作風(fēng)格可謂是“深入淺出,娓娓道來”。本書也是一樣。前8章是關(guān)于企業(yè)應(yīng)用的背景知識,如分層架構(gòu)、Web表現(xiàn)、業(yè)務(wù)邏輯、數(shù)據(jù)庫映射、并發(fā)、會話、分布策略,等等。在此基礎(chǔ)上,隨后的各章分別對與這些背景知識相關(guān)的設(shè)計(jì)模式進(jìn)行了詳細(xì)的介紹。與其他設(shè)計(jì)模式的書一樣,本書從模式的使用場景、解決方案、UML表示等方面予以介紹,詳略有致。就連示例的編程語言的選取—Java和C#—也是與他的寫作風(fēng)格一脈相承的。 夜已深,窗外依舊是綿綿不斷的早春小雨。讓我們酌一杯清茶,一起來品味大師的話,一起來品味“源于實(shí)踐、指導(dǎo)實(shí)踐”的苦澀與甘甜— “模式的關(guān)鍵點(diǎn)是它們源于實(shí)踐。必須觀察人們的工作過程,發(fā)現(xiàn)其中好的設(shè)計(jì),并找出‘這些解決方案的核心’。這不是一個(gè)簡單的過程,但是一旦發(fā)現(xiàn)了某個(gè)模式,它將是非常有價(jià)值的。對于我來說,價(jià)值之一是能夠撰寫這樣一本參考書。你不必通讀本書的全部內(nèi)容,也不必通讀任何一本有關(guān)模式的書。只需要了解到這些模式都是干什么的、它們解決什么問題、它們是如何解決問題的,就足夠了。這樣,一旦你碰到類似問題,就可以從書中找出相應(yīng)的模式。那時(shí),你再深入了解相應(yīng)的模式也為時(shí)不晚?!?/pre>

內(nèi)容概要

本書作者是當(dāng)今面向?qū)ο筌浖_發(fā)的權(quán)威,他在一組專家級合作者的幫助下,將40多種經(jīng)常出現(xiàn)的解決方案轉(zhuǎn)化成模式,最終寫成這本能夠應(yīng)用于任何一種企業(yè)應(yīng)用平臺的、關(guān)于解決方案的、不可或缺的手冊。本書獲得了2003年度美國軟件開發(fā)雜志圖書類的生產(chǎn)效率獎和讀者選擇獎。本書分為兩大部分。第一部分是關(guān)于如何開發(fā)企業(yè)應(yīng)用的簡單介紹。第二部分是本書的主體,是關(guān)于模式的詳細(xì)參考手冊,每個(gè)模式都給出使用方法和實(shí)現(xiàn)信息,并配以詳細(xì)的Java代碼或C#代碼示例。此外,整本書中還用了大量UML圖來進(jìn)一步闡明有關(guān)概念。  本書是為致力于設(shè)計(jì)和構(gòu)建企業(yè)應(yīng)用的軟件架構(gòu)師、設(shè)計(jì)人員和編程人員而寫的,同時(shí)也可作為高等院校計(jì)算機(jī)專業(yè)及軟件學(xué)院相關(guān)課程的參考教材。

作者簡介

Martin Fowler是一位獨(dú)立咨詢顧問,他運(yùn)用對象技術(shù)解決企業(yè)問題已經(jīng)超過十年。他的顧問領(lǐng)域包括健康管理、金融貿(mào)易,以及法人財(cái)務(wù)。他的客戶包括Chrysler,Citibank,UK National Health Service,AndersenConsulting,NetscapeCommunications。此外Fowler也是objects、UML、

書籍目錄

譯者序 前言 模式列表 引言 第一部分 表 述  第1章 分層  第2章 組織領(lǐng)域邏輯  第3章 映射到關(guān)系數(shù)據(jù)庫  第4章 Web表現(xiàn)層  第5章 并發(fā)  第6章 會話狀態(tài)  第7章 分布策略  第8章 通盤考慮 第二部分 模 式  第9章 領(lǐng)域邏輯模式  第10章 數(shù)據(jù)源架構(gòu)模式  第11章 對象-關(guān)系行為模式  第12章 對象-關(guān)系結(jié)構(gòu)模式  第13章 對象-關(guān)系元數(shù)據(jù)映射模式  第14章 Web表現(xiàn)模式  第15章 分布模式  第16章 離線并發(fā)模式  第17章 會話狀態(tài)模式  第18章 基本模式 參考文獻(xiàn)

章節(jié)摘錄

插圖:我雖然沒有從事過早期批處理系統(tǒng)時(shí)期的任何工作,但我認(rèn)為當(dāng)時(shí)的軟件工作人員不會太關(guān)注層次的概念,只要編寫操作某些文件(ISAM、VSAM等)格式的程序,這就是當(dāng)時(shí)的應(yīng)用。它不需要層次。20世紀(jì)90年代,隨著客戶/服務(wù)器系統(tǒng)的出現(xiàn),分層的概念更明顯了。這樣的系統(tǒng)是一種兩個(gè)層次的系統(tǒng):客戶端包括用戶界面和其他應(yīng)用代碼,服務(wù)器端通常是關(guān)系型數(shù)據(jù)庫。常見的客戶端工具如VB、PowerBuilder和Delphi。這些工具使得構(gòu)建數(shù)據(jù)密集型應(yīng)用非常容易。因?yàn)樗鼈兊挠脩艚缑婵丶ǔ6际荢QL感知的。因此,可以通過將控件拖拽到“設(shè)計(jì)區(qū)域”來建立界面,然后再使用屬性表單把控件連接到后臺數(shù)據(jù)庫。如果應(yīng)用僅僅包括關(guān)系數(shù)據(jù)的簡單顯示和修改,那么這種客戶/服務(wù)器系統(tǒng)的工作方式非常合適。問題來自領(lǐng)域邏輯:如業(yè)務(wù)規(guī)則、驗(yàn)證、計(jì)算等。通常,人們會把它們寫在客戶端,但是這樣很笨拙,并且往往把領(lǐng)域邏輯直接嵌入到用戶界面。隨著領(lǐng)域邏輯的不斷復(fù)雜化,這些代碼將越來越難以使用。而且,這樣做很容易產(chǎn)生冗余代碼,這意味著簡單的變化都會導(dǎo)致要在很多界面中尋找相似代碼。另外一種辦法是把這些領(lǐng)域邏輯放到數(shù)據(jù)庫端,作為存儲過程。但是,存儲過程只提供有限的結(jié)構(gòu)化機(jī)制,這將再次導(dǎo)致笨拙的代碼。而且,很多人喜歡關(guān)系型數(shù)據(jù)庫的原因之一是SQL是一個(gè)標(biāo)準(zhǔn),允許他們更換數(shù)據(jù)庫廠商。盡管真正更換數(shù)據(jù)庫廠商的用戶寥寥無幾,但還是有很多人希望擁有這種選擇,并且沒有太大的附加代價(jià)。由于存儲過程都是數(shù)據(jù)庫廠商私有的,因此普通用戶被剝奪了這種選擇權(quán)。在客戶/服務(wù)器方式逐漸大眾化的同時(shí),面向?qū)ο蠓绞介_始崛起。面向?qū)ο鬄轭I(lǐng)域邏輯的問題找到了答案:轉(zhuǎn)到三層架構(gòu)的系統(tǒng)。在這種方式下,在表現(xiàn)層實(shí)現(xiàn)用戶界面,在領(lǐng)域?qū)訉?shí)現(xiàn)領(lǐng)域邏輯,在數(shù)據(jù)源層存取數(shù)據(jù)。這種方式使你可以將復(fù)雜的領(lǐng)域邏輯從界面代碼中抽取出來,單獨(dú)放到中間層,用對象加以建模和組織。

編輯推薦

《企業(yè)應(yīng)用架構(gòu)模式》:企業(yè)應(yīng)用開發(fā)的實(shí)踐得益于多種新技術(shù)的出現(xiàn),多層的面向?qū)ο笃脚_(如Java、.NET)已經(jīng)日漸平常。這些新工具和新技術(shù)有能力構(gòu)建更強(qiáng)大的企業(yè)應(yīng)用程序,但是在實(shí)現(xiàn)上還不太容易。由于開發(fā)人員未能充分理解有經(jīng)驗(yàn)的對象程序開發(fā)人員在架構(gòu)方面的經(jīng)驗(yàn)和教訓(xùn).因此企業(yè)應(yīng)用中經(jīng)常存在一些共同的錯(cuò)誤?!镀髽I(yè)應(yīng)用架構(gòu)模式》就是面向企業(yè)應(yīng)用開發(fā)者的,可幫助他們迎接這種艱難挑戰(zhàn)?!镀髽I(yè)應(yīng)用架構(gòu)模式》的作者M(jìn)a riin Fowler注意到,盡管技術(shù)本身存在變化——從Smalltalk到CORBA,再到。Java和NET,但基本的設(shè)計(jì)思想并沒有太多變化.可以加以適當(dāng)調(diào)整,用來解決那些共同的問題。在一組專家級合作者的幫助下,作者將40多種經(jīng)常出現(xiàn)的解決方案轉(zhuǎn)化成模式,最終寫成這本能夠應(yīng)用于任何一種企業(yè)應(yīng)用平臺的、關(guān)于解決方案的、不可或缺的手冊?!镀髽I(yè)應(yīng)用架構(gòu)模式》曾于2002年榮獲美國軟件開發(fā)雜志圖書類的生產(chǎn)效率獎和讀者選擇獎。《企業(yè)應(yīng)用架構(gòu)模式》涉及兩部分內(nèi)容。第一部分是關(guān)于如何開發(fā)企業(yè)應(yīng)用的簡單介紹。在閱讀這部分時(shí).讀者可以從頭到尾通讀,以掌握《企業(yè)應(yīng)用架構(gòu)模式》的范圍。第二部分是《企業(yè)應(yīng)用架構(gòu)模式》的主體,是關(guān)于模式的詳細(xì)參考手冊.每個(gè)模式都給出使用方法和實(shí)現(xiàn)信息,并配有詳細(xì)的Java代碼或C#代碼的示例。此外,整《企業(yè)應(yīng)用架構(gòu)模式》中還用了大量UML圖來進(jìn)一步闡明有關(guān)概念。《企業(yè)應(yīng)用架構(gòu)模式》主要內(nèi)容:將企業(yè)應(yīng)用分層組織企業(yè)業(yè)務(wù)邏輯的主要方法在對象和關(guān)系數(shù)據(jù)庫之間進(jìn)行映射的深層次解決方案通過模型一視圖一控制器來組織Web表現(xiàn)處理跨多事務(wù)的數(shù)據(jù)的并發(fā)問題設(shè)計(jì)分布式對象接口

圖書封面

圖書標(biāo)簽Tags

評論、評分、閱讀與下載


    企業(yè)應(yīng)用架構(gòu)模式 PDF格式下載


用戶評論 (總計(jì)124條)

 
 

  •   本書對企業(yè)級軟件架構(gòu)過程中的各種模式做了詳細(xì)的介紹,雖然是以JAVA語言做的示例,但是對分層模式的分析在各種語言的軟件開發(fā)上面都有很好的借鑒意義
  •   總結(jié)了有經(jīng)驗(yàn)的面向?qū)ο蟮拈_發(fā)人員在架構(gòu)方面的經(jīng)驗(yàn)和教訓(xùn),揭示了企業(yè)中常存在的一些共同的錯(cuò)誤,介紹了解決方案
  •   書已讀完,感覺本書屬于地圖性質(zhì),想要什么進(jìn)里面找即可,作者的歸納總結(jié)能之強(qiáng)令人折服。讀過之后,腦中會有一個(gè)企業(yè)開發(fā)的大局觀,從某種程度講,可以做到有的放矢的去架構(gòu)應(yīng)用。另外打個(gè)廣告:我有一個(gè)群73607476 希望能在里面與眾多同行多多交流。在這個(gè)浮躁的社會,能夠安心學(xué)習(xí)的人依然很多,我們并不孤單。
  •   我是學(xué)C#的,所以看這本書里的示例代碼覺得有些不太好懂,同時(shí)書中的插圖也很難懂,看不懂圖中所表示的具體流程是什么。但我想這應(yīng)該不是書的原因,而是自己的水平有限,所以這本書看著是非常好的,但不適合新手,尤其是沒有接觸過架構(gòu)的新手。
    總之,雖然不太好懂,但推薦大家看,畢竟搞程序就是得學(xué)一些深一些的東西!
  •   值得一度,會對企業(yè)應(yīng)用開發(fā)的架構(gòu)有一定的了解
  •   java企業(yè)應(yīng)用設(shè)計(jì)必看的書
  •   很好的一本書。以前做過很多項(xiàng)目,使用了很多編程手法,框架,但一直沒有一個(gè)好的總結(jié);通過這本書很好的完成了這個(gè)工作;使得我對企業(yè)架構(gòu)設(shè)計(jì)又上了一個(gè)新的臺階。
  •   不知道是不是功力不名夠還是什么原因,這本書現(xiàn)在暫時(shí)看不懂,而且翻譯得很晦澀。如果只是講設(shè)計(jì)模式的話,還沒有國內(nèi)一個(gè)作者的“大話****”寫得好!先收起來,以后再看了!
  •   一個(gè)程序員,工作兩三年后感覺似乎已經(jīng)達(dá)到瓶頸了,很難在已學(xué)的東西范圍內(nèi)再有突破,想學(xué)習(xí)新東西,又一時(shí)找不到去學(xué)什么。那么請讀讀這本書。
    書上從企業(yè)架構(gòu)的角度講述了架構(gòu)的知識,也提及到了需要用到的框架和準(zhǔn)備知識。如果對后者的內(nèi)容足以了解或熟練使用,那么這個(gè)程序員已經(jīng)是高級程序員了。
  •   Martin Fowler出品,必屬精品
  •   對學(xué)習(xí)軟件架構(gòu)來說很不錯(cuò)的一本書,可以時(shí)常翻翻!
  •   剛讀完第三章,結(jié)合自己的項(xiàng)目很有收獲。也許這的確是本好書,也許需要感謝譯者和審校的UML China沒有把這本書翻譯爛,但愿后面的章節(jié)有同樣的收獲。
  •   寫的比較詳細(xì) 有深度
  •   買來了解下如何進(jìn)行系統(tǒng)架構(gòu)。有點(diǎn)幫助吧
  •   架構(gòu)師必備
  •   追求進(jìn)步的程序員都應(yīng)該來讀一下這本書,對做企業(yè)級開發(fā)的人很有幫助.
  •   這本書在現(xiàn)在看來是比較經(jīng)典,但是從技術(shù)上講已經(jīng)出現(xiàn)了太多可以替代的東西。
  •   學(xué)習(xí)企業(yè)級的架構(gòu)的經(jīng)典著作,受益匪淺
  •   作架構(gòu)的必讀之作~
  •   好書不用多說,喜歡,搞架構(gòu)的要讀
  •   有一定經(jīng)驗(yàn)的開發(fā)人員都應(yīng)該讀一讀的著作!
  •   圖書內(nèi)容與介紹完全一致
  •   大部分東西都是買給家人的,這本事是自己看
  •   學(xué)的技術(shù)比較零散,一直也不太懂東西是怎么跑起來的,這本書很不錯(cuò)
  •   專業(yè)書籍,值得一閱,很具有參考價(jià)值,推薦你購買
  •   適合有幾年開發(fā)經(jīng)驗(yàn)的程序員閱讀.經(jīng)典推薦,值得珍藏!
  •   我這里的新華書店沒貨,都尋好幾次了;
    目前的能力看這個(gè)正好,對設(shè)計(jì)幫助很大。
  •   好書,很有參考價(jià)值!~
  •   這本初看起來有些吃力,感覺內(nèi)容還是不錯(cuò),相信還是對我很有幫助,不急慢慢啃。
  •   flower出的幾本書都被奉為行業(yè)經(jīng)典。
  •   很好啊,這本書
  •   水平提升遇到瓶頸,可以看看這本書。
  •   非常不錯(cuò)的一本書。沒事了躺在床上慢慢看。
  •   很滿意這本書,可以當(dāng)工具書看。
  •   整書質(zhì)量不錯(cuò),希望內(nèi)容和書一樣。
  •   不知道是不是翻譯的問題,有些內(nèi)容讀起來感覺有點(diǎn)變扭,可能讀英文原版的更好,更容易理解作者的思路
  •   書已經(jīng)買到,正在閱讀中,挺好的
  •   不過是計(jì)算機(jī)高手看的呵呵
  •   工作實(shí)際中運(yùn)用真實(shí)
  •   權(quán)威書籍!不錯(cuò)!
  •   距離出版時(shí)間已經(jīng)很長了,
    不過好書卻永遠(yuǎn)不會過時(shí)。
  •   書很好,內(nèi)容有點(diǎn)陳舊,不過對思路很有幫助。
  •   就憑作者就值得購買了
  •   老師指定教材,考試需要,不得不下手。舉懂行人的說MS有點(diǎn)老,不太太有用啊
  •   學(xué)習(xí)中。。。。。。。。。
  •   中國當(dāng)當(dāng)?shù)臅桶儇?,還有服務(wù)就是好 ok
  •   很好的正版書,我很喜歡,現(xiàn)在天天看
  •   工具書,多理解與實(shí)踐
  •   這個(gè)商品不錯(cuò)翻譯的挺到位的,不過要是能把一些關(guān)鍵名詞(定義)保留英文就更好了。畢竟是英文原版翻譯,有時(shí)會不知道在說什么
  •   非常好的一本書,值得一看.
  •   書本不錯(cuò),還好還好,給同事買的
  •   很好的書,很多東西都能在書上找到
  •   是正版,快遞也給力
  •   挺好挺好挺好挺好挺好挺好挺好挺好挺好挺好挺好挺好挺好
  •   快遞很快快遞很快
  •   還沒看完,但真心覺得不錯(cuò)。贊啊
  •   包裝很好還沒看
  •   我的同事非常喜歡!
  •   架構(gòu)師必備的書籍
  •   很好,謝謝了
  •   經(jīng)典書籍,必須推薦~~
  •   沒仔細(xì)看,不錯(cuò)
  •   無須解釋
  •   與想要的東西有點(diǎn)差異
  •   好書需要慢慢品味
  •   Good article.
  •   大家執(zhí)筆,不錯(cuò)
  •   以前看過一半,早想著買本再讀一次,書很好,值得買
  •   送貨相當(dāng)快,書也挺好的
  •   公司購買學(xué)習(xí),還可以。
  •   書的印刷質(zhì)量不錯(cuò),內(nèi)容質(zhì)量也挺好的。
  •   經(jīng)典之作,必須收藏
  •   剛看了一半。感覺還不錯(cuò)。就是有些地方有些抽象
  •   程序員必讀之書??!
  •   給單位買的,大家都覺得挺贊
  •   福勒的書,本本都是經(jīng)典
  •   需要仔細(xì)閱讀一下,開拓自己的思路
  •   對工作3年以上的開發(fā)者來講收獲很大
  •   非常經(jīng)典,絕對要看.
  •   書非常好,很實(shí)用。
  •   整體來說還是一本很不錯(cuò)的書,不過感覺還是要有一定的實(shí)戰(zhàn)經(jīng)驗(yàn),否則會很難讀懂。
  •   這個(gè)就不用多說了,推薦
  •   對數(shù)據(jù)層的描述很精彩,不過感覺內(nèi)容有過時(shí)了
  •   工作需要,很不錯(cuò),講的深入淺出
  •   想看這方面的書,看評價(jià)還行就下單的,還不錯(cuò),能學(xué)到東西
  •   目前的程度,看起來有些吃力
  •   書的內(nèi)容具有引導(dǎo)性,值得一看
  •   不錯(cuò)的書,贊
  •   幫朋友買的,她很喜歡。如獲至寶。
  •   書是好書??爝f太慢了!?。。。?!
  •   對我有很大的啟發(fā)。
  •   發(fā)貨很快,物流也很速度,書也不錯(cuò),正在閱讀,給個(gè)好評!
  •   至少我看了前面三章是這樣,我想這是翻譯的水平吧,原本內(nèi)容是不錯(cuò)的
  •   開闊思路,開拓眼界之好書
  •   經(jīng)典不用我說了。 這次紙質(zhì)也不錯(cuò)。 呵呵!
  •   it\'s good
  •   很好,是正版,價(jià)格也便宜
  •   為什么制度重要為什么制度重要
  •   真的很不錯(cuò),棒??!
  •   書還沒看,但沒有破頁,脫膠的,總體還行。
 

250萬本中文圖書簡介、評論、評分,PDF格式免費(fèi)下載。 第一圖書網(wǎng) 手機(jī)版

京ICP備13047387號-7