Book description
Your code is a testament to your skills as a developer. No matter what language you use, code should be clean, elegant, and uncluttered. By using test-driven development (TDD), you'll write code that's easy to understand, retains its elegance, and works for months, even years, to come. With this indispensable guide, you'll learn how to use TDD with three different languages: Go, JavaScript, and Python.
Author Saleem Siddiqui shows you how to tackle domain complexity using a unit test-driven approach. TDD partitions requirements into small, implementable features, enabling you to solve problems irrespective of the languages and frameworks you use. With Learning Test-Driven Development at your side, you'll learn how to incorporate TDD into your regular coding practice.
This book helps you:
- Use TDD's divide-and-conquer approach to tame domain complexity
- Understand how TDD works across languages, testing frameworks, and domain concepts
- Learn how TDD enables continuous integration
- Support refactoring and redesign with TDD
- Learn how to write a simple and effective unit test harness in JavaScript
- Set up a continuous integration environment with the unit tests produced during TDD
- Write clean, uncluttered code using TDD in Go, JavaScript, and Python
Table of contents
- Foreword
- Preface
- Chapter 0: Introduction and Setup
- I. Getting Started
- 1. The Money Problem
- 2. Multicurrency Money
- 3. Portfolio
- II. Modularization
- 4. Separation of Concerns
- 5. Packages and Modules in Go
- 6. Modules in JavaScript
- 7. Modules in Python
- III. Features and Redesign
- 8. Evaluating a Portfolio
- 9. Currencies, Currencies, Everywhere
- 10. Error Handling
- 11. Banking on Redesign
- IV. Finishing Up
- 12. Test Order
- 13. Continuous Integration
- 14. Retrospective
- A. Development Environment Setup
- B. A Brief History of the Three Languages
- C. Acknowledgments
- Index
Product information
- Title: Learning Test-Driven Development
- Author(s):
- Release date: October 2021
- Publisher(s): O'Reilly Media, Inc.
- ISBN: 9781098106478
You might also like
book
Generative Deep Learning, 2nd Edition
Generative AI is the hottest topic in tech. This practical book teaches machine learning engineers and …
book
Designing Data-Intensive Applications
Data is at the center of many challenges in system design today. Difficult issues need to …
book
Foundations of Scalable Systems
In many systems, scalability becomes the primary driver as the user base grows. Attractive features and …
book
Robust Python
Does it seem like your Python projects are getting bigger and bigger? Are you feeling the …