Author: Matt Eland
1
Ebook

Refactoring with C#. Safely improve .NET applications and pay down technical debt with Visual Studio, .NET 8, and C# 12

Matt Eland, Steve Smith

Software projects start as brand-new greenfield projects, but invariably become muddied in technical debt far sooner than you’d expect. In Refactoring with C#, you'll explore what technical debt is and how it arises before walking through the process of safely refactoring C# code using modern tooling in Visual Studio and more recent C# language features using C# 12 and .NET 8. This book, written by a Microsoft MVP, will guide you through the process of refactoring safely through advanced unit testing with XUnit and libraries like Moq, Snapper, and Scientist .NET. You'll explore maintainable code through SOLID principles and defensive coding techniques made possible in newer versions of C#. You'll also find out how to run code analysis and write custom Roslyn analyzers to detect and resolve issues unique to your code.The nature of coding is changing, and you'll explore how to use AI with the GitHub Copilot Chat to refactor, test, document, and generate code before ending with a discussion about communicating technical debt to leadership and getting organizational buy-in to refactor your code in enterprise organizations and in agile teams.By the end of this book, you'll understand the nature of refactoring and see how you can safely, effectively, and repeatably pay down the technical debt in your application while adding value to your business.

2
Ebook

Refaktoryzacja w C#. Jak zredukować dług techniczny i optymalizować kod z Visual Studio, .NET 8 i C# 12

Matt Eland

Termin dług techniczny oznacza zbiór skrótów, niedociągnięć i potworków projektowych, które powstają w trakcie ewolucyjnego rozwoju programu. Jeśli się ich nie zlikwiduje, mogą dramatycznie spowolnić pracę nad programem. Rozwiązywanie tego typu problemów jest nazywane refaktoryzacją i każdy programista powinien umieć ją przeprowadzać. Dzięki tej przystępnej, świetnie napisanej książce dowiesz się, czym jest dług techniczny, co prowadzi do jego powstawania i w jaki sposób można go bezpiecznie zrefaktoryzować przy użyciu nowoczesnych narzędzi dostępnych w środowisku Visual Studio, a także najnowszych składników języka C# 12 i platformy .NET 8. Nauczysz się też korzystać z zaawansowanych testów jednostkowych tworzonych przy użyciu xUnit i takich bibliotek jak Moq, Snapper czy Scientist.NET. Dowiesz się, jak stosować zasady SOLID, aby tworzyć łatwy w utrzymaniu kod, poznasz również techniki programowania defensywnego, które można stosować w nowszych wersjach C#. Ponadto nauczysz się przeprowadzać analizy kodu i pisać własne analizatory Roslyn do wykrywania i rozwiązywania problemów typowych dla Twojego projektu. Najciekawsze zagadnienia: najważniejsze informacje o długu technicznym różne sposoby refaktoryzacji klas, metod i wierszy kodu efektywne testy jednostkowe zasady SOLID i tworzenie kodu łatwego w utrzymaniu korzystanie ze sztucznej inteligencji GitHub Copilot standardy kodowania w zwinnych zespołach