企业应用架构模式

企业应用架构模式
分享
扫描下方二维码分享到微信
打开微信,点击右上角”+“,
使用”扫一扫“即可将网页分享到朋友圈。
作者: [美]
2009-06
版次: 1
ISBN: 9787115204226
定价: 79.00
装帧: 平装
开本: 16开
纸张: 胶版纸
页数: 533页
字数: 667千字
正文语种: 英语
原版书名: Patterns of Enterprise Application Architecture
分类: 管理
53人买过
  •   面向对象大师MartinFowler及其专家级合作者将40多种常用解决方案转化成模式,为我们提供了这本能够应用于任何一种企业应用平台的、关于解决方案的参考书。《企业应用架构模式(英文版)》叙述深入浅出,采用大量UML图进一步阐明有关概念。前面介绍企业应用的背景知识,如分层架构、Web表现、业务逻辑、数据库映射、并发、会话、分布策略等。在此基础上,随后的各章分别对与这些背景知识相关的设计模式进行了详细的介绍,并配以详细的Java代码或C#代码示例。《企业应用架构模式(英文版)》适合设计和构建企业应用的软件架构师、设计人员和编程人员阅读,同时也可作为高等院校计算机专业及软件学院相关课程的参考教材。   MartinFowler:享誉世界的软件开发大师。现为著名软件开发咨询公司ThoughtWorks的首席科学家。他在面向对象分析与设计、UML、设计模式、软件开发方法学、XP、重构等方面都有重要贡献。他更全球最具影响力的技术作家之一,除本书外,他的《分析模式》、《UML精粹》和《重构》等著作都已经成为经典。 Prefacexvii
    WhoThisBookIsForxx
    Acknowledgmentsxxi
    Colophonxxiii
    Introduction1
    Architecture1
    EnterpriseApplications2
    KindsofEnterpriseApplication5
    ThinkingAboutPerformance6
    Patterns9
    TheStructureofthePatterns11
    LimitationsofThesePatterns13

    PART1:TheNarratives15
    Chapter1:Layering17
    TheEvolutionofLayersinEnterpriseApplications18
    TheThreePrincipalLayers19
    ChoosingWheretoRunYourLayers22
    Chapter2:OrganizingDomainLogic25
    MakingAChoice29
    ServiceLayer30
    Chapter3:MappingtoRelationalDatabases33
    ArchitecturalPatterns33
    TheBehavioralProblem38
    ReadinginData40
    StructuralMappingPatterns41
    MappingRelationships41
    Inheritance45
    BuildingtheMapping47
    DoubleMapping48
    UsingMetadata49
    DatabaseConnections50
    SomeMiscellaneousPoints52
    FurtherReading53
    Chapter4:WebPresentation55
    ViewPatterns58
    InputControllerPatterns61
    FurtherReading61
    Chapter5:Concurrency(byMartinFowlerAndDavidRice)63
    ConcurrencyProblems64
    ExecutionContexts65
    IsolationAndImmutability66
    OptimisticAndPessimisticConcurrencyControl67
    PreventingInconsistentReads68
    Deadlocks70
    Transactions71
    ACID71
    TransactionalResources72
    ReducingTransactionIsolationforLiveness73
    BusinessAndSystemTransactions74
    PatternsforOfflineConcurrencyControl76
    ApplicationServerConcurrency78
    FurtherReading80
    Chapter6:SessionState81
    TheValueofStatelessness81
    SessionState83
    WaystoStoreSessionState84
    Chapter7:DistributionStrategies87
    TheAllureofDistributedObjects87
    RemoteAndLocalInterfaces88
    WhereYouHavetoDistribute90
    WorkingwiththeDistributionBoundary91
    InterfacesforDistribution92
    Chapter8:PuttingItAllTogether95
    StartingwiththeDomainLayer96
    DowntotheDataSourceLayer97
    DataSourceforTransactionScript(11O)97
    DataSourceforTableModule(125)98
    DataSourceforDomainModel(116)98
    ThePresentationLayer99
    SomeTechnology-SpecificAdvice100
    JavaAndJ2EE100
    NET101
    StoredProcedures102
    WebServices103
    OtherLayeringSchemes103

    PART2:ThePatterns107
    Chapter9:DomainLogicPatterns109
    TransactionScript110
    HowItWorks110
    WhentoUseIt111
    TheRevenueRecognitionProblem112
    Example:RevenueRecognition(Java)113
    DomainModel116
    HowItWorks116
    WhentoUseIt119
    FurtherReading119
    Example:RevenueRecognition(Java)120
    TableModule125
    HowItWorks126
    WhentoUseIt128
    Example:RevenueRecognitionwithATableModule(C#)129
    ServiceLayer(byRandyStafford)133
    HowItWorks134
    WhentoUseIt137
    FurtherReading137
    Example:RevenueRecognition(Java)138
    Chapter10:DataSourceArchitecturalPatterns143
    TableDataGateway144
    HowItWorks144
    WhentoUseIt145
    FurtherReading146
    Example:PersonGateway(C#)146
    Example:UsingADONETDataSets(C#)148
    RowDataGateway152
    HowItWorks152
    WhentoUseIt153
    Example:APersonRecord(Java)155
    Example:ADataHolderforADomainObject(Java)158
    ActiveRecord160
    HowItWorks160
    WhentoUseIt161
    Example:ASimplePerson(Java)162
    DataMapper165
    HowItWorks165
    WhentoUseIt170
    Example:ASimpleDatabaseMapper(Java)171
    Example:SeparatingtheFinders(Java)176
    Example:CreatingAnEmptyObject(Java)179
    Chapter11:Object-RelationalBehavioralPatterns183
    UnitofWork184
    HowItWorks184
    WhentoUseIt189
    Example:UnitofWorkwithObjectRegistration(Java)
    (byDavidRice)190
    IdentityMap195
    HowItWorks195
    WhentoUseIt198
    Example:MethodsforAnIdentityMap(Java)198
    LazyLoad200
    HowItWorks200
    WhentoUseIt203
    Example:LazyInitialization(Java)203
    Example:VirtualProxy(Java)203
    Example:UsingAValueHolder(Java)205
    Example:UsingGhosts(C#)206
    3hapter12:Object-RelationalStructuralPatterns215
    IdentityField216
    HowItWorks216
    WhentoUseIt220
    FurtherReading221
    Example:IntegralKey(C#)221
    Example:UsingAKeyTable(Java)222
    Example:UsingACompoundKey(Java)224
    ForeignKeyMapping236
    HowItWorks236
    WhentoUseIt239
    Example:Single-ValuedReference(Java)240
    Example:MultitableFind(Java)243
    Example:CollectionofReferences(C#)244
    AssociationTableMapping248
    HowItWorks248
    WhentoUseIt249
    Example:EmployeesAndSkills(C#)250
    Example:UsingDirectSQL(Java)253
    Example:UsingASingleQueryforMultipleEmployees(Java)
    (byMattFoemmelAndMartinFowler)256
    DependentMapping262
    HowItWorks262
    WhentoUseIt263
    Example:AlbumsAndTracks(Java)..264
    EmbeddedValue268
    HowItWorks268
    WhentoUseIt268
    FurtherReading270
    Example:SimpleValueObject(Java)270
    SerializedLOB272
    HowItWorks272
    WhentoUseIt274
    Example:SerializingADepartmentHierarchyin
    XML(Java)274
    SingleTableInheritance278
    HowItWorks278
    WhentoUseIt279
    Example:ASingleTableforPlayers(C#)280
    LoadingAnObjectfromtheDatabase281
    ClassTableInheritance285
    HowItWorks285
    WhentoUseIt286
    FurtherReading287
    Example:PlayersAndTheirKin(C#)287
    ConcreteTableInheritance293
    HowItWorks293
    WhentoUseIt295
    Example:ConcretePlayers(C#)296
    InheritanceMappers302
    HowItWorks303
    WhentoUseIt304
    Chapter13:Object-RelationalMetadataMappingPatterns305
    Chapter14:WebPresentationPatterns329
    Chapter15:DistributionPatterns387
    Chapter16:OfflineConcurrencyPatterns415
    Chapter17:SessionStatePatterns455
    Chapter18:BasePatterns465
    Index517
  • 内容简介:
      面向对象大师MartinFowler及其专家级合作者将40多种常用解决方案转化成模式,为我们提供了这本能够应用于任何一种企业应用平台的、关于解决方案的参考书。《企业应用架构模式(英文版)》叙述深入浅出,采用大量UML图进一步阐明有关概念。前面介绍企业应用的背景知识,如分层架构、Web表现、业务逻辑、数据库映射、并发、会话、分布策略等。在此基础上,随后的各章分别对与这些背景知识相关的设计模式进行了详细的介绍,并配以详细的Java代码或C#代码示例。《企业应用架构模式(英文版)》适合设计和构建企业应用的软件架构师、设计人员和编程人员阅读,同时也可作为高等院校计算机专业及软件学院相关课程的参考教材。
  • 作者简介:
      MartinFowler:享誉世界的软件开发大师。现为著名软件开发咨询公司ThoughtWorks的首席科学家。他在面向对象分析与设计、UML、设计模式、软件开发方法学、XP、重构等方面都有重要贡献。他更全球最具影响力的技术作家之一,除本书外,他的《分析模式》、《UML精粹》和《重构》等著作都已经成为经典。
  • 目录:
    Prefacexvii
    WhoThisBookIsForxx
    Acknowledgmentsxxi
    Colophonxxiii
    Introduction1
    Architecture1
    EnterpriseApplications2
    KindsofEnterpriseApplication5
    ThinkingAboutPerformance6
    Patterns9
    TheStructureofthePatterns11
    LimitationsofThesePatterns13

    PART1:TheNarratives15
    Chapter1:Layering17
    TheEvolutionofLayersinEnterpriseApplications18
    TheThreePrincipalLayers19
    ChoosingWheretoRunYourLayers22
    Chapter2:OrganizingDomainLogic25
    MakingAChoice29
    ServiceLayer30
    Chapter3:MappingtoRelationalDatabases33
    ArchitecturalPatterns33
    TheBehavioralProblem38
    ReadinginData40
    StructuralMappingPatterns41
    MappingRelationships41
    Inheritance45
    BuildingtheMapping47
    DoubleMapping48
    UsingMetadata49
    DatabaseConnections50
    SomeMiscellaneousPoints52
    FurtherReading53
    Chapter4:WebPresentation55
    ViewPatterns58
    InputControllerPatterns61
    FurtherReading61
    Chapter5:Concurrency(byMartinFowlerAndDavidRice)63
    ConcurrencyProblems64
    ExecutionContexts65
    IsolationAndImmutability66
    OptimisticAndPessimisticConcurrencyControl67
    PreventingInconsistentReads68
    Deadlocks70
    Transactions71
    ACID71
    TransactionalResources72
    ReducingTransactionIsolationforLiveness73
    BusinessAndSystemTransactions74
    PatternsforOfflineConcurrencyControl76
    ApplicationServerConcurrency78
    FurtherReading80
    Chapter6:SessionState81
    TheValueofStatelessness81
    SessionState83
    WaystoStoreSessionState84
    Chapter7:DistributionStrategies87
    TheAllureofDistributedObjects87
    RemoteAndLocalInterfaces88
    WhereYouHavetoDistribute90
    WorkingwiththeDistributionBoundary91
    InterfacesforDistribution92
    Chapter8:PuttingItAllTogether95
    StartingwiththeDomainLayer96
    DowntotheDataSourceLayer97
    DataSourceforTransactionScript(11O)97
    DataSourceforTableModule(125)98
    DataSourceforDomainModel(116)98
    ThePresentationLayer99
    SomeTechnology-SpecificAdvice100
    JavaAndJ2EE100
    NET101
    StoredProcedures102
    WebServices103
    OtherLayeringSchemes103

    PART2:ThePatterns107
    Chapter9:DomainLogicPatterns109
    TransactionScript110
    HowItWorks110
    WhentoUseIt111
    TheRevenueRecognitionProblem112
    Example:RevenueRecognition(Java)113
    DomainModel116
    HowItWorks116
    WhentoUseIt119
    FurtherReading119
    Example:RevenueRecognition(Java)120
    TableModule125
    HowItWorks126
    WhentoUseIt128
    Example:RevenueRecognitionwithATableModule(C#)129
    ServiceLayer(byRandyStafford)133
    HowItWorks134
    WhentoUseIt137
    FurtherReading137
    Example:RevenueRecognition(Java)138
    Chapter10:DataSourceArchitecturalPatterns143
    TableDataGateway144
    HowItWorks144
    WhentoUseIt145
    FurtherReading146
    Example:PersonGateway(C#)146
    Example:UsingADONETDataSets(C#)148
    RowDataGateway152
    HowItWorks152
    WhentoUseIt153
    Example:APersonRecord(Java)155
    Example:ADataHolderforADomainObject(Java)158
    ActiveRecord160
    HowItWorks160
    WhentoUseIt161
    Example:ASimplePerson(Java)162
    DataMapper165
    HowItWorks165
    WhentoUseIt170
    Example:ASimpleDatabaseMapper(Java)171
    Example:SeparatingtheFinders(Java)176
    Example:CreatingAnEmptyObject(Java)179
    Chapter11:Object-RelationalBehavioralPatterns183
    UnitofWork184
    HowItWorks184
    WhentoUseIt189
    Example:UnitofWorkwithObjectRegistration(Java)
    (byDavidRice)190
    IdentityMap195
    HowItWorks195
    WhentoUseIt198
    Example:MethodsforAnIdentityMap(Java)198
    LazyLoad200
    HowItWorks200
    WhentoUseIt203
    Example:LazyInitialization(Java)203
    Example:VirtualProxy(Java)203
    Example:UsingAValueHolder(Java)205
    Example:UsingGhosts(C#)206
    3hapter12:Object-RelationalStructuralPatterns215
    IdentityField216
    HowItWorks216
    WhentoUseIt220
    FurtherReading221
    Example:IntegralKey(C#)221
    Example:UsingAKeyTable(Java)222
    Example:UsingACompoundKey(Java)224
    ForeignKeyMapping236
    HowItWorks236
    WhentoUseIt239
    Example:Single-ValuedReference(Java)240
    Example:MultitableFind(Java)243
    Example:CollectionofReferences(C#)244
    AssociationTableMapping248
    HowItWorks248
    WhentoUseIt249
    Example:EmployeesAndSkills(C#)250
    Example:UsingDirectSQL(Java)253
    Example:UsingASingleQueryforMultipleEmployees(Java)
    (byMattFoemmelAndMartinFowler)256
    DependentMapping262
    HowItWorks262
    WhentoUseIt263
    Example:AlbumsAndTracks(Java)..264
    EmbeddedValue268
    HowItWorks268
    WhentoUseIt268
    FurtherReading270
    Example:SimpleValueObject(Java)270
    SerializedLOB272
    HowItWorks272
    WhentoUseIt274
    Example:SerializingADepartmentHierarchyin
    XML(Java)274
    SingleTableInheritance278
    HowItWorks278
    WhentoUseIt279
    Example:ASingleTableforPlayers(C#)280
    LoadingAnObjectfromtheDatabase281
    ClassTableInheritance285
    HowItWorks285
    WhentoUseIt286
    FurtherReading287
    Example:PlayersAndTheirKin(C#)287
    ConcreteTableInheritance293
    HowItWorks293
    WhentoUseIt295
    Example:ConcretePlayers(C#)296
    InheritanceMappers302
    HowItWorks303
    WhentoUseIt304
    Chapter13:Object-RelationalMetadataMappingPatterns305
    Chapter14:WebPresentationPatterns329
    Chapter15:DistributionPatterns387
    Chapter16:OfflineConcurrencyPatterns415
    Chapter17:SessionStatePatterns455
    Chapter18:BasePatterns465
    Index517
查看详情
系列丛书 / 更多
企业应用架构模式
机器学习实战
[美]Peter Harrington 著;李锐、李鹏、曲亚东 译
企业应用架构模式
图灵程序设计丛书:Python基础教程
[挪威]Magnus Lie Hetland 著;司维、曾军崴、谭颖华 译
企业应用架构模式
JavaScript高级程序设计(第3版)
[美]Nicholas C.Zakas 著;李松峰、曹力 译
企业应用架构模式
Python编程:从入门到实践
[美]埃里克·马瑟斯(Eric Matthes) 著;袁国忠 译
企业应用架构模式
R语言实战(第2版)
[美]卡巴科弗(Robert I. Kabacoff) 著;王小宁、刘撷芯、黄俊文 译
企业应用架构模式
算法(第4版)
[美]Robert、[美]Kevin Wayne 著;谢路云 译
企业应用架构模式
大数据:互联网大规模数据挖掘与分布式处理
[美]Anand、[美]Jeffrey David Ullman 著;王斌 译
企业应用架构模式
Spark快速大数据分析
[美]卡劳(Holden Karau)、[美]肯维尼斯科(Andy Konwinski)、[美]温德尔(Patrick Wendell)、[加拿大]扎哈里亚(Matei Zaharia) 著;王道远 译
企业应用架构模式
MySQL必知必会
[英]福塔(Ben Forta) 著;刘晓霞、钟鸣 译
企业应用架构模式
Objective-C基础教程 第2版
[美]Scott、[美]Waqar、[美]Mark Dalrymple 著;周庆成 译
企业应用架构模式
图解HTTP
[日]上野·宣 著;于均良 译
企业应用架构模式
算法图解
袁国忠 译
您可能感兴趣 / 更多
企业应用架构模式
孩子,把你的手给我1:怎么说孩子才爱听,怎么教孩子才肯学?帮助每一位3-12岁孩子的父母结束与孩子的所有冲突!
[美]海姆·G.吉诺特
企业应用架构模式
怎样做成大事
[美]丹·加德纳(Dan Gardner) 著;贾拥民 译;湛庐文化 出品;[丹麦]傅以斌(Bent Flyvbjerg)
企业应用架构模式
1200年希腊罗马神话
[美]伊迪丝·汉密尔顿
企业应用架构模式
爱情心理学(新编本)
[美]罗伯特·J. 斯腾伯格 (美)凯琳·斯腾伯格 倪爱萍 译
企业应用架构模式
黄金圈法则
[美]西蒙·斯涅克 著;磨铁文化 出品
企业应用架构模式
汤姆·索亚历险记 彩图注音版 一二三四年级5-6-7-8-9岁小学生课外阅读经典 儿童文学无障碍有声伴读世界名著童话故事
[美]马克 吐温
企业应用架构模式
富兰克林自传 名家全译本 改变无数人命运的励志传奇 埃隆马斯克反复推荐 赠富兰克林签名照及精美插图
[美]本杰明·富兰克林 著;李自修 译
企业应用架构模式
意大利文艺复兴新艺术史
[美]迈克尔·韦恩·科尔 著;[美]斯蒂芬·J·坎贝尔;邵亦杨
企业应用架构模式
汤姆素亚历险记:中小学生课外阅读快乐读书吧 儿童文学无障碍有声伴读世界名著童话故事
[美]马克·吐温
企业应用架构模式
老人与海 彩图注音版 一二三四年级5-6-7-8-9岁小学生课外阅读经典 儿童文学无障碍有声伴读世界名著童话故事
[美]海明威
企业应用架构模式
养育的觉醒:全面激发孩子自驱力,教你如何心平气和做妈妈
[美]凯文·莱曼 著;唐晓璐 译;斯坦威 出品
企业应用架构模式
国际大奖图画书系列 共11册(小老鼠的恐惧的大书,大灰狼,红豆与菲比,别烦我,下雪了 ,穿靴子的猫 ,先有蛋,绿 ,特别快递,如果你想看鲸鱼 ,一个部落的孩子 ) 麦克米伦世纪
[美]莱恩·史密斯 (英)埃米莉·格雷维特 (美)劳拉·瓦卡罗·等/文 (英)埃米莉·格雷维特 等/图 彭懿 杨玲玲 阿甲 孙慧阳 白薇 译