Refactoring for Software Design Smells : Managing Technical Debt.
Material type:
- text
- computer
- online resource
- 9780128016466
- 005.1/6
- QA76.76.R42 -- .S86 2015eb
Front Cover -- Refactoring for Software Design Smells -- Copyright -- Dedication -- Contents -- Foreword by Grady Booch -- Foreword by Dr. Stéphane Ducasse -- Preface -- WHAT IS THIS BOOK ABOUT? -- WHAT DOES THIS BOOK COVER? -- WHO SHOULD READ THIS BOOK? -- WHAT ARE THE PREREQUISITES FOR READING THIS BOOK? -- HOW TO READ THIS BOOK? -- WHERE CAN I FIND MORE INFORMATION? -- WHY DID WE WRITE THIS BOOK? -- Acknowledgments -- Chapter 1 - Technical Debt -- 1.1 WHAT IS TECHNICAL DEBT? -- 1.2 WHAT CONSTITUTES TECHNICAL DEBT? -- 1.3 WHAT IS THE IMPACT OF TECHNICAL DEBT? -- 1.4 WHAT CAUSES TECHNICAL DEBT? -- 1.5 HOW TO MANAGE TECHNICAL DEBT? -- Chapter 2 - Design Smells -- 2.1 WHY CARE ABOUT SMELLS? -- 2.2 WHAT CAUSES SMELLS? -- 2.3 HOW TO ADDRESS SMELLS? -- 2.4 WHAT SMELLS ARE COVERED IN THIS BOOK? -- 2.5 A CLASSIFICATION OF DESIGN SMELLS -- Chapter 3 - Abstraction Smells -- 3.1 MISSING ABSTRACTION -- 3.2 IMPERATIVE ABSTRACTION -- 3.3 INCOMPLETE ABSTRACTION -- 3.4 MULTIFACETED ABSTRACTION -- 3.5 UNNECESSARY ABSTRACTION -- 3.6 UNUTILIZED ABSTRACTION -- 3.7 DUPLICATE ABSTRACTION -- Chapter 4 - Encapsulation Smells -- 4.1 DEFICIENT ENCAPSULATION -- 4.2 LEAKY ENCAPSULATION -- 4.3 MISSING ENCAPSULATION -- 4.4 UNEXPLOITED ENCAPSULATION -- Chapter 5 - Modularization Smells -- 5.1 BROKEN MODULARIZATION -- 5.2 INSUFFICIENT MODULARIZATION -- 5.3 CYCLICALLY-DEPENDENT MODULARIZATION -- 5.4 HUB-LIKE MODULARIZATION -- Chapter 6 - Hierarchy Smells -- 6.1 MISSING HIERARCHY -- 6.2 UNNECESSARY HIERARCHY -- 6.3 UNFACTORED HIERARCHY -- 6.4 WIDE HIERARCHY -- 6.5 SPECULATIVE HIERARCHY -- 6.6 DEEP HIERARCHY -- 6.7 REBELLIOUS HIERARCHY -- 6.8 BROKEN HIERARCHY -- 6.9 MULTIPATH HIERARCHY -- 6.10 CYCLIC HIERARCHY -- Chapter 7 - The Smell Ecosystem -- 7.1 THE ROLE OF CONTEXT -- 7.2 INTERPLAY OF SMELLS -- Chapter 8 - Repaying Technical Debt in Practice -- 8.1 THE TOOLS.
8.2 THE PROCESS -- 8.3 THE PEOPLE -- Appendix A - Software Design Principles -- A.1 ABSTRACTION -- A.2 ACYCLIC DEPENDENCIES PRINCIPLE -- A.3 DON'T REPEAT YOURSELF PRINCIPLE -- A.4 ENCAPSULATION -- A.5 INFORMATION HIDING PRINCIPLE -- A.6 KEEP IT SIMPLE SILLY -- A.7 LISKOV'S SUBSTITUTION PRINCIPLE -- A.8 HIERARCHY -- A.9 MODULARIZATION -- A.10 OPEN/CLOSE PRINCIPLE -- A.11 SINGLE RESPONSIBILITY PRINCIPLE -- A.12 VARIATION ENCAPSULATION PRINCIPLE -- Appendix B - Tools for Repaying Technical Debt -- Appendix C - Notations for Figures -- Appendix D - Suggested Reading -- D.1 ESSENTIALS -- D.2 REFACTORING AND REENGINEERING -- D.3 PATTERNS AND ANTI-PATTERNS -- D.4 TECHNICAL DEBT -- Bibliography -- Index.
Description based on publisher supplied metadata and other sources.
Electronic reproduction. Ann Arbor, Michigan : ProQuest Ebook Central, 2024. Available via World Wide Web. Access may be limited to ProQuest Ebook Central affiliated libraries.
There are no comments on this title.