自学内容网 自学内容网

梳理你的思路(从OOP到架构设计)_介绍Android的Java层应用框架02

1、框架的控制机制

  • 顾名思义, IoC(Inversion of Control)就是「反向控制」之意思。 IoC观念和机制源自于OOP语言(如C++、 Java等)的<基类/子类>结构。
  • 例如Java语言中,基类(Super-class)的函数可以主动呼叫子类(Subclass)之函数,这就是一般所谓的IoC机制。后来,人们常将这些基类聚集起来,就称之为框架(Framework)。
  • IoC又称为「反向呼叫」或「反向调用」。而反向调用的相反词就是:正向调用。正向调用就是App子类调用基类的函数。
  • 例如,下图里的FirstActivity调用Activity基类的setContentView()函数
  • 反向调用恰好相反,表示由基类调用子类的函数。例如,下图里的Activity调用FirstActivity应用子类的onCreate()函数。
  • 正向调用就意味着正向控制,也就是说,AP 子类控制了框架基类,这是违背框架设计原则的。这项设计原则就如同
    Hollywood(好莱坞)大明星的名言:“Don’t call me, I’ll call you back.”
  • 上图所示的正向控制,既违背了好莱坞大明星的原则,也违背框架设计的原则。
  • 那么,该如何修正呢? 改为反向控制就行了。如下图:

  • 无论是.NET、 iOS或Android框架的设计,都依循着这项基本原则,让框架掌握控制权,也让掌握框架者能成为强龙。
     

原文地址:https://blog.csdn.net/soarfeng/article/details/144795947

免责声明:本站文章内容转载自网络资源,如本站内容侵犯了原著者的合法权益,可联系本站删除。更多内容请关注自学内容网(zxcms.com)!