Building Maintainable Software, C# Edition. Ten Guidelines for Future-Proof Code
![Język publikacji: angielski Język publikacji: angielski](https://static01.helion.com.pl/global/flagi/1.png)
- Autorzy:
- Joost Visser, Sylvan Rigal, Gijs Wijnholds
![Building Maintainable Software, C# Edition. Ten Guidelines for Future-Proof Code Joost Visser, Sylvan Rigal, Gijs Wijnholds - okładka ebooka](https://static01.helion.com.pl/global/okladki/326x466/e_05up.png)
![Building Maintainable Software, C# Edition. Ten Guidelines for Future-Proof Code Joost Visser, Sylvan Rigal, Gijs Wijnholds - tył okładki ebooka](https://static01.helion.com.pl/global/okladki-tyl/326x466/e_05up.png)
- Ocena:
- Bądź pierwszym, który oceni tę książkę
- Stron:
- 172
- Dostępne formaty:
-
ePubMobi
Opis ebooka: Building Maintainable Software, C# Edition. Ten Guidelines for Future-Proof Code
Have you ever felt frustrated working with someone else’s code? Difficult-to-maintain source code is a big problem in software development today, leading to costly delays and defects. Be part of the solution. With this practical book, you’ll learn 10 easy-to-follow guidelines for delivering C# software that’s easy to maintain and adapt. These guidelines have been derived from analyzing hundreds of real-world systems.
Written by consultants from the Software Improvement Group (SIG), this book provides clear and concise explanations, with advice for turning the guidelines into practice. Examples for this edition are written in C#, while our companion Java book provides clear examples in that language.
- Write short units of code: limit the length of methods and constructors
- Write simple units of code: limit the number of branch points per method
- Write code once, rather than risk copying buggy code
- Keep unit interfaces small by extracting parameters into objects
- Separate concerns to avoid building large classes
- Couple architecture components loosely
- Balance the number and size of top-level components in your code
- Keep your codebase as small as possible
- Automate tests for your codebase
- Write clean code, avoiding "code smells" that indicate deeper problems
Wybrane bestsellery
-
Why does poor software quality continue to plague enterprises of all sizes in all industries? Part of the problem lies with the process, rather than individual developers. This practical guide provides ten best practices to help team leaders create an effective working environment through key adj...
Building Software Teams. Ten Best Practices for Effective Software Development Building Software Teams. Ten Best Practices for Effective Software Development
(69.05 zł najniższa cena z 30 dni)68.55 zł
94.99 zł(-28%) -
Oprogramowanie po wdrożeniu w środowisku produkcyjnym dalej wymaga opieki programisty. Aktualizacje, dostosowanie do zmian, udoskonalenia i poprawa usterek — te czynności są warunkiem utrzymania systemu w dobrej kondycji. Niestety, jeśli twórca oprogramowania nie przestrzegał pewnych zasad,...
Oprogramowanie łatwe w utrzymaniu. Pisz kod podatny na przyszłe zmiany Oprogramowanie łatwe w utrzymaniu. Pisz kod podatny na przyszłe zmiany
(19.95 zł najniższa cena z 30 dni)19.95 zł
39.90 zł(-50%) -
Have you ever felt frustrated working with someone else’s code? Difficult-to-maintain source code is a big problem in software development today, leading to costly delays and defects. Be part of the solution. With this practical book, you’ll learn 10 easy-to-follow guidelines for deli...
Building Maintainable Software, Java Edition. Ten Guidelines for Future-Proof Code Building Maintainable Software, Java Edition. Ten Guidelines for Future-Proof Code
(70.34 zł najniższa cena z 30 dni)70.29 zł
94.99 zł(-26%) -
Dzięki tej książce nauczysz się używania struktur danych i implementacji najważniejszych algorytmów w języku C#. Najpierw zapoznasz się z najprostszymi strukturami danych o swobodnym dostępie — z tablicami oraz listami. Wyjaśniono tu również działanie struktur danych o dostępie sekwencyjnym...
Struktury danych i algorytmy w języku C#. Projektowanie efektywnych aplikacji Struktury danych i algorytmy w języku C#. Projektowanie efektywnych aplikacji
(41.40 zł najniższa cena z 30 dni)41.40 zł
69.00 zł(-40%) -
Explore the essentials of C# programming and algorithmic thinking in this beginner-friendly course by Aristides Bouras. Understand how a computer works, delve into development environments, and tackle complex programming challenges step-by-step.
C# and Algorithmic Thinking for the Complete Beginner. Unlock the Power of Programming with C# and Algorithmic Thinking C# and Algorithmic Thinking for the Complete Beginner. Unlock the Power of Programming with C# and Algorithmic Thinking
-
C# is undeniably one of the most versatile programming languages available to engineers today. With this comprehensive guide, you'll learn just how powerful the combination of C# and .NET can be. Author Ian Griffiths guides you through C# 12.0 and .NET 8 fundamentals and techniques for building c...(240.92 zł najniższa cena z 30 dni)
240.72 zł
289.00 zł(-17%) -
This hands-on guide takes you on a journey through popular design patterns, all while crafting engaging and optimized Unity games! Learn industry best practices for efficient and reusable code, a critical skill for creating maintainable software.
Learning Design Patterns with Unity. Learn the secret of popular design patterns while building fun, efficient games in Unity 2023 and C# Learning Design Patterns with Unity. Learn the secret of popular design patterns while building fun, efficient games in Unity 2023 and C#
-
Utrzymanie czystego kodu ułatwia pracę programistom i przyczynia się do szybszego reagowania na potrzeby odbiorców i wdrażania nowych funkcji. Większa efektywność zespołów programistycznych jest nieoceniona dla funkcjonowania firm. Pozwala zminimalizować ryzyko poważnych awarii i pozytywnie wpływ...
Debugowanie i refaktoryzacja kodu. Kurs video. Clean code w C# i Visual Studio Debugowanie i refaktoryzacja kodu. Kurs video. Clean code w C# i Visual Studio
(76.05 zł najniższa cena z 30 dni)92.95 zł
169.00 zł(-45%) -
Jeśli szukasz źródła błyskawicznych odpowiedzi na pytania, jakie się pojawiają podczas pracy z C#, ta książka sprawdzi się idealnie! Została pomyślana tak, aby maksymalnie ułatwić przeglądanie i odnajdywanie potrzebnych treści — jest precyzyjnym, zwięzłym i niezwykle praktycznym przewodniki...(29.94 zł najniższa cena z 30 dni)
29.94 zł
49.90 zł(-40%)
Ebooka "Building Maintainable Software, C# Edition. Ten Guidelines for Future-Proof Code" przeczytasz na:
-
czytnikach Inkbook, Kindle, Pocketbook, Onyx Boox i innych
-
systemach Windows, MacOS i innych
-
systemach Windows, Android, iOS, HarmonyOS
-
na dowolnych urządzeniach i aplikacjach obsługujących formaty: PDF, EPub, Mobi
Masz pytania? Zajrzyj do zakładki Pomoc »
Audiobooka "Building Maintainable Software, C# Edition. Ten Guidelines for Future-Proof Code" posłuchasz:
-
w aplikacji Ebookpoint na Android, iOS, HarmonyOs
-
na systemach Windows, MacOS i innych
-
na dowolnych urządzeniach i aplikacjach obsługujących format MP3 (pliki spakowane w ZIP)
Masz pytania? Zajrzyj do zakładki Pomoc »
Kurs Video "Building Maintainable Software, C# Edition. Ten Guidelines for Future-Proof Code" zobaczysz:
-
w aplikacjach Ebookpoint i Videopoint na Android, iOS, HarmonyOs
-
na systemach Windows, MacOS i innych z dostępem do najnowszej wersji Twojej przeglądarki internetowej
Szczegóły ebooka
- ISBN Ebooka:
- 978-14-919-5449-2, 9781491954492
- Data wydania ebooka:
-
2016-06-08
Data wydania ebooka często jest dniem wprowadzenia tytułu do sprzedaży i może nie być równoznaczna z datą wydania książki papierowej. Dodatkowe informacje możesz znaleźć w darmowym fragmencie. Jeśli masz wątpliwości skontaktuj się z nami sklep@ebookpoint.pl.
- Język publikacji:
- angielski
- Rozmiar pliku ePub:
- 3.6MB
- Rozmiar pliku Mobi:
- 7.3MB
Spis treści ebooka
- Preface
- The Topic of This Book: Ten Guidelines for Building Maintainable Software
- Why You Should Read This Book
- Who Should Read This Book
- What This Book Is Not
- The Follow-up Book
- About the Software Improvement Group
- About This Edition
- Related Books
- Conventions Used in This Book
- Generic Names for Elements of Source Code
- Using Code Examples
- Safari Books Online
- How to Contact Us
- Acknowledgments
- 1. Introduction
- What Is Maintainability?
- The Four Types of Software Maintenance
- What Is Maintainability?
- Why Is Maintainability Important?
- Maintainability Has Significant Business Impact
- Maintainability Is an Enabler for Other Quality Characteristics
- Three Principles of the Guidelines in This Book
- Principle 1: Maintainability Benefits Most from Simple Guidelines
- Principle 2: Maintainability Is Not an Afterthought, and Every Contribution Counts
- Principle 3: Some Violations Are Worse Than Others
- Misunderstandings About Maintainability
- Misunderstanding: Maintainability Is Language-Dependent
- Misunderstanding: Maintainability Is Industry-Dependent
- Misunderstanding: Maintainability Is the Same as the Absence of Bugs
- Misunderstanding: Maintainability Is a Binary Quantity
- Rating Maintainability
- An Overview of the Maintainability Guidelines
- 2. Write Short Units of Code
- Motivation
- Short Units Are Easy to Test
- Short Units Are Easy to Analyze
- Short Units Are Easy to Reuse
- Motivation
- How to Apply the Guideline
- When Writing a New Unit
- When Extending a Unit with New Functionality
- Using Refactoring Techniques to Apply the Guideline
- Refactoring technique: Extract Method
- Refactoring technique: Replace Method with Method Object
- Common Objections to Writing Short Units
- Objection: Having More Units Is Bad for Performance
- Objection: Code Is Harder to Read When Spread Out
- Guideline Encourages Improper Formatting
- This Unit Is Impossible to Split Up
- There Is No Visible Advantage in Splitting Units
- See Also
- 3. Write Simple Units of Code
- Motivation
- Simple Units Are Easier to Modify
- Simple Units Are Easier to Test
- Motivation
- How to Apply the Guideline
- Dealing with Conditional Chains
- Dealing with Nesting
- Common Objections to Writing Simple Units of Code
- Objection: High Complexity Cannot Be Avoided
- Objection: Splitting Up Methods Does Not Reduce Complexity
- See Also
- 4. Write Code Once
- Types of Duplication
- Motivation
- Duplicated Code Is Harder to Analyze
- Duplicated Code Is Harder to Modify
- How to Apply the Guideline
- The Extract Superclass Refactoring Technique
- Common Objections to Avoiding Code Duplication
- Copying from Another Codebase Should Be Allowed
- Slight Variations, and Hence Duplication, Are Unavoidable
- This Code Will Never Change
- Duplicates of Entire Files Should Be Allowed as Backups
- Unit Tests Are Covering Me
- Duplication in String Literals Is Unavoidable and Harmless
- See Also
- 5. Keep Unit Interfaces Small
- Motivation
- Small Interfaces Are Easier to Understand and Reuse
- Methods with Small Interfaces Are Easier to Modify
- Motivation
- How to Apply the Guideline
- Common Objections to Keeping Unit Interfaces Small
- Objection: Parameter Objects with Large Interfaces
- Refactoring Large Interfaces Does Not Improve My Situation
- Frameworks or Libraries Prescribe Interfaces with Long Parameter Lists
- See Also
- 6. Separate Concerns in Modules
- Motivation
- Small, Loosely Coupled Modules Allow Developers to Work on Isolated Parts of the Codebase
- Small, Loosely Coupled Modules Ease Navigation Through the Codebase
- Small, Loosely Coupled Modules Prevent No-Go Areas for New Developers
- Motivation
- How to Apply the Guideline
- Split Classes to Separate Concerns
- Hide Specialized Implementations Behind Interfaces
- Replace Custom Code with Third-Party Libraries/Frameworks
- Common Objections to Separating Concerns
- Objection: Loose Coupling Conflicts With Reuse
- Objection: C# Interfaces Are Not Just for Loose Coupling
- Objection: High Fan-in of Utility Classes Is Unavoidable
- Objection: Not All Loose Coupling Solutions Increase Maintainability
- 7. Couple Architecture Components Loosely
- Motivation
- Low Component Dependence Allows for Isolated Maintenance
- Low Component Dependence Separates Maintenance Responsibilities
- Low Component Dependence Eases Testing
- Motivation
- How to Apply the Guideline
- Abstract Factory Design Pattern
- Common Objections to Loose Component Coupling
- Objection: Component Dependence Cannot Be Fixed Because the Components Are Entangled
- Objection: No Time to Fix
- Objection: Throughput Is a Requirement
- See Also
- 8. Keep Architecture Components Balanced
- Motivation
- A Good Component Balance Eases Finding and Analyzing Code
- A Good Component Balance Better Isolates Maintenance Effects
- A Good Component Balance Separates Maintenance Responsibilities
- Motivation
- How to Apply the Guideline
- Decide on the Right Conceptual Level for Grouping Functionality into Components
- Clarify the Systems Domains and Apply Those Consistently
- Common Objections to Balancing Components
- Objection: Component Imbalance Works Just Fine
- Objection: Entanglement Is Impairing Component Balance
- See Also
- 9. Keep Your Codebase Small
- Motivation
- A Project That Sets Out to Build a Large Codebase Is More Likely to Fail
- Large Codebases Are Harder to Maintain
- Large Systems Have Higher Defect Density
- Motivation
- How to Apply the Guideline
- Functional Measures
- Technical Measures
- Common Objections to Keeping the Codebase Small
- Objection: Reducing the Codebase Size Is Impeded by Productivity Measures
- Objection: Reducing the Codebase Size is Impeded by the Programming Language
- Objection: System Complexity Forces Code Copying
- Objection: Splitting the Codebase Is Impossible Because of Platform Architecture
- Objection: Splitting the Codebase Leads to Duplication
- Objection: Splitting the Codebase Is Impossible Because of Tight Coupling
- 10. Automate Tests
- Motivation
- Automated Testing Makes Testing Repeatable
- Automated Testing Makes Development Efficient
- Automated Testing Makes Code Predictable
- Tests Document the Code That Is Tested
- Writing Tests Make You Write Better Code
- Motivation
- How to Apply the Guideline
- Getting Started with NUnit Tests
- General Principles for Writing Good Unit Tests
- Measure Coverage to Determine Whether There Are Enough Tests
- Common Objections to Automating Tests
- Objection: We Still Need Manual Testing
- Objection: I Am Not Allowed to Write Unit Tests
- Objection: Why Should We Invest in Unit Tests When the Current Coverage Is Low?
- See Also
- 11. Write Clean Code
- Leave No Trace
- How to Apply the Guideline
- Rule 1: Leave No-Unit Level Code Smells Behind
- Rule 2: Leave No Bad Comments Behind
- Rule 3: Leave No Code in Comments Behind
- Rule 4: Leave No Dead Code Behind
- Unreachable code in methods
- Unused private methods
- Code in comments
- Rule 5: Leave No Long Identifiers Behind
- Rule 6: Leave No Magic Constants Behind
- Rule 7: Leave No Badly Handled Exception Behind
- Common Objections to Writing Clean Code
- Objection: Comments Are Our Documentation
- Objection: Exception Handling Causes Code Additions
- Objection: Why Only These Coding Guidelines?
- 12. Next Steps
- Turning the Guidelines into Practice
- Lower-Level (Unit) Guidelines Take Precedence Over Higher-Level (Component) Guidelines
- Remember That Every Commit Counts
- Development Process Best Practices Are Discussed in the Follow-Up Book
- A. How SIG Measures Maintainability
- Index
O'Reilly Media - inne książki
-
Keeping up with the Python ecosystem can be daunting. Its developer tooling doesn't provide the out-of-the-box experience native to languages like Rust and Go. When it comes to long-term project maintenance or collaborating with others, every Python project faces the same problem: how to build re...(200.93 zł najniższa cena z 30 dni)
200.88 zł
239.00 zł(-16%) -
Bringing a deep-learning project into production at scale is quite challenging. To successfully scale your project, a foundational understanding of full stack deep learning, including the knowledge that lies at the intersection of hardware, software, data, and algorithms, is required.This book il...(241.26 zł najniższa cena z 30 dni)
241.21 zł
289.00 zł(-17%) -
Frontend developers have to consider many things: browser compatibility, usability, performance, scalability, SEO, and other best practices. But the most fundamental aspect of creating websites is one that often falls short: accessibility. Accessibility is the cornerstone of any website, and if a...(200.09 zł najniższa cena z 30 dni)
199.59 zł
239.00 zł(-16%) -
In this insightful and comprehensive guide, Addy Osmani shares more than a decade of experience working on the Chrome team at Google, uncovering secrets to engineering effectiveness, efficiency, and team success. Engineers and engineering leaders looking to scale their effectiveness and drive tra...(114.88 zł najniższa cena z 30 dni)
114.38 zł
149.00 zł(-23%) -
Data modeling is the single most overlooked feature in Power BI Desktop, yet it's what sets Power BI apart from other tools on the market. This practical book serves as your fast-forward button for data modeling with Power BI, Analysis Services tabular, and SQL databases. It serves as a starting ...(198.88 zł najniższa cena z 30 dni)
198.78 zł
239.00 zł(-17%) -
Learn how to get started with Futures Thinking. With this practical guide, Phil Balagtas, founder of the Design Futures Initiative and the global Speculative Futures network, shows you how designers and futurists have made futures work at companies such as Atari, IBM, Apple, Disney, Autodesk, Luf...(148.00 zł najniższa cena z 30 dni)
147.90 zł
179.00 zł(-17%) -
Augmented Analytics isn't just another book on data and analytics; it's a holistic resource for reimagining the way your entire organization interacts with information to become insight-driven.Moving beyond traditional, limited ways of making sense of data, Augmented Analytics provides a dynamic,...(174.54 zł najniższa cena z 30 dni)
174.34 zł
219.00 zł(-20%) -
Learn how to prepare for—and pass—the Kubernetes and Cloud Native Associate (KCNA) certification exam. This practical guide serves as both a study guide and point of entry for practitioners looking to explore and adopt cloud native technologies. Adrián González Sánchez ...
Kubernetes and Cloud Native Associate (KCNA) Study Guide Kubernetes and Cloud Native Associate (KCNA) Study Guide
(169.14 zł najniższa cena z 30 dni)177.65 zł
199.00 zł(-11%) -
Python is an excellent way to get started in programming, and this clear, concise guide walks you through Python a step at a time—beginning with basic programming concepts before moving on to functions, data structures, and object-oriented design. This revised third edition reflects the gro...(140.14 zł najniższa cena z 30 dni)
139.94 zł
179.00 zł(-22%) -
Developers with the ability to operate, troubleshoot, and monitor applications in Kubernetes are in high demand today. To meet this need, the Cloud Native Computing Foundation created a certification exam to establish a developer's credibility and value in the job market for work in a Kubernetes ...
Certified Kubernetes Application Developer (CKAD) Study Guide. 2nd Edition Certified Kubernetes Application Developer (CKAD) Study Guide. 2nd Edition
(175.13 zł najniższa cena z 30 dni)174.63 zł
219.00 zł(-20%)
Dzieki opcji "Druk na żądanie" do sprzedaży wracają tytuły Grupy Helion, które cieszyły sie dużym zainteresowaniem, a których nakład został wyprzedany.
Dla naszych Czytelników wydrukowaliśmy dodatkową pulę egzemplarzy w technice druku cyfrowego.
Co powinieneś wiedzieć o usłudze "Druk na żądanie":
- usługa obejmuje tylko widoczną poniżej listę tytułów, którą na bieżąco aktualizujemy;
- cena książki może być wyższa od początkowej ceny detalicznej, co jest spowodowane kosztami druku cyfrowego (wyższymi niż koszty tradycyjnego druku offsetowego). Obowiązująca cena jest zawsze podawana na stronie WWW książki;
- zawartość książki wraz z dodatkami (płyta CD, DVD) odpowiada jej pierwotnemu wydaniu i jest w pełni komplementarna;
- usługa nie obejmuje książek w kolorze.
Masz pytanie o konkretny tytuł? Napisz do nas: sklep[at]helion.pl.
Książka, którą chcesz zamówić pochodzi z końcówki nakładu. Oznacza to, że mogą się pojawić drobne defekty (otarcia, rysy, zagięcia).
Co powinieneś wiedzieć o usłudze "Końcówka nakładu":
- usługa obejmuje tylko książki oznaczone tagiem "Końcówka nakładu";
- wady o których mowa powyżej nie podlegają reklamacji;
Masz pytanie o konkretny tytuł? Napisz do nas: sklep[at]helion.pl.
Książka drukowana
![Loader](https://static01.helion.com.pl/ebookpoint/img/ajax-loader.gif)
![ajax-loader](https://static01.helion.com.pl/ebookpoint/img/ajax-loader.gif)
Oceny i opinie klientów: Building Maintainable Software, C# Edition. Ten Guidelines for Future-Proof Code Joost Visser, Sylvan Rigal, Gijs Wijnholds (0)
Weryfikacja opinii następuję na podstawie historii zamówień na koncie Użytkownika umieszczającego opinię. Użytkownik mógł otrzymać punkty za opublikowanie opinii uprawniające do uzyskania rabatu w ramach Programu Punktowego.