Five Lines of Code, video edition

Video description

In Video Editions the narrator reads the book while the content, figures, code listings, diagrams, and text appear on the screen. Like an audiobook that you can also watch as a video.

Down to earth, focused, and right on point. It will challenge you without intimidating you and without insulting your intelligence.
Robert C. Martin

In Five Lines of Code you will learn:
  • The signs of bad code
  • Improving code safely, even when you don’t understand it
  • Balancing optimization and code generality
  • Proper compiler practices
  • The Extract method, Introducing Strategy pattern, and many other refactoring patterns
  • Writing stable code that enables change-by-addition
  • Writing code that needs no comments
  • Real-world practices for great refactoring

Improving existing code—refactoring—is one of the most common tasks you’ll face as a programmer. Five Lines of Code teaches you clear and actionable refactoring rules that you can apply without relying on intuitive judgements such as “code smells.” Following the author’s expert perspective—that refactoring and code smells can be learned by following a concrete set of principles—you’ll learn when to refactor your code, what patterns to apply to what problem, and the code characteristics that indicate it’s time for a rework.

about the technology

Every codebase includes mistakes and inefficiencies that you need to find and fix. Refactor the right way, and your code becomes elegant, easy to read, and easy to maintain. In this book, you’ll learn a unique approach to refactoring that implements any method in five lines or fewer. You’ll also discover a secret most senior devs know: sometimes it’s quicker to hammer out code and fix it later!

about the book

Five Lines of Code is a fresh look at refactoring for developers of all skill levels. In it, you’ll master author Christian Clausen’s innovative approach, learning concrete rules to get any method down to five lines—or less! You’ll learn when to refactor, specific refactoring patterns that apply to most common problems, and characteristics of code that should be deleted altogether.

about the audience

For developers of all skill levels. Examples use easy-to-read Typescript, in the same style as Java and C#.

about the author

Christian Clausen works as a Technical Agile Coach, teaching teams how to refactor code.

A delightful and fun introduction to one of the most overlooked parts of programming—refactoring.
Charles Lam, EVN AG

Gave me new insights on how to keep my code readable and maintainable. I highly recommend it.
John Norcott, Webstaurantstore

These techniques are simple but powerful, and the exercises makes it easy to learn them. They can be used in any language I know!
Christian Hasselbalch Thoudahl, BEC Financial Technologies


Table of contents

  1. Chapter 1. Refactoring refactoring
  2. Chapter 1. Culture: When to refactor?
  3. Chapter 1. Overarching example: A 2D puzzle game
  4. Chapter 2. Looking under the hood of refactoring
  5. Chapter 2. Gaining speed, flexibility, and stability
  6. Part 1. Learn by refactoring a computer game
  7. Chapter 3. Shatter long functions
  8. Chapter 3. Introducing a refactoring pattern to break up functions
  9. Chapter 3. Breaking up functions to balancing abstraction
  10. Chapter 3. Breaking up functions that are doing too much
  11. Chapter 4. Make type codes work
  12. Chapter 4. Refactoring pattern: Replace type code with classes
  13. Chapter 4. Refactoring pattern: Push code into classes
  14. Chapter 4. Refactoring a large if statement
  15. Chapter 4. The only switch allowed
  16. Chapter 4. Addressing code duplication
  17. Chapter 4. Removing dead code
  18. Chapter 5. Fuse similar code together
  19. Chapter 5. Unifying simple conditions
  20. Chapter 5. Unifying code across classes
  21. Chapter 5. Refactoring pattern: Introduce strategy pattern
  22. Chapter 5. Rule: No interface with only one implementation
  23. Chapter 6. Defend the data
  24. Chapter 6. Encapsulating simple data
  25. Chapter 6. Refactoring pattern: Encapsulate data
  26. Chapter 6. Eliminating a sequence invariant
  27. Chapter 6. Remapping numbers to classes
  28. Part 2. Taking what you have learned into the real world
  29. Chapter 7. Collaborate with the compiler
  30. Chapter 7. Strength: Access control helps encapsulate data
  31. Chapter 7. Using the compiler
  32. Chapter 7. Don’t fight the compiler
  33. Chapter 7. Trusting the compiler
  34. Chapter 8. Stay away from comments
  35. Chapter 9. Love deleting code
  36. Chapter 9. Technical waste from time pressure
  37. Chapter 9. Deleting code in a legacy system
  38. Chapter 9. Deleting branches in version control
  39. Chapter 9. Deleting testing code
  40. Chapter 9. Deleting code to get rid of libraries
  41. Chapter 10. Never be afraid to add code
  42. Chapter 10. Overcoming the fear of waste or risk with a fixed ratio
  43. Chapter 10. How copy and paste effects change velocity
  44. Chapter 10. Modification by addition through feature toggles
  45. Chapter 11. Follow the structure in the code
  46. Chapter 11. Expressing behavior in the structure of the data
  47. Chapter 11. Gaining safety through testing
  48. Chapter 11. Exploiting duplication with unification
  49. Chapter 12. Avoid optimizations and generality
  50. Chapter 12. Unifying things of similar stability
  51. Chapter 12. Optimizing according to the theory of constraints
  52. Chapter 12. Choosing good algorithms and data structures
  53. Chapter 13. Make bad code look bad
  54. Chapter 13. Rules for safely vandalizing code
  55. Chapter 13. Grouping things based on naming
  56. Chapter 14. Wrapping up
  57. Chapter 14. Prioritizing the team over individuals

Product information

  • Title: Five Lines of Code, video edition
  • Author(s): Christian Clausen
  • Release date: October 2021
  • Publisher(s): Manning Publications
  • ISBN: None