美文网首页
iOS架构探究--工厂模式--简单工厂模式

iOS架构探究--工厂模式--简单工厂模式

作者: 八命猫 | 来源:发表于2017-10-05 15:45 被阅读0次

    工厂模式是我们最常用的实例化对象模式了,是用工厂方法代替new操作的一种模式。工厂模式在Java程序系统是随处可见。因为工厂模式就相当于创建实例对象的new,我们经常要根据类Class生成实例对象,如A a=new A() 工厂模式也是用来创建实例对象的,虽然这样做,可能多做一些工作,但会给你系统带来更大的可扩展性和尽量少的修改量。

    工厂模式分为很多种,在不同场景下,有不同的模式。
    工厂模式属于创建型设计模式。

    1.为什么使用工厂?
          解除耦合:下面案例一和案例二可以很好的解释工厂模式如何解耦。

    案例一:直接实例化对象 案例一:直接创建控件UML

    可见button和imageView与客户端是直接依赖的关系,这样耦合度就很高。如果我们在中间加入一个工厂类:

    案例二:工厂模式解耦

    简单的说:客户端无需知道imageView和button的创建过程,只对工厂类提供信息(参数)即可。(就像我只需要给工厂原料,工厂就能给我想要的产品一样)。下面是简单工厂的代码:

    main.m文件 创建工厂类ViewFactory.h文件 创建工厂类ViewFactory.m文件

    不过上面的工厂模式有点问题:在项目升级/扩展模块的时候,每次需要switch判断,如果case多的化,就不那么方便了。我们可以优化为动态创建

    创建的工厂类.h文件 创建的工厂类.m文件 在main.m文件使用工厂类

    iOS中xib和storeborad本质就是使用工厂模式

    相关文章

      网友评论

          本文标题:iOS架构探究--工厂模式--简单工厂模式

          本文链接:https://www.haomeiwen.com/subject/jmkcyxtx.html