Testable code is code that makes automated testing quick, easy, and enjoyable. In this course, Writing Testable Code, you'll learn how to write code that is easy to test. These skills are necessary to refactor code that is difficult to test into code that is easily testable. First, you'll be introduced to testable code, and how creating seams in your code makes code testable. Next, you'll learn a series of best practices that makes testing code easier such as, simplifying object construction, working with dependencies, and managing application state. Finally, you'll explore best practices further by walking through a code demo of each practice so you can see first-hand how they're implemented. These skills will make practices like unit testing significantly easier for you. By the end of this course, you'll have the skills necessary for writing testable code.