spring框架的ioc

时间:2024-10-25 21:34:02

   spring框架,主要思想可以用spring容器来理解

aop是一种对oop进行补充的软件设计思想,将和核心功能不相关代码抽象出来,由其他类完成。比如Singer类,我们可以定义一个SingerPrepare;

DI将要使用的对象的创建工作交给框架,减少对象之间的耦合性。

  这是一个观察者模式,框架应该负责切面相关的工作。

class SingPrepare{
public void singBefore(){
// 通知观众入场等
}
public void singAfter(){
// 通知观众出场等
}
class Singer(){
SingPrepare singPrepare; // 被通知对象
  public Singer(){
     // this.singPrepare= new SingPrepare();这个对象由使用者创建,很难由其他对象使用,耦合度很高
}
  public Singer(SingPrepare singPrepare){
//构造器只负责传入对象,至于是谁创建的,使用者不关心。
  this.singPrepare =this.singPrepare;
}
  public void sing(){
  singPrepare.singBefore();
//唱歌行为
  singPrepare.singAfter();
}

  在学习设计模式,要善于用伪码表达,更清晰。

参考资料:<<spring in acation>>