An atypical ASP.NET core 6 design patterns guide a solid adventure into architectural principles and design patterns using .NET 6 and C# 10

An Atypical ASP.NET Core 6 Design Patterns Guide, Second Edition approaches programming like playing with LEGO®: snapping small pieces together to create something beautiful. Thoroughly updated for ASP.NET Core 6, with further coverage of microservices patterns, data contracts, and event-driven arch...

Full description

Bibliographic Details
Main Author: Marcotte, Carl-Hugo
Other Authors: Zebdi, Abdelhamid (writer of foreword)
Format: eBook
Language:English
Published: Birmingham, [United Kingdom] Packt Publishing 2022
Edition:Second edition
Series:Expert insight
Subjects:
Online Access:
Collection: O'Reilly - Collection details see MPG.ReNa
LEADER 06171nmm a2200505 u 4500
001 EB002067738
003 EBX01000000000000001207828
005 00000000000000.0
007 cr|||||||||||||||||||||
008 220922 ||| eng
020 |a 9781803243887 
050 4 |a TK5105.8885.A26 
100 1 |a Marcotte, Carl-Hugo 
245 0 0 |a An atypical ASP.NET core 6 design patterns guide  |b a solid adventure into architectural principles and design patterns using .NET 6 and C# 10  |c Carl-Hugo Marcotte ; foreword by Abdelhamid Zebdi 
250 |a Second edition 
260 |a Birmingham, [United Kingdom]  |b Packt Publishing  |c 2022 
300 |a 678 pages  |b illustrations 
505 0 |a Project -- View models (a list of students) -- Conclusion -- Summary -- Questions -- Further reading -- Chapter 5: The MVC Pattern for Web APIs -- An overview of REST -- HTTP methods -- Status code -- HTTP headers -- Versioning -- Default versioning strategy -- Versioning strategy -- Wrapping up -- The Model View Controller design pattern -- Goal -- Design -- Anatomy of ASP.NET Core web APIs -- The entry point -- Directory structure -- Controller -- Returning values -- Attribute routing -- Conclusion -- The Data Transfer Object design pattern -- Goal -- Design -- Project -- DTO -- Conclusion 
505 0 |a Technical requirements -- Summary -- Questions -- Further reading -- Chapter 2: Automated Testing -- An overview of automated testing -- Unit testing -- Integration testing -- End-to-end testing -- Other types of tests -- Picking the right test style -- Testing approaches -- Refactoring -- Technical debt -- Testing .NET applications -- Creating an xUnit test project -- Getting started with xUnit -- Facts -- Assertions -- Theories -- Closing words -- Arrange, Act, Assert -- Organizing your tests -- Unit tests -- Integration tests -- ASP.NET Core integration testing -- Classic web application 
505 0 |a Inverting subsystems using DIP -- Project -- Dependency inversion -- Conclusion -- What's next? -- Other important principles -- Separation of concerns -- Don't repeat yourself (DRY) -- Keep it simple, stupid (KISS) -- Summary -- Questions -- Further reading -- Section 2: Designing for ASP.NET Core -- Chapter 4: The MVC Pattern Using Razor -- The Model View Controller design pattern -- Goal -- Design -- Anatomy of ASP.NET Core MVC -- Directory structure -- Controller -- Model -- View -- Default routing -- Conclusion -- The View Model design pattern -- Goal -- Design 
505 0 |a Minimal hosting -- Important testing principles -- Summary -- Questions -- Further reading -- Chapter 3: Architectural Principles -- The SOLID principles -- Single responsibility principle (SRP) -- Project -- BookStore -- What is an interface? -- Open/Closed principle (OCP) -- Project -- IAttacker -- Liskov substitution principle (LSP) -- Project -- HallOfFame -- Conclusion -- Interface segregation principle (ISP) -- Project -- Ninja versus Pirate -- Project -- Bookstore update -- Conclusion -- Dependency inversion principle (DIP) -- Direct dependency -- Inverted dependency 
505 0 |a Cover -- Copyright -- Contributors -- Table of Contents -- Preface -- Section 1: Principles and Methodologies -- Chapter 1: Introduction -- What is a design pattern? -- Anti-patterns and code smells -- Anti-patterns -- Anti-pattern -- God Class -- Code smells -- Code smell -- Control Freak -- Code smell -- Long Methods -- Understanding the web -- request/response -- Getting started with .NET -- .NET SDK versus runtime -- .NET 5+ versus .NET Standard -- Visual Studio Code versus Visual Studio versus the command-line interface -- An overview of project templates -- Running and building your program 
653 |a Applications Web 
653 |a Logiciels d'application / Développement 
653 |a Microsoft .NET Framework / http://id.loc.gov/authorities/names/n2017043838 
653 |a C (Computer program language) / fast 
653 |a Application software / Development / fast 
653 |a C (Langage de programmation) 
653 |a Microsoft .NET Framework / fast 
653 |a Web applications / fast 
653 |a Web applications / http://id.loc.gov/authorities/subjects/sh2012001728 
653 |a C (Computer program language) / http://id.loc.gov/authorities/subjects/sh85018532 
653 |a Application software / Development / http://id.loc.gov/authorities/subjects/sh95009362 
700 1 |a Zebdi, Abdelhamid  |e writer of foreword 
041 0 7 |a eng  |2 ISO 639-2 
989 |b OREILLY  |a O'Reilly 
490 0 |a Expert insight 
500 |a Includes index 
015 |a GBC237236 
776 |z 9781803249841 
776 |z 9781803243887 
856 4 0 |u https://learning.oreilly.com/library/view/~/9781803249841/?ar  |x Verlag  |3 Volltext 
082 0 |a 331 
082 0 |a 005.1 
520 |a An Atypical ASP.NET Core 6 Design Patterns Guide, Second Edition approaches programming like playing with LEGO®: snapping small pieces together to create something beautiful. Thoroughly updated for ASP.NET Core 6, with further coverage of microservices patterns, data contracts, and event-driven architecture, this book gives you the tools to build and glue reliable components together to improve your programmatic masterpieces. The chapters are organized based on scale and topic, allowing you to start small and build on a strong base, the same way that you would develop a program. You will begin by exploring basic design patterns, SOLID architectural principles, dependency injection, and other ASP.NET Core 6 mechanisms. You will explore component-scale patterns, and then move to higher level application-scale patterns and techniques to better structure your applications. Finally, you'll advance to the client side to connect the dots with tools like Blazor and make ASP.NET Core a viable full-stack web development framework. You will supplement your learning with practical use cases and best practices, exploring a range of significant Gang of Four (GoF) design patterns along the way. By the end of the book, you will be comfortable combining and implementing patterns in different ways, and crafting software solutions of any scale