contents

 

  

front matter

foreword

preface

acknowledgments

about the author

about the cover illustration

  

  1 Refactoring refactoring

  1.1  What is refactoring?

  1.2  Skills: What to refactor?

An example code smell

An example rule

  1.3  Culture: When to refactor?

Refactoring in a legacy system

When should you not refactor?

  1.4  Tools: How to refactor (safely)

  1.5  Tools you need to get started

Programming language: TypeScript

Editor: Visual Studio Code

Version control: Git

  1.6  Overarching example: A 2D puzzle game

Practice makes perfect: A second codebase

  1.7  A note on real-world software

  2 Looking under the hood of refactoring

  2.1  Improving readability and maintainability

Making code better

Maintaining code . . . without changing what it does

  2.2  Gaining speed, flexibility, and stability