Book Image

Hands-On Software Architecture with C# 8 and .NET Core 3

By : Francesco Abbruzzese, Gabriel Baptista
Book Image

Hands-On Software Architecture with C# 8 and .NET Core 3

By: Francesco Abbruzzese, Gabriel Baptista

Overview of this book

<p>Software architecture is the practice of implementing structures and systems that streamline the software development process and improve the quality of an app. With this software architecture book, you’ll follow a hands-on approach to learning various architectural methods that will help you develop and deliver high-quality products. </p><p>You’ll begin by understanding how to transform user requirements into architectural needs and exploring the differences between functional and non-functional requirements. Next, you’ll explore how to carefully choose a cloud solution for your infrastructure, along with covering dos and don’ts that will help you manage your app in a cloud-based environment. Later chapters will cover techniques and processes such as DevOps, microservices, and continuous integration, along with providing insights into implementing them using Microsoft technologies such as ASP.NET Core, the Entity Framework, Cosmos DB, and Azure DevOps. You will also learn about testing frameworks and automation tools that will help you through the development process. Finally, you’ll discover design patterns and various software approaches that will allow you to solve common problems faced during development. </p><p>By the end of this book, you’ll be able to develop and deliver highly scalable enterprise-ready apps that meet customers’ business needs.</p>
Table of Contents (28 chapters)
Free Chapter
1
Section 1: Transforming Customer Needs in Real-World Applications
5
Section 2: Architecting Software Solutions in a Cloud-Based Environment
11
Section 3: Applying Design Principles for Software Delivered in the 21st Century
17
Section 4: Programming Solutions for an Unavoidable Future Evolution
21
Section 5: Delivering Software Continuously and at a High Quality Level

Understanding and applying tools that can evaluate C# code

The evolution of code analysis in Visual Studio is continuous. This means that Visual Studio 2019 certainly has more tools for this purpose than Visual Studio 2017, and so on. 

One of the issues that you (as a software architect) need to deal with is the coding style of the team. This certainly results in a better understanding of the code. For instance, if you go to Visual Studio Menu | Tools | Options, you will find ways to set up how to deal with different code style patterns, and it even indicates a bad coding style as an error in the Code Style option, as follows:

For instance, the preceding screenshot suggests that Avoid unused parameters were considered an error. After this change, the result of the compilation of the same code presented at the beginning of the chapter was different, as you...