Solid principles in OSGI

I read this article:

and the author argues that the most important place to use SOLID principles is module connections: β€œIt is these connections in the system that require the most flexibility and fault tolerance. The reason for this is due to the change. Encapsulated within a single module poses less threat than a change that pulses through many modules. ".

Since OSGI can be used to define these joints, I decided to look at OSGI to see how it uses SOLID principles.

Single Responsibility is a simple task, the / bundle / jar should only do one thing. The principle of dependency inversion seems to me clear, the implementation in the / bundle / jar module should not depend on another implementation, but on abstraction. And modules do not have to expose any implementation details. OSGI does this by creating a component model that publishes or references services.

But what about other principles? For example, the Liskov substitution principle or the interface segregation principle, where can you find examples of them in OSGI?


source to share

1 answer

The module must conform to its published interface (Liskov Substitution), which is its only entry point (interface segregation).



All Articles