Building Maintainable Software, Java Edition. Ten Guidelines for Future-Proof Code
- Autorzy:
- Joost Visser, Sylvan Rigal, Rob van der Leek
- Ocena:
- Bądź pierwszym, który oceni tę książkę
- Stron:
- 168
- Dostępne formaty:
-
ePubMobi
Opis ebooka: Building Maintainable Software, Java 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 Java 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 Java, while our companion C# book provides workable 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
(80.73 zł najniższa cena z 30 dni)80.73 zł
94.99 zł(-15%) -
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
(14.90 zł najniższa cena z 30 dni)21.95 zł
39.90 zł(-45%) -
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, C# Edition. Ten Guidelines for Future-Proof Code Building Maintainable Software, C# Edition. Ten Guidelines for Future-Proof Code
(80.73 zł najniższa cena z 30 dni)80.73 zł
94.99 zł(-15%) -
To dziewiąte wydanie znakomitego podręcznika programowania dla początkujących, starannie zaktualizowane i uzupełnione o informacje dotyczące Java Platform, Standard Edition 17. Książka rozpoczyna się od solidnej dawki wiedzy o kompilacji i uruchamianiu programu w Javie, słowach kluczowych i istot...(77.40 zł najniższa cena z 30 dni)
90.30 zł
129.00 zł(-30%) -
Dzięki tej książce zrozumiesz bazowe koncepcje programowania funkcyjnego i przekonasz się, że możesz włączać je do kodu bez rezygnacji z paradygmatu obiektowego. Dowiesz się również, kiedy w swojej codziennej pracy używać takich opcji jak niemutowalność i funkcje czyste i dlaczego warto to robić....
Java. Podejście funkcyjne. Rozszerzanie obiektowego kodu Javy o zasady programowania funkcyjnego Java. Podejście funkcyjne. Rozszerzanie obiektowego kodu Javy o zasady programowania funkcyjnego
(52.20 zł najniższa cena z 30 dni)60.90 zł
87.00 zł(-30%) -
Java. Podręcznik na start to pozycja idealna dla każdego, kto chce podjąć takie kroki. W przystępny sposób zaznajamia nie tylko z językiem, ale też z podstawowymi koncepcjami stosowanymi podczas programowania - w obrazowy sposób przyrównuje je do sytuacji znanych spoza świata wirtualnego. Autor n...(41.40 zł najniższa cena z 30 dni)
48.30 zł
69.00 zł(-30%) -
Build Your Own Programming Language provides a hands-on approach to designing and implementing programming language features in a simple compiler and programming environment. This book will help you create new or domain-specific languages.
Build Your Own Programming Language. A developer's comprehensive guide to crafting, compiling, and implementing programming languages - Second Edition Build Your Own Programming Language. A developer's comprehensive guide to crafting, compiling, and implementing programming languages - Second Edition
-
Java należy do najpopularniejszych języków programowania na świecie. Używana przez miliony programistów, jest na tyle uniwersalna, że znajduje zastosowanie zarówno w aplikacjach desktopowych, mobilnych, jak i serwerowych, a także w zaawansowanych systemach zarządzania bazami danych. Z jej zalet k...
Java 21. Kurs video. Od "Hello World!" do programowania obiektowego Java 21. Kurs video. Od "Hello World!" do programowania obiektowego
(39.60 zł najniższa cena z 30 dni)54.45 zł
99.00 zł(-45%) -
Oto kolejne wydanie zwięzłego podręcznika dla programistów Javy, który ma ułatwić maksymalne wykorzystanie technologii tego języka w wersji 17. Treść została skrupulatnie przejrzana i uzupełniona o materiał dotyczący nowości w obiektowym modelu Javy. Pierwsza część książki obejmuje wprowadzenie d...(53.40 zł najniższa cena z 30 dni)
62.30 zł
89.00 zł(-30%) -
Kariera zawodowa programisty jest związana z nieustanną nauką i doskonaleniem zdobytych umiejętności. Jednym z podstawowych etapów rozwoju programisty Java jest zaznajomienie się z dobrymi praktykami programistycznymi, co obejmuje także wzorce projektowe – i to im właśnie poświęcony jest te...
Wzorce projektowe w Javie. Kurs video. Programowanie efektywnych rozwiązań Wzorce projektowe w Javie. Kurs video. Programowanie efektywnych rozwiązań
(39.90 zł najniższa cena z 30 dni)81.95 zł
149.00 zł(-45%)
Kup polskie wydanie:
Oprogramowanie łatwe w utrzymaniu. Pisz kod podatny na przyszłe zmiany
- Autor:
- Joost Visser
21,95 zł
39,90 zł
(14.90 zł najniższa cena z 30 dni)
Ebooka "Building Maintainable Software, Java 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, Java 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, Java 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-5349-5, 9781491953495
- Data wydania ebooka:
- 2016-01-28 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.7MB
- Rozmiar pliku Mobi:
- 3.7MB
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: Java 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 jUnit 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
-
JavaScript gives web developers great power to create rich interactive browser experiences, and much of that power is provided by the browser itself. Modern web APIs enable web-based applications to come to life like never before, supporting actions that once required browser plug-ins. Some are s...(177.65 zł najniższa cena z 30 dni)
186.15 zł
219.00 zł(-15%) -
How will software development and operations have to change to meet the sustainability and green needs of the planet? And what does that imply for development organizations? In this eye-opening book, sustainable software advocates Anne Currie, Sarah Hsu, and Sara Bergman provide a unique overview...(160.65 zł najniższa cena z 30 dni)
177.65 zł
209.00 zł(-15%) -
OpenTelemetry is a revolution in observability data. Instead of running multiple uncoordinated pipelines, OpenTelemetry provides users with a single integrated stream of data, providing multiple sources of high-quality telemetry data: tracing, metrics, logs, RUM, eBPF, and more. This practical gu...(143.65 zł najniższa cena z 30 dni)
152.15 zł
179.00 zł(-15%) -
What will you learn from this book?If you're a software developer looking for a quick on-ramp to software architecture, this handy guide is a great place to start. From the authors of Fundamentals of Software Architecture, Head First Software Architecture teaches you how to think architecturally ...(237.15 zł najniższa cena z 30 dni)
254.15 zł
299.00 zł(-15%) -
If you use Linux in your day-to-day work, then Linux Pocket Guide is the perfect on-the-job reference. This thoroughly updated 20th anniversary edition explains more than 200 Linux commands, including new commands for file handling, package management, version control, file format conversions, an...(92.65 zł najniższa cena z 30 dni)
101.15 zł
119.00 zł(-15%) -
Interested in developing embedded systems? Since they don't tolerate inefficiency, these systems require a disciplined approach to programming. This easy-to-read guide helps you cultivate good development practices based on classic software design patterns and new patterns unique to embedded prog...(152.15 zł najniższa cena z 30 dni)
160.65 zł
189.00 zł(-15%) -
Gain the valuable skills and techniques you need to accelerate the delivery of machine learning solutions. With this practical guide, data scientists, ML engineers, and their leaders will learn how to bridge the gap between data science and Lean product delivery in a practical and simple way. Dav...(245.65 zł najniższa cena z 30 dni)
254.15 zł
299.00 zł(-15%) -
This practical book provides a detailed explanation of the zero trust security model. Zero trust is a security paradigm shift that eliminates the concept of traditional perimeter-based security and requires you to "always assume breach" and "never trust but always verify." The updated edition off...(203.15 zł najniższa cena z 30 dni)
211.65 zł
249.00 zł(-15%) -
Decentralized finance (DeFi) is a rapidly growing field in fintech, having grown from $700 million to $100 billion over the past three years alone. But the lack of reliable information makes this area both risky and murky. In this practical book, experienced securities attorney Alexandra Damsker ...(203.15 zł najniższa cena z 30 dni)
211.65 zł
249.00 zł(-15%) -
Whether you're a startup founder trying to disrupt an industry or an entrepreneur trying to provoke change from within, your biggest challenge is creating a product people actually want. Lean Analytics steers you in the right direction.This book shows you how to validate your initial idea, find t...(126.65 zł najniższa cena z 30 dni)
126.65 zł
149.00 zł(-15%)
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
Oceny i opinie klientów: Building Maintainable Software, Java Edition. Ten Guidelines for Future-Proof Code Joost Visser, Sylvan Rigal, Rob van der Leek (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.