Chapter 2. The Challenge of Increasing Complexity

The essence of a program is the combination of possible branches and automated selections based on certain conditions. When we write a program, we define what's going on in a branch, and under what condition this branch will be executed.

The number of branches usually grows quickly during the evolution of a project, as well as the number of conditions that determine whether a branch will be executed or not.

This is dangerous for human beings, who have limited brain capacities.

In this chapter, we are going to implement a data synchronizing service. Starting by implementing some very basic features, we'll keep adding stuff and see how things go.

The following topics will be covered:

  • Designing a multi-device ...

Get TypeScript Design Patterns now with the O’Reilly learning platform.

O’Reilly members experience books, live events, courses curated by job role, and more from O’Reilly and nearly 200 top publishers.