O’REILLY Learning「Good Code, Bad Code」2 Layers of abstraction
https://learning.oreilly.com/library/view/good-code-bad/9781617298936/
日本語翻訳版は秀和システムから発売
2 Layers of abstraction
This chapter covers
・How to break a problem down into subproblems with clean layers of abstraction
・How layers of abstraction can help us achieve a number of the pillars of code quality
・APIs and implementation details
・How to break code into distinct layers of abstraction using functions, classes, and interfaces
可読性、モジュール性、再利用性、汎用性、テスト容易性を大幅に向上
問題を再帰的に小問題に分解し、抽象化の層をうまく作れば、個々のコードが特に複雑に見えることはなく、一度に扱うのは理解しやすいいくつかの概念だけ
分割
・機能
・クラス
・インターフェース
マイクロサービスは、システムを分解してモジュール化するのに非常に良い方法ですが、通常は、サービスを実装するために複数のサブ問題を解決する必要があることに変わりない。
1つのことをするように分ける。この1つというテーマが難しくしているようで、シンプル。