C# Design Pattern Essentials (available as a paperback book or as a downloadable eBook) will help take your knowledge of the fundamentals of the C# programming language and put it into practice in the real world by learning about Design Patterns.

Now you too can use the techniques developed by experts over the last couple of decades to solve your programming challenges, through easy to implement solutions to the most common problems that programmers face. Understanding design patterns is essential in being able to write clear, concise and effective code, even for complex applications.

C# Design Pattern Essentials gives you a step-by-step guide to the world of object-oriented software development, using tried and trusted techniques. The examples and code extracts have been deliberately kept simple, enabling you to concentrate on understanding the concepts and application of each pattern rather than having to wade through irrelevant source code. And the pattern examples have been designed around a common theme, making it easier for you to see how they relate to each other and more importantly how you can adapt them to your applications.

While the book assumes a basic knowledge of C# you certainly don't need to be a guru. This book is perfect for the programmer who wishes to take their skills up to the next level, so you can feel confident about using C# in real-world applications.

Coverage includes:

  • All 23 of the design patterns described in the seminal work of Erich Gamma, Richard Helm, Ralph Johnson, John Vlissides; Design Patterns: Elements of Reusable Object-Oriented Software (Addison-Wesley, 1995)
  • Additional patterns for use in real-world applications
  • Full, simple explanation of the Model-View-Controller (MVC) pattern
  • Sample 3-tier application applying commonly used patterns
  • Easy to follow UML diagrams
  • Advice on how to use the patterns in practice

The author has over three decades of software development experience. 


Reviews

"Great C# Source Examples, Relevant for Year to Come, A Permanent part of my Collection. My Team Members Keep Borrowing It!"

by CubeRoot (via Amazon)

"Best design pattern book I've seen: buy it; you'll like it!"

by Jeffrey Roughgarden (via Amazon)

"Wish all other design pattern books were like this one... Probably one of the best design pattern books I've read."

by AmazonAddict (via Amazon)

Buy the book now from Amazon

...

C# Design Pattern Essentials: Amazon.co.uk: Bevis, Tony: 9780956575869: Books

Buy C# Design Pattern Essentials by Bevis, Tony (ISBN: 9780956575869) from Amazon's Book Store. Everyday low prices and free delivery on eligible orders.

 Table of contents

Preface

Part I: Introduction

  • 1. What are Design Patterns?
Part II: Creational Patterns
  • 2. Abstract Factory
  • 3. Builder
  • 4. Factory Method
  • 5. Prototype
  • 6. Singleton
Part III: Structural Patterns
  • 7. Adapter
  • 8. Bridge
  • 9. Composite
  • 10. Decorator
  • 11. Facade
  • 12. Flyweight
  • 13. Proxy
Part IV: Behavioural Patterns
  • 14. Chain of Responsibility
  • 15. Command
  • 16. Interpreter
  • 17. Iterator
  • 18. Mediator
  • 19. Memento
  • 20. Observer
  • 21. State
  • 22. Strategy
  • 23. Template Method
  • 24. Visitor
Part V: Other Useful Patterns
  • 25. Null Object
  • 26. Simple Factory
  • 27. Model View Controller
  • 28. Layers
Part VI: Design Patterns in Practice
  • 29. Sample 3-Tier Application
Part VII: Appendixes
  • A: UML Diagrams
  • B: Quick Reference
  • C: Bibliography

Chapter 2

  • (paperback page 32 and eBook): In the UML diagram for the Abstract Factory pattern the shaded box on the right should be named VanFactory;

Chapter 3

  • (paperback page 37 and eBook): In the UML diagram for the Builder pattern the class box on the right of VanClient should be named VanBuilder;
  • (eBook only): Near the end of the chapter within the last block of code the statement Vehicle v = director.Build(builder); should be IVehicle v = director.Build(builder); ;

Chapter 8

  • (paperback page 70 only): In the first block of code the statement controls1.Nrake() should be controls1.Brake.

Chapter 10

  • (paperback page 80 and eBook): In the constructor within class AbstractVehicleOption the first line should read : base(vehicle.Engine, vehicle.Colour) in order for both the engine and colour attributes to be set.
...

C# Design Pattern Essentials: Amazon.co.uk: Bevis, Tony: 9780956575869: Books

Buy C# Design Pattern Essentials by Bevis, Tony (ISBN: 9780956575869) from Amazon's Book Store. Everyday low prices and free delivery on eligible orders.