Interface-driven development
One concept of the category theory that we can use when we develop software is that our design should be concerned only with interfaces, that is, the arrows/morphisms. We have seen the theme of composition repeated throughout this book. From Mozart compositions to function compositions with linear and quadratic functions, and later with finite state machines. We've seen that the way to solve complex problems is to break them apart into understandable pieces. We can then reach into our toolbox of pieces and compose elegant, reliable solutions. We design our application programming interfaces (APIs) to connect our pieces and can leverage concurrent programming constructs and concurrency-aware frameworks to arrange ...
Become an O’Reilly member and get unlimited access to this title plus top books and audiobooks from O’Reilly and nearly 200 top publishers, thousands of courses curated by job role, 150+ live events each month,
and much more.
Read now
Unlock full access