Interfaces, good and bad
Designing applications can be a challenging task. Over the course of my career, I have developed a few guiding principles that I would like to share with you. These are more food for thought, rather than hard rules to follow. Throughout this article, I use adjectives like “good” and “bad” - purely subjectively. Why do we need interfaces? Public interfaces provide an overview of the capabilities of the module. If an interface and its methods have descriptive names (defined later), that interface can be a valuable addition to the documentation....