Book Image

Clean Code with C# - Second Edition

By : Jason Alls
4.5 (2)
Book Image

Clean Code with C# - Second Edition

4.5 (2)
By: Jason Alls

Overview of this book

Traditionally associated with Windows desktop applications and game development, C# has expanded into web, cloud, and mobile development. However, despite its extensive coding features, professionals often encounter issues with efficiency, scalability, and maintainability due to poor code. Clean Code in C# guides you in identifying and resolving these problems using coding best practices. This book starts by comparing good and bad code to emphasize the importance of coding standards, principles, and methodologies. It then covers code reviews, unit testing, and test-driven development, and addresses cross-cutting concerns. As you advance through the chapters, you’ll discover programming best practices for objects, data structures, exception handling, and other aspects of writing C# computer programs. You’ll also explore API design and code quality enhancement tools, while studying examples of poor coding practices to understand what to avoid. By the end of this clean code book, you’ll have the developed the skills needed to apply industry-approved coding practices to write clean, readable, extendable, and maintainable C# code.
Table of Contents (18 chapters)

Project – Cross-cutting concerns reusable library

In this section, we will be working through writing a reusable library for addressing various cross-cutting concerns. It will have limited functionality, but it will give you the knowledge you need to further expand the project for your own needs. The class library you will be creating will be a .NET standard library so that it can be used for apps that target both .NET Framework and .NET Core. You will also create a .NET Framework console application to see the library in action.

The concerns we will be handling as we progress through the project are as follows:

  • Caching
  • Logging
  • Exception handling
  • Security
  • Validation
  • Resource pool
  • Configuration settings
  • Instrumentation
Figure 9.2: Screenshot of the project you’ll be creating

Figure 9.2: Screenshot of the project you’ll be creating

Start by creating a new .NET standard class library called CrossCuttingConcerns. Then, add a .NET Framework console application...