rent-now

Rent More, Save More! Use code: ECRENTAL

5% off 1 book, 7% off 2 books, 10% off 3+ books

9780470447611

Professional Enterprise . NET

by ;
  • ISBN13:

    9780470447611

  • ISBN10:

    0470447613

  • Format: Paperback
  • Copyright: 2009-10-12
  • Publisher: Wrox
  • Purchase Benefits
  • Free Shipping Icon Free Shipping On Orders Over $35!
    Your order must be $35 or more to qualify for free economy shipping. Bulk sales, PO's, Marketplace items, eBooks and apparel do not qualify for this offer.
  • eCampus.com Logo Get Rewarded for Ordering Your Textbooks! Enroll Now
List Price: $49.99

Summary

Practical Enterprise.Net will be the definitive guide for Microsoft programmers interested in learning the latest enterprise development methodologies. It will serve as a roadmap for C#, VB.Net, and ASP.Net developers looking to migrate both their applications, as well as their own skill sets to newer, flexible enterprise methodologies. The book's approach will cater specifically to the existing Microsoft developer, taking steps to describe each new pattern or feature along with its benefits, and then outlining the practical pros and cons of its implementation. Unlike many enterprise-from-the-ground-up books, Practical Enterprise.Net focuses on the often inevitable compromise between forward-thinking design and the immutable needs of business. Readers comfortable with Microsoft technologies will learn how new enterprise patterns can make their code more flexible, testable, and extensible, with minimal upfront costs .Practical Enterprise.Net will be a piece ranging from 250 - 400 pages exclusive of an index and appendices. There will be roughly ten major sections consisting of an introduction to enterprise development, a comprehensive overview of the differences between new enterprise patterns and older, traditional Microsoft programming, and several sections describing how to implement these patterns by upgrading an existing code base. The appendices will contain a primer to object-oriented design, and sections outlining the features of some of the tools used in the chapters, such as Spring.Net and nUnit. Each chapter will focus the reader on learning enterprise design from the point of view of the beginner-to-intermediate Microsoft developer, taking strides to first align each pattern with other common approaches and then exemplifying the extra benefits each new approach offers.Topic covered include: benefits including flexibility, automated testing, extensibility, separation Modular code Test Driven development, unit test, test automation, refactoring Inversion of control Enterprise design patterns: MVC including Ruby on Rails, Monorail, and ASP.NET MVC, MVP, observer, and more Object relational mapping

Author Biography

Jon Arking is a software architect, author of books and technical articles, and instructor of classes on subjects such as advanced C#, VB, and Java programming. Scott Millett is the senior developer for wiggle.co.uk and a regular contributor to the asp.net forums.

Table of Contents

