Book Image

Clean Code in C#

By : Jason Alls
Book Image

Clean Code in C#

By: Jason Alls

Overview of this book

Traditionally associated with developing Windows desktop applications and games, C# is now used in a wide variety of domains, such as web and cloud apps, and has become increasingly popular for mobile development. Despite its extensive coding features, professionals experience problems related to efficiency, scalability, and maintainability because of bad code. Clean Code in C# will help you identify these problems and solve them using coding best practices. The book starts with a comparison of good and bad code, helping you understand the importance of coding standards, principles, and methodologies. You’ll then get to grips with code reviews and their role in improving your code while ensuring that you adhere to industry-recognized coding standards. This C# book covers unit testing, delves into test-driven development, and addresses cross-cutting concerns. You’ll explore good programming practices for objects, data structures, exception handling, and other aspects of writing C# computer programs. Once you’ve studied API design and discovered tools for improving code quality, you’ll look at examples of bad code and understand which coding practices you should avoid. By the end of this clean code book, you’ll have the developed skills you need in order to apply industry-approved coding practices to write clean, readable, extendable, and maintainable C# code.
Table of Contents (17 chapters)

E2E testing

So, you've finished your project and all the unit tests pass. However, your project is a part of a larger system. This larger system will need to be tested to make sure that your code, and the other code it interfaces with, both work together as expected. Code tested in isolation can break when integrated into larger systems, and existing systems can break with the addition of new code, so it is important to perform E2E testing, also known as integration testing.

Integration testing is responsible for testing the complete program flow from beginning to end. Integration testing usually starts at the requirements gathering stage. You start by gathering and documenting the various requirements of the system. You then design all the components and devise tests for each subsystem, and then the E2E tests for the whole system. Then, you write your code according to the requirements and implement your own unit tests. Once your code is complete and the tests all...