书籍详情
.NET软件架构之美(英文版)
作者:(意)埃斯波西托,(意)索尔塔雷罗 著
出版社:人民邮电出版社
出版时间:2009-09-01
ISBN:9787115200181
定价:¥69.00
购买这本书可以去
内容简介
《.NET软件架构之美(英文版)》出自两位具有多年软件开发经验的 ASP .NET专家、作者和培训师之手,内容涉及多层架构、设计模式以及设计原则。第一部分简要介绍 UML、设计原则及模式;第二部分从技术架构角度讨论分层设计。《.NET软件架构之美(英文版)》行文流畅,语言通俗易懂,阐述了各种架构设计技术方案的优与劣,并讲述了如何在优与劣中做出权衡。中设计了真实的场景,展示了如何将这些设计原则更加具体地应用到 .NET应用程序中。《.NET软件架构之美(英文版)》适合各层次 .NET开发人员阅读。
作者简介
DinoEsposito,.NET和软件架构技术方面的世界级权威,微软ASP.NETMVP。目前就职于著名的.NET技术咨询公司IDesign。他是广受欢迎的技术作家。担任MSDNMagazine特邀专栏作家多年。并撰有ProgrammingASP.NET-3.5CoreReferences等名著。AndreaSaItareIIo,微软ASP.NETMVP。意大利.NET用户组负责人。现任ManagedDesigns公司首席软件架构师。
目录
Part I Principles
1 Architects and Architecture Today
What's a Software Architecture, Anyway?
Applying Architectural Principles to Software
What's Architecture and What's Not
Architecture Is About Decisions
Requirements and Quality of Software
Who's the Architect, Anyway?
An Architect's Responsibilities
How Many Types of Architects Do You Know?
Common Misconceptions About Architects
Overview of the Software Development Process
The Software Life Cycle
Models for Software Development
Summary
Murphy's Laws of the Chapter
2 UML Essentials
UML at a Glance
Motivation for and History of Modeling Languages
UML Modes and Usage
UML Diagrams
Use-Case Diagrams
Class Diagrams
Sequence Diagrams
Summary
Murphy's Laws of the Chapter
3 Design Principles and Patterns
Basic Design Principles
For What the Alarm Bell Should Ring
Structured Design
Separation of Concerns
Object-Oriented Design
Basic OOD Principles
Advanced Principles
From Principles to Patterns
What's a Pattern, Anyway?
Patterns vs. Idioms
Dependency Injection
Applying Requirements by Design
Testability
Security
From Objects to Aspects
Aspect-Oriented Programming
AOP in Action
Summary
Murphy's Laws of the Chapter
Part II Design of the System
4 The Business Layer
What's the Business Logic Layer, Anyway?
Dissecting the Business Layer
Where Would You Fit the BLL?
Business and Other Layers
Patterns for Creating the Business Layer
The Transaction Script Pattern
Generalities of the TS Pattern
The Pattern in Action
The Table Module Pattern
Generalities of the TM Pattern
The TM Pattern in Action
The Active Record Pattern
Generalities of the AR Pattern
The AR Pattern in Action
The Domain Model Pattern
Generalities of the DM Pattern
The DM Pattern in Action
Summary
Murphy's Laws of the Chapter
5 The Service Layer
What's the Service Layer, Anyway?
Responsibilities of the Service Layer
What's a Service, Anyway?
Services in the Service Layer
The Service Layer Pattern in Action
Generalities of the Service Layer Pattern
The Service Layer Pattern in Action
Related Patterns
The Remote Fa?ade Pattern
The Data Transfer Object Pattern
The Adapter Pattern
DTO vs. Assembly
Service-Oriented Architecture
Tenets of SOA
What SOA Is Not
SOA and the Service Layer
The Very Special Case of Rich Web Front Ends
Refactoring the Service Layer
Designing an AJAX Service Layer
Securing the AJAX Service Layer
Summary
Murphy's Laws of the Chapter
6 The Data Access Layer
What's the Data Access Layer, Anyway?
Functional Requirements of the Data Access Layer
Responsibilities of the Data Access Layer
The Data Access Layer and Other Layers
Designing Your Own Data Access Layer
The Contract of the DAL
The Plugin Pattern
The Inversion of Control Pattern
Laying the Groundwork for a Data Context
Crafting Your Own Data Access Layer
Implementing the Persistence Layer
Implementing Query Services
Implementing Transactional Semantics
Implementing Uniquing and Identity Maps
Implementing Concurrency
Implementing Lazy Loading
Power to the DAL with an O/RM Tool
Object/Relational Mappers
Using an O/RM Tool to Build a DAL
To SP or Not to SP
About Myths and Stored Procedures
What About Dynamic SQL?
Summary
Murphy's Laws of the Chapter
7 The Presentation Layer
User Interface and Presentation Logic
Responsibilities of the Presentation Layer
Responsibilities of the User Interface
Common Pitfalls of a Presentation Layer
Evolution of the Presentation Patterns
The Model-View-Controller Pattern
The Model-View-Presenter Pattern
The Presentation Model Pattern
Choosing a Pattern for the User Interface
Design of the Presentation
What Data Is Displayed in the View?
Processing User Actions
Idiomatic Presentation Design
MVP in Web Presentations
MVP in Windows Presentations
Summary
Murphy's Laws of the Chapter
Final Thoughts
Appendix: The Northwind Starter Kit
Index
1 Architects and Architecture Today
What's a Software Architecture, Anyway?
Applying Architectural Principles to Software
What's Architecture and What's Not
Architecture Is About Decisions
Requirements and Quality of Software
Who's the Architect, Anyway?
An Architect's Responsibilities
How Many Types of Architects Do You Know?
Common Misconceptions About Architects
Overview of the Software Development Process
The Software Life Cycle
Models for Software Development
Summary
Murphy's Laws of the Chapter
2 UML Essentials
UML at a Glance
Motivation for and History of Modeling Languages
UML Modes and Usage
UML Diagrams
Use-Case Diagrams
Class Diagrams
Sequence Diagrams
Summary
Murphy's Laws of the Chapter
3 Design Principles and Patterns
Basic Design Principles
For What the Alarm Bell Should Ring
Structured Design
Separation of Concerns
Object-Oriented Design
Basic OOD Principles
Advanced Principles
From Principles to Patterns
What's a Pattern, Anyway?
Patterns vs. Idioms
Dependency Injection
Applying Requirements by Design
Testability
Security
From Objects to Aspects
Aspect-Oriented Programming
AOP in Action
Summary
Murphy's Laws of the Chapter
Part II Design of the System
4 The Business Layer
What's the Business Logic Layer, Anyway?
Dissecting the Business Layer
Where Would You Fit the BLL?
Business and Other Layers
Patterns for Creating the Business Layer
The Transaction Script Pattern
Generalities of the TS Pattern
The Pattern in Action
The Table Module Pattern
Generalities of the TM Pattern
The TM Pattern in Action
The Active Record Pattern
Generalities of the AR Pattern
The AR Pattern in Action
The Domain Model Pattern
Generalities of the DM Pattern
The DM Pattern in Action
Summary
Murphy's Laws of the Chapter
5 The Service Layer
What's the Service Layer, Anyway?
Responsibilities of the Service Layer
What's a Service, Anyway?
Services in the Service Layer
The Service Layer Pattern in Action
Generalities of the Service Layer Pattern
The Service Layer Pattern in Action
Related Patterns
The Remote Fa?ade Pattern
The Data Transfer Object Pattern
The Adapter Pattern
DTO vs. Assembly
Service-Oriented Architecture
Tenets of SOA
What SOA Is Not
SOA and the Service Layer
The Very Special Case of Rich Web Front Ends
Refactoring the Service Layer
Designing an AJAX Service Layer
Securing the AJAX Service Layer
Summary
Murphy's Laws of the Chapter
6 The Data Access Layer
What's the Data Access Layer, Anyway?
Functional Requirements of the Data Access Layer
Responsibilities of the Data Access Layer
The Data Access Layer and Other Layers
Designing Your Own Data Access Layer
The Contract of the DAL
The Plugin Pattern
The Inversion of Control Pattern
Laying the Groundwork for a Data Context
Crafting Your Own Data Access Layer
Implementing the Persistence Layer
Implementing Query Services
Implementing Transactional Semantics
Implementing Uniquing and Identity Maps
Implementing Concurrency
Implementing Lazy Loading
Power to the DAL with an O/RM Tool
Object/Relational Mappers
Using an O/RM Tool to Build a DAL
To SP or Not to SP
About Myths and Stored Procedures
What About Dynamic SQL?
Summary
Murphy's Laws of the Chapter
7 The Presentation Layer
User Interface and Presentation Logic
Responsibilities of the Presentation Layer
Responsibilities of the User Interface
Common Pitfalls of a Presentation Layer
Evolution of the Presentation Patterns
The Model-View-Controller Pattern
The Model-View-Presenter Pattern
The Presentation Model Pattern
Choosing a Pattern for the User Interface
Design of the Presentation
What Data Is Displayed in the View?
Processing User Actions
Idiomatic Presentation Design
MVP in Web Presentations
MVP in Windows Presentations
Summary
Murphy's Laws of the Chapter
Final Thoughts
Appendix: The Northwind Starter Kit
Index
猜您喜欢