Introductionp. xxi
Introduction to Practical Enterprise Development
What is Enterprise Design?p. 3
What Is Enterprise Architecture?p. 5
What Is Enterprise Development?p. 6
Reliabilityp. 6
Flexibilityp. 6
Separation of Concernsp. 7
Reusabilityp. 7
Maintainabilityp. 7
Where Is All of the Microsoft Enterprise?p. 9
The COM Factorp. 10
The Shift to Javap. 10
The .NET Revolutionp. 11
Summaryp. 14
The Enterprise Codep. 15
A New Way to Look At Codep. 15
Modularityp. 16
Loosely Coupled Classesp. 17
Unit Testingp. 23
Inversion of Control Containersp. 25
Summaryp. 29
The New Code - Changing the Way You Build
Emancipate Your Classesp. 33
Evaluating Your Code for Dependenciesp. 33
Rigidityp. 45
Flexibilityp. 45
Separation of Concernsp. 45
Reusabilityp. 45
Maintainabiltyp. 45
Separation of Concerns and Identifying Modularityp. 46
The Dependency Inversion Principlep. 61
Turning Classes Inside Out Using Dependency Injectionp. 64
Rigidityp. 70
Flexibilityp. 70
Separation of Concernsp. 70
Reusabilityp. 70
Maintainabilityp. 70
Summaryp. 72
Test Driven Developmentp. 73
Tic Tac Toe and Test Driven Development: An Examplep. 74
Tic Tac Toe Requirementsp. 75
Testing Frameworksp. 110
Identifying Testable Elementsp. 110
Writing Unit Tests That Work and Helpp. 112
Refactoringp. 116
Refactoring Toolsp. 117
ReSharperp. 117
Refactor Prop. 117
Dealing with Dependencies in Test Driven Development - Mocking, Stubs, and Fakesp. 118
Mocking Frameworksp. 127
Rhino Mocksp. 128
Moqp. 128
NMockp. 128
Summaryp. 128
Make It Simple Again - Inversion of Controlp. 131
Creating Dependenciesp. 131
Factory Patternp. 138
Service Locatorp. 142
Inversion of Control and IoC Containersp. 144
What's in a Name? Dependency Injection vs. Inversion of Controlp. 146
Choosing Your Containerp. 146
StructureMapp. 150
Wire Up Using the Fluent Interfacep. 151
Wire Up Using Attributes - the Plugin Familyp. 153
Wire Up Using Configuration Meta Datap. 157
To XML or Not to XML, That Is the Questionp. 160
Other IoC Frameworksp. 160
Summaryp. 160
Enterprise Design Patterns
Getting to the Middle of Thingsp. 165
On Middlewarep. 165
The Wild Westp. 166
Tiered Designsp. 166
The Internet Agep. 168
The Enterprise Middleware Agep. 169
A WCF Web Servicep. 172
The Messaging Modelp. 182
A Brief Note on SOAp. 183
Summaryp. 184
Writing Your Own Middlewarep. 185
Business Logic Layerp. 185
Patterns for Your Businessp. 186
Transaction Scriptp. 186
Active Record Patternp. 188
Domain Model Patternp. 190
Which Pattern to Use?p. 194
Serving Your Businessp. 195
The Service Layerp. 195
Putting Patterns into Practicep. 196
Mortgage Loan Prequalification Applicationp. 197
Talking the Language of the Domainp. 197
A Little Bit about Domain-Driven Designp. 198
Entitiesp. 198
Value Objectsp. 199
Aggregates and Aggregate Rootsp. 199
Talking with the Domain Expertp. 200
Building the Domain Modelp. 202
Identifying the Aggregatesp. 203
Building the Applicationp. 204
Creating the Repositoriesp. 242
Creating the Domain Servicesp. 244
Summaryp. 250
"Mining" Your Own Businessp. 251
What is the Data Access Layer?p. 251
Rolling Your Own Data Access Layerp. 252
Object Relation Mappingp. 252
The Data Contextp. 253
Entity Frameworkp. 269
LinqToSQL or the Entity Framework?p. 284
Mapping the Mortgage Application with NHibernatep. 299
Summaryp. 318
Organizing Your Front Endp. 321
The Neglected Front Endp. 321
Early Front-End Patternsp. 322
Java Strutsp. 324
ASP.NETp. 325
Model-View-Presenterp. 328
Back to MVCà the Rails Wayp. 332
Summaryp. 336
Model-View-Presenterp. 337
The MVP Pattern - Simplifiedp. 337
The Modelp. 338
The Viewp. 338
The Presenterp. 339
The MVP Mortgage Calculator - Web Samplep. 339
Switching Platforms - Thick Client Samplep. 360
Setting Up the WPF Applicationp. 361
Summaryp. 365
The Model-View-Controller Patternp. 367
Back to Basicsp. 367
Modelsp. 369
Controllersp. 370
Viewsp. 370
The Mortgage Loan Applicationp. 371
The Modelp. 374
The Controllerp. 376
The Viewp. 378
A Simple Repositoryp. 382
Creating and Editingp. 386
Flushing Out the Modelp. 401
The Full Source Codep. 413
Summaryp. 413
Puttting It All Togetherp. 415
One Step Back, Many Steps Forwardp. 415
The conceptsp. 416
Reliabilityp. 416
Flexibilityp. 416
Separation of Concernsp. 416
Reusabilityp. 416
Maintainabilityp. 416
The Big Picturep. 417
The Codep. 417
The Big Picturep. 418
The Patternsp. 418
Middlewarep. 419
Persistencep. 420
The User Interfacep. 421
The Big Picturep. 422
Being Holistic - The Big, BIG Picturep. 422
The Mortgage Servicep. 423
Final Thoughtsp. 423
Summaryp. 424
C#.NET Primerp. 425
Indexp. 455
Table of Contents provided by Ingram. All Rights Reserved.

Supplemental Materials

What is included with this book?

The New copy of this book will include any supplemental materials advertised. Please check the title of the book to determine if it should include any access cards, study guides, lab manuals, CDs, etc.

The Used, Rental and eBook copies of this book are not guaranteed to include any supplemental materials. Typically, only the book itself is included. This is true even if the title states it includes any access cards, study guides, lab manuals, CDs, etc.

Rewards Program