Interfaces represent common, so-called interface-oriented programming, which is to abstract the common denominator of different concepts
The different points of these concepts are then packaged in specific classes, so that interface-oriented programming equals object-oriented programming.
In fact, it's a concept. The IOC is going to postpone the dependency on detail to the runtime, completely independent of detail during coding and during compilation
AOP is the typical "orthogonality" principle under the guidance of the application, the function of each module is independent orthogonal, can be freely combined, rather than the various modules coupled together
And Ood in the final analysis, is to get flexible design, the most flexible design features are easy to modify, easy to modify the code has high cohesion and low coupling characteristics
High cohesion means that the module "single-duty", and the responsibility of a single means that the other several principles of Ood is also easy to meet, because the Ood of several principles have a significant feature, is to meet one of the principles of the case, the basic will meet the other several principles to use class to speak, Cohesion means that all the methods of a class are closely dependent on all of the properties of the class, which will certainly bring a "single-duty" module
Random kan Ood