Companies Home Search Profile
Hands-On Design Patterns with C# and .NET Core: Write clean and maintainable code by using reusable solutions to common software design problems
Hands-On Design Patterns with C# and .NET Core: Write clean and maintainable code by using reusable solutions to common software design problems
Download pdf
Hands-On Design Patterns with C# and .NET Core: Write clean and maintainable code by using reusable solutions to common software design problems

Hands-On Design Patterns with C# and .NET Core: Write clean and maintainable code by using reusable solutions to common software design problems

Category

0 View
Apply design patterns to solve problems in software architecture and programming using C# 7.x and .NET Core 2

Design patterns are essentially reusable solutions to common programming problems. When used correctly, they meet crucial software requirements with ease and reduce costs. This book will uncover effective ways to use design patterns and demonstrate their implementation with executable code specific to both C# and .NET Core.

Hands-On Design Patterns with C# and .NET Core begins with an overview of object-oriented programming (OOP) and SOLID principles. It provides an in-depth explanation of the Gang of Four (GoF) design patterns such as creational, structural, and behavioral. The book then takes you through functional, reactive, and concurrent patterns, helping you write better code with streams, threads, and coroutines. Toward the end of the book, youll learn about the latest trends in architecture, exploring design patterns for microservices, serverless, and cloud native applications. Youll even understand the considerations that need to be taken into account when choosing between different architectures such as microservices and MVC.

By the end of the book, you will be able to write efficient and clear code and be comfortable working on scalable and maintainable projects of any size.

ISBN-10
ISBN-13
9781789133646
Publisher
Packt Publishing
Price
15.89
File Type
PDF
Page No.

About the Author

Gaurav Aroraa has an MPhil in computer science. He is an MVP, a life-time member of the Computer Society of India (CSI), an advisory member of IndiaMentor, certified as a scrum trainer/coach, XEN for Information Technology Infrastructure Library-Foundation (ITIL-F) and APMG for Projects In Controlled Environments-F (PRINCE-F) and Projects In Controlled Environments-P (PRINCE-P). Gaurav is an open source developer, and the founder of Ovatic Systems. Recently, Gaurav was awarded Icon of the year excellence in Mentoring Technology Startups for 2018-19 by Radio City A Jagran Initiative for his extraordinary work during his 20-year career in the industry in the field of technology mentoring. You can tweet Gaurav on his Twitter handle, g_arora.

Jeffrey is a software consultant specializing in the Microsoft technical stack including Azure, BizTalk, ASP.Net, MVC, WCF and SQL Server with experience in a wide range of industries including banking, telecommunications and health care in the United States, Europe, Australia and New Zealand.

Review

When designing good software, engineers naturally gravitate toward solutions that avoid duplication. We are naturally DRY-Don't Repeat Yourself-often without thinking about it! Developers naturally compartmentalize functionality, create reusable methods, and make helpful classes.

However, many software design patterns have been created over the years. These are useful, general, and reusable solutions to problems you'll see every day. There are more and more developers who are self-taught or who didn't go through a classical software engineer or computer science course at university, and everyone should enjoy the benefits of decades of development of these great design patterns.

Gaurav and Jeffrey have assembled the best and most common patterns and applied them to the open source world of .NET Core and C#. You'll start with OOP, classes, and objects and move your way on to inheritance, encapsulation, and polymorphism. They've covered design principles such as DRY, KISS, and SOLID (these will all make sense very soon!) and applied them to classic patterns that will help you make clear, crisp, and rock-solid (pun intended!) software.

This book is filled with real code that clearly illustrates how to apply all this knowledge to your .NET Core and C# software today. You'll learn how to adopt the Builder pattern, Decorator pattern, Factory pattern, Visitor pattern, and Strategy pattern, and so much more.

These techniques will then be applied to a simple app, then to a web application, and then to more complex problems involving concurrency and parallelism! You'll then apply patterns at a more macro level using solution patterns that will help you move your projects to the cloud in a scalable and maintainable way.

I hope you appreciate this book as much as I did. And I hope you enjoy working with .NET Core and have as much fun as we did making it!

--

Scott Hanselman

Partner Program Manager-Microsoft .NET

.NET and Open Source Community

--This text refers to the paperback edition.

  • Make your code more flexible by applying SOLID principles
  • Follow the Test-driven development (TDD) approach in your .NET Core projects
  • Get to grips with efficient database migration, data persistence, and testing techniques
  • Convert a console application to a web application using the right MVP
  • Write asynchronous, multithreaded, and parallel code
  • Implement MVVM and work with RxJS and AngularJS to deal with changes in databases
  • Explore the features of microservices, serverless programming, and cloud computing

If you have a basic understanding of C# and the .NET Core framework, this book will help you write code that is easy to reuse and maintain with the help of proven design patterns that you can implement in your code.

  1. Overview of OOP in .NET Core and C#
  2. Modern Software Design Patterns and Principles
  3. Implementing Design Patterns - Basics Part 1
  4. Implementing Design Patterns - Basics Part 2
  5. Implementing Design Patterns - .Net Core
  6. Implementing Design Patterns for web applications- Part 1
  7. Implementing Design Patterns for web applications- Part 2
  8. Concurrent programming in NET Core
  9. Functional Programming Practices
  10. Reactive Programming Patterns and techniques
  11. Advanced database design and application techniques
  12. Coding for the Cloud
  13. Appendix A: Miscellaneous Best Practices

Similar Books

Other Authors' Books

Other Publishing Books

User Reviews
Rating
0
0
0
0
0
average 0
Total votes0