You are not signed in. Sign in.

List Books: Buy books on ListBooks.org

Microsoft .NET: Architecting Applications for the Enterprise »

Book cover image of Microsoft .NET: Architecting Applications for the Enterprise by Dino Esposito

Authors: Dino Esposito
ISBN-13: 9780735626096, ISBN-10: 073562609X
Format: Paperback
Publisher: Microsoft Press
Date Published: October 2008
Edition: (Non-applicable)

Find Best Prices for This Book »

Author Biography: Dino Esposito

Dino Esposito is a well-known ASP.NET, AJAX, and Microsoft Silverlight&#

Book Synopsis

Make the right architectural decisions up front—and improve the quality and reliability of your results. Led by two enterprise programming experts, you’ll learn how to apply the patterns and techniques that help control project complexity—and make systems easier to build, support, and upgrade—right from the start.

Get pragmatic architectural guidance on how to:

  • Build testability, maintainability, and security into your system early in the design
  • Expose business logic through a service-oriented interface
  • Choose the best pattern for organizing business logic and behavior
  • Review and apply the patterns for separating the UI and presentation logic
  • Delve deep into the patterns and practices for the data access layer
  • Tackle the impedance mismatch between objects and data
  • Minimize development effort and avoid over-engineering—and deliver more robust results

Get code samples on the Web.

Table of Contents

Acknowledgments; Dino’s Credits; Andrea’s Credits; Introduction; What Is Architecture?; Who This Book Is For; Companion Content; Hardware and Software Requirements; Find Additional Content Online; Support for This Book; Part I: Principles; Chapter 1: Architects and Architecture Today; 1.1 What’s a Software Architecture, Anyway?; 1.2 Who’s the Architect, Anyway?; 1.3 Overview of the Software Development Process; 1.4 Summary; 1.5 Murphy’s Laws of the Chapter; Chapter 2: UML Essentials; 2.1 UML at a Glance; 2.2 UML Diagrams; 2.3 Summary; 2.4 Murphy’s Laws of the Chapter; Chapter 3: Design Principles and Patterns; 3.1 Basic Design Principles; 3.2 Object-Oriented Design; 3.3 From Principles to Patterns; 3.4 Applying Requirements by Design; 3.5 From Objects to Aspects; 3.6 Summary; 3.7 Murphy’s Laws of the Chapter; Part II: Design of the System; Chapter 4: The Business Layer; 4.1 What’s the Business Logic Layer, Anyway?; 4.2 The Transaction Script Pattern; 4.3 The Table Module Pattern; 4.4 The Active Record Pattern; 4.5 The Domain Model Pattern; 4.6 Summary; 4.7 Murphy’s Laws of the Chapter; Chapter 5: The Service Layer; 5.1 What’s the Service Layer, Anyway?; 5.2 The Service Layer Pattern in Action; 5.3 Related Patterns; 5.4 Service-Oriented Architecture; 5.5 The Very Special Case of Rich Web Front Ends; 5.6 Summary; 5.7 Murphy’s Laws of the Chapter; Chapter 6: The Data Access Layer; 6.1 What’s the Data Access Layer, Anyway?; 6.2 Designing Your Own Data Access Layer; 6.3 Crafting Your Own Data Access Layer; 6.4 Power to the DAL with an O/RM Tool; 6.5 To SP or Not to SP; 6.6 Summary; 6.7 Murphy’s Laws of the Chapter; Chapter 7: The Presentation Layer; 7.1 User Interface and Presentation Logic; 7.2 Evolution of the Presentation Patterns; 7.3 Design of the Presentation; 7.4 Idiomatic Presentation Design; 7.5 Summary; 7.6 Murphy’s Laws of the Chapter; Final Thoughts; Mantra #1—It Depends; Mantra #2—Requirements Are Lord Over All; Mantra #3—Program to an Interface; Mantra #4—Keep It Simple but Not Simplistic; Mantra #5—Inheritance Is About Polymorphism, Not Reuse; Mantra #6—Not the DAL? Don’t Touch SQL Then; Mantra #7—Maintainability First; Mantra #8—All User Input Is Evil; Mantra #9—Post-Mortem Optimization; Mantra #10—Security and Testability Are by Design; The Northwind Starter Kit; Motivation for Creating NSK; What’s in NSK?; Future Evolution of NSK; About the Authors; Dino Esposito; Andrea Saltarello; Additional Resources for Developers from Microsoft Press; Visual Basic; Visual C#; Web Development; Data Access; .NET Framework; Other Developer Topics; More Great Developer Resources; Developer Step by Step; Developer Reference; Focused Topics;

Subjects