Software Architecture with C# 12 and .NET 8 – Fourth Edition 版次: Build enterprise applications using microservices, DevOps, EF Core, and design patterns for Azure
Author: Gabriel Baptista (Author), Francesco Abbruzzese (Author)
Publisher finelybook 出版社: Packt Publishing
Edition 版次: 4th ed.
Publication Date 出版日期: 2024-02-28
Language 语言: English
Print Length 页数: 756 pages
ISBN-10: 1805127659
ISBN-13: 9781805127659
Book Description
A book for the aspiring .NET software architect – design scalable and high-performance enterprise solutions using the latest features of C# 12 and .NET 8
Purchase of the print or Kindle book includes a free PDF eBook
Key Features
- Get introduced to software architecture fundamentals and begin applying them in .NET
- Explore the main technologies used by software architects and choose the best ones for your needs
- Master new developments in .NET with the help of a practical case study that looks at software architecture for a travel agency
Book Description
Software Architecture with C# 12 and .NET 8 puts high-level design theory to work in a .NET context, teaching you the key skills, technologies, and best practices required to become an effective .NET software architect.
This fourth edition puts emphasis on a case study that will bring your skills to life. You’ll learn how to choose between different architectures and technologies at each level of the stack. You’ll take an even closer look at Blazor and explore OpenTelemetry for observability, as well as a more practical dive into preparing .NET microservices for Kubernetes integration.
Divided into three parts, this book starts with the fundamentals of software architecture, covering C# best practices, software domains, design patterns, DevOps principles for CI/CD, and more. The second part focuses on the technologies, from choosing data storage in the cloud to implementing frontend microservices and working with Serverless. You’ll learn about the main communication technologies used in microservices, such as REST API, gRPC, Azure Service Bus, and RabbitMQ. The final part takes you through a real-world case study where you’ll create software architecture for a travel agency.
By the end of this book, you will be able to transform user requirements into technical needs and deliver highly scalable enterprise software architectures.
What you will learn
- Program and maintain Azure DevOps and explore GitHub Projects
- Manage software requirements to design functional and non-functional needs
- Apply architectural approaches such as layered architecture and domain-driven design
- Make effective choices between cloud-based and data storage solutions
- Implement resilient frontend microservices, worker microservices, and distributed transactions
- Understand when to use test-driven development (TDD) and alternative approaches
- Choose the best option for cloud development, from IaaS to Serverless
Who this book is for
This book is for engineers and senior software developers aspiring to become architects or looking to build enterprise applications with the .NET stack.
Basic familiarity with C# and .NET is required to get the most out of this software architecture book.
Table of Contents
- Understanding the Importance of Software Architecture
- Non-Functional Requirements
- Managing Requirements
- Best Practices in Coding C# 12
- Implementing Code Reusability in C# 12
- Design Patterns and .NET 8 Implementation
- Understanding the Different Domains in Software Solutions
- Understanding DevOps Principles and CI/CD
- Testing Your Enterprise Application
- Deciding on the Best Cloud-Based Solution
- Applying a Microservice Architecture to Your Enterprise Application
- Choosing Your Data Storage in the cloud
- Interacting with Data in C# – Entity Framework Core
- Implementing Microservices with .NET
- Applying Service-Oriented Architectures with .NET
- Working with Serverless – Azure Functions
- Presenting ASP.NET Core
(N.B. Please use the Look Inside option to see further chapters)
Review
“Each chapter is laden with real-world scenarios, examples, and solutions that you can directly apply to your projects.”
Stefan Dokic, Microsoft MVP, Developer Technologies.
“It is a complete guide to understanding the fundamentals and the most up-to-date practices”
Tiago Tartari, Microsoft MVP, 𝗗𝗲𝘃𝗲𝗹𝗼𝗽𝗲𝗿 𝗧𝗲𝗰𝗵𝗻𝗼𝗹𝗼𝗴𝗶𝗲𝘀 𝗶𝗻 .𝗡𝗘𝗧
“A great tool for new and senior software architects, offering building blocks for new applications using microservices, DevOps, and design patterns for Azure cloud. A must-read to be up to date to build modern applications.”
Waldemir Cambiucci, Director of Emerging Technologies at Microsoft
“I like that there are dedicated chapters that focus on clean coding and best practices. The book is filled with code snippets, illustrative images and contextual tips that enrich the value of the content”
Aram Tchekrekjian, Microsoft MVP, 𝗗𝗲𝘃𝗲𝗹𝗼𝗽𝗲𝗿 𝗧𝗲𝗰𝗵𝗻𝗼𝗹𝗼𝗴𝗶𝗲𝘀 𝗶𝗻 .𝗡𝗘𝗧
“The book aims to teach you how to make enterprise applications using Microservices, DevOps,EF Core, Azure design patterns”
Pavle Davitkovic, Software Developer at Ingsoftware
About the Author
Gabriel Baptista has been working with software development since the beginning of .NET. Today, his main contributions are managing numerous projects for retail and industry. He is an Azure Platform-as-a-Service (PaaS) solution specialist, teaches at Computing Engineering universities, and helps tech startups as a mentor.
Francesco Abbruzzese dedicates his life to his two great passions: software and powerlifting. He is the author of the MVC Controls Toolkit and the Blazor Controls Toolkit libraries. He has contributed to the diffusion and evangelization of the Microsoft web stack since the first version of ASP.NET. His company, Mvcct Team, offers web applications, tools, and services for web technologies. He has moved from AI systems, where he implemented one of the first decision support systems for financial institutions, to top-10 video game titles such as Puma Street Soccer.