Customer Service or Enrol: 0800 282 353 or +44 1372 364610
 

.NET Best Practices and Design Patterns: Hands-On
Building Successful Applications with Proven Techniques

Course: 511   Type: Hands-On   Duration: 4 Days
Quick Enrol  

You Will Learn How To

  • Apply proven methods to build adaptable, reliable and efficient .NET Web and smart client applications
  • Solve complex programming problems with industry-standard design patterns
  • Deliver bug-free code using test-driven development and Visual Studio 2008
  • Increase team productivity by building application domain object models
  • Protect applications and data with code-based security
  • Simplify complex and repetitive tasks using .NET reflection and custom generic classes

Course Benefits
Knowledge of the .NET languages and libraries alone is not enough to develop robust applications. Proven design patterns and best practices, distilled from the wisdom of experts, support you in building applications upon a solid foundation. This course provides the skills needed to solve real-world software development problems and deliver fast, reliable applications.

Who Should Attend
Programmers, system architects and anyone developing .NET applications. Programming experience at the level of Course 419, "C# Programming", or Course 503, "Visual Basic 2008 Programming", is assumed.

Hands-on Training
You gain experience implementing .NET best practices and design patterns. Exercises, completed in VB or C#, include:
  • Reconciling diverse processing problems with the Strategy pattern
  • Simplifying a complex system with the Facade pattern
  • Coordinating database updates from Business Object hierarchies and collections
  • Creating a Business Domain Object Model
  • Building automated test cases
  • Structuring a testable user interface with the Model View Controller pattern
  • Capturing and reusing tests within Visual Studio

Course Content
Introduction
  • Coding with best practices
  • Simplifying software with design patterns
Simplifying Complex Programming with Proven Design Patterns
Applying simple interfaces to intricate algorithms
  • Unifying interfaces from subsystems for ease of use and reusability
  • Implementing the Facade pattern
Varying functionality by programming to interfaces
  • Enhancing the adaptability and flexibility of your application
  • Exploiting the Strategy pattern
Extending object behaviour dynamically
  • Increasing functionality without impacting existing code
  • Composing objects with the Decorator pattern
Achieving reuse and flexibility
  • Eliminating code duplication by outlining a basis for an algorithm
  • Employing the Template Method pattern
Interfacing incompatible classes
  • Transforming an interface to add value to existing code
  • Harnessing the Adapter pattern
Applying Test-Driven Development Techniques
Automating unit testing
  • Shortening development cycles with automated tests
  • Improving quality with consistent test coverage
  • Eliminating regression errors with reusable tests
Integrating testing and coding
  • Applying the test-first programming practice to drive code design
  • Generating immediate green-light feedback for increased code quality and short feature development cycles
  • Organising, coordinating and running test cases with Visual Studio
Architecting an N-Tier Application
Designing the application architecture
  • Layering architectures for reusability, durability and scalability
  • Accessing data from the business tier
  • Decoupling object creation with the Factory pattern
  • Preserving object identity with the Identity Map pattern
Programming application tiers
  • Structuring a Web or rich client application with the Observer pattern
  • Constructing reusable business base classes and interfaces with the Layer Supertype pattern
  • Organising state-rich applications with the State pattern
Modelling a business area
  • Liberating rich Business Object Models from database structures using the Domain Model pattern
  • Mapping rich Business Objects to database tables with the Data Mapper pattern
  • Collapsing Business Object hierarchies with the Inheritance Mapper pattern
Applying Best Practices
Configuring code-access security
  • Authorising code
  • Permission sets
  • Trust levels
  • Code groups
  • Evidence
  • Demanding permissions
  • Accessing isolated storage
Designing and using generic classes
  • Creating classes and methods parameterised on types
  • Replacing repeated code with generic types
Best practices in class design
  • Guarding against rigidity with the Open/Closed Principle
  • Extracting new classes with the Single Responsibility Principle
  • Effective use of inheritance
Automating Repetitive Tasks and Optimising Performance
Employing reflection
  • Examining objects at runtime
  • Late binding to fields during execution
Enhancing application code
  • Enforcing best practices with FxCop
  • Creating unit-testable user interface code
 

request more info Salutation*:

First Name*:

Last Name*:

Job Title:

Company*:

Post Code*:

Country*:
   Codes
Office Telephone*:

Extension:

E-mail*:

* Required

A Learning Tree representative will contact you to follow up your request for information.

Save 55%
.NET Best Practices and Design Patterns
27 - 30 May, 2008
London
29 Jul - 1 Aug, 2008
London
12 - 15 Aug, 2008
Edinburgh
23 - 26 Sep, 2008
London
25 - 28 Nov, 2008
London
2 - 5 Dec, 2008
Edinburgh
20 - 23 Jan, 2009
London
10 - 13 Mar, 2009
London
24 - 27 Mar, 2009
Edinburgh

Course participants applying design patterns.

£ 1,695 - Standard Tuition
Savings Plans
£ 1,080 - 10-Day Training Pass
£ 995 - Flex-Training Passport
£ 1,215 - 10-Training Vouchers
£ 1,300 - 5-Training Vouchers
£ 1,525 - Alumni Gold Tuition

 
Certification Core Course
 
dotNet Starburst for product upgrade
 
Customer Service or Enrol: 0800 282 353 or +44 1372 364610