成功加入购物车
正版、现货、实物图片、当天发货
[美] 福勒 著 / 人民邮电出版社 / 2009-06 / 平装
售价 ¥ 60.00 7.6折
定价 ¥79.00
品相 八五品
优惠 满包邮
延迟发货说明
上书时间2020-11-29
卖家超过10天未登录
企业应用架构模式
面向对象大师MartinFowler及其专家级合作者将40多种常用解决方案转化成模式,为我们提供了这本能够应用于任何一种企业应用平台的、关于解决方案的参考书。《企业应用架构模式(英文版)》叙述深入浅出,采用大量UML图进一步阐明有关概念。前面介绍企业应用的背景知识,如分层架构、Web表现、业务逻辑、数据库映射、并发、会话、分布策略等。在此基础上,随后的各章分别对与这些背景知识相关的设计模式进行了详细的介绍,并配以详细的Java代码或C#代码示例。《企业应用架构模式(英文版)》适合设计和构建企业应用的软件架构师、设计人员和编程人员阅读,同时也可作为高等院校计算机专业及软件学院相关课程的参考教材。
MartinFowler:享誉世界的软件开发大师。现为著名软件开发咨询公司ThoughtWorks的首席科学家。他在面向对象分析与设计、UML、设计模式、软件开发方法学、XP、重构等方面都有重要贡献。他更全球最具影响力的技术作家之一,除本书外,他的《分析模式》、《UML精粹》和《重构》等著作都已经成为经典。
PrefacexviiWhoThisBookIsForxxAcknowledgmentsxxiColophonxxiiiIntroduction1Architecture1EnterpriseApplications2KindsofEnterpriseApplication5ThinkingAboutPerformance6Patterns9TheStructureofthePatterns11LimitationsofThesePatterns13PART1:TheNarratives15Chapter1:Layering17TheEvolutionofLayersinEnterpriseApplications18TheThreePrincipalLayers19ChoosingWheretoRunYourLayers22Chapter2:OrganizingDomainLogic25MakingAChoice29ServiceLayer30Chapter3:MappingtoRelationalDatabases33ArchitecturalPatterns33TheBehavioralProblem38ReadinginData40StructuralMappingPatterns41MappingRelationships41Inheritance45BuildingtheMapping47DoubleMapping48UsingMetadata49DatabaseConnections50SomeMiscellaneousPoints52FurtherReading53Chapter4:WebPresentation55ViewPatterns58InputControllerPatterns61FurtherReading61Chapter5:Concurrency(byMartinFowlerAndDavidRice)63ConcurrencyProblems64ExecutionContexts65IsolationAndImmutability66OptimisticAndPessimisticConcurrencyControl67PreventingInconsistentReads68Deadlocks70Transactions71ACID71TransactionalResources72ReducingTransactionIsolationforLiveness73BusinessAndSystemTransactions74PatternsforOfflineConcurrencyControl76ApplicationServerConcurrency78FurtherReading80Chapter6:SessionState81TheValueofStatelessness81SessionState83WaystoStoreSessionState84Chapter7:DistributionStrategies87TheAllureofDistributedObjects87RemoteAndLocalInterfaces88WhereYouHavetoDistribute90WorkingwiththeDistributionBoundary91InterfacesforDistribution92Chapter8:PuttingItAllTogether95StartingwiththeDomainLayer96DowntotheDataSourceLayer97DataSourceforTransactionScript(11O)97DataSourceforTableModule(125)98DataSourceforDomainModel(116)98ThePresentationLayer99SomeTechnology-SpecificAdvice100JavaAndJ2EE100NET101StoredProcedures102WebServices103OtherLayeringSchemes103PART2:ThePatterns107Chapter9:DomainLogicPatterns109TransactionScript110HowItWorks110WhentoUseIt111TheRevenueRecognitionProblem112Example:RevenueRecognition(Java)113DomainModel116HowItWorks116WhentoUseIt119FurtherReading119Example:RevenueRecognition(Java)120TableModule125HowItWorks126WhentoUseIt128Example:RevenueRecognitionwithATableModule(C#)129ServiceLayer(byRandyStafford)133HowItWorks134WhentoUseIt137FurtherReading137Example:RevenueRecognition(Java)138Chapter10:DataSourceArchitecturalPatterns143TableDataGateway144HowItWorks144WhentoUseIt145FurtherReading146Example:PersonGateway(C#)146Example:UsingADONETDataSets(C#)148RowDataGateway152HowItWorks152WhentoUseIt153Example:APersonRecord(Java)155Example:ADataHolderforADomainObject(Java)158ActiveRecord160HowItWorks160WhentoUseIt161Example:ASimplePerson(Java)162DataMapper165HowItWorks165WhentoUseIt170Example:ASimpleDatabaseMapper(Java)171Example:SeparatingtheFinders(Java)176Example:CreatingAnEmptyObject(Java)179Chapter11:Object-RelationalBehavioralPatterns183UnitofWork184HowItWorks184WhentoUseIt189Example:UnitofWorkwithObjectRegistration(Java)(byDavidRice)190IdentityMap195HowItWorks195WhentoUseIt198Example:MethodsforAnIdentityMap(Java)198LazyLoad200HowItWorks200WhentoUseIt203Example:LazyInitialization(Java)203Example:VirtualProxy(Java)203Example:UsingAValueHolder(Java)205Example:UsingGhosts(C#)2063hapter12:Object-RelationalStructuralPatterns215IdentityField216HowItWorks216WhentoUseIt220FurtherReading221Example:IntegralKey(C#)221Example:UsingAKeyTable(Java)222Example:UsingACompoundKey(Java)224ForeignKeyMapping236HowItWorks236WhentoUseIt239Example:Single-ValuedReference(Java)240Example:MultitableFind(Java)243Example:CollectionofReferences(C#)244AssociationTableMapping248HowItWorks248WhentoUseIt249Example:EmployeesAndSkills(C#)250Example:UsingDirectSQL(Java)253Example:UsingASingleQueryforMultipleEmployees(Java)(byMattFoemmelAndMartinFowler)256DependentMapping262HowItWorks262WhentoUseIt263Example:AlbumsAndTracks(Java)..264EmbeddedValue268HowItWorks268WhentoUseIt268FurtherReading270Example:SimpleValueObject(Java)270SerializedLOB272HowItWorks272WhentoUseIt274Example:SerializingADepartmentHierarchyinXML(Java)274SingleTableInheritance278HowItWorks278WhentoUseIt279Example:ASingleTableforPlayers(C#)280LoadingAnObjectfromtheDatabase281ClassTableInheritance285HowItWorks285WhentoUseIt286FurtherReading287Example:PlayersAndTheirKin(C#)287ConcreteTableInheritance293HowItWorks293WhentoUseIt295Example:ConcretePlayers(C#)296InheritanceMappers302HowItWorks303WhentoUseIt304Chapter13:Object-RelationalMetadataMappingPatterns305Chapter14:WebPresentationPatterns329Chapter15:DistributionPatterns387Chapter16:OfflineConcurrencyPatterns415Chapter17:SessionStatePatterns455Chapter18:BasePatterns465Index517
展开全部
配送说明
...
相似商品
为你推荐
开播时间:09月02日 10:30