美文网首页互联网科技
组建、模块、对象

组建、模块、对象

作者: 多了去的YangXuLei | 来源:发表于2016-08-29 13:28 被阅读36次

    现在coding慢慢开始流行组件化开发,到底组建,模块,对象是什么意思?博主并没有用过这么高深的概念进行开发过,所以在网上进行了资源整合。先有个认知吧,以后开发用到了思想在写深刻的理解吧

    1、组件,模块:
    相同:都是基于功能划分的单位。比如说完成网络功能的组件、模块、完成统计功能的组件、模块; 这二者没有上下级的包含关系,模块可以由多个组件构建,独立的组件也通常由多个模块实现。
    不同:

    组件,偏向发行的概念(outside):
    1、强调的是“跨项目的可重用性”这层意思。比如“XXX采集卡通用远程监控组件”,表示这个东东是完成远程监控功能,并且是为了可重用而开发的. 这个组件本身由采集卡驱动、网路传输、信号处理等诸多模块共同实现。
    2、作为需要被第三方客户使用的独立工具,组件一般都有独立的封装。比如一个组件用符合COM接口规范的DLL发行,某些时候发行库大到包含一系列可执行文件、系统服务。

    模块,偏向设计的概念(inside):
    1、用于在项目中划分相对独立的功能。比如说公司为了开发一套组件,请您设计了几个算法模块;在一些场合,模块本身就要引用多个组件,典型的是远程医学系统中视频会议模块就利用了多种第三方开发的组件。
    2、模块更偏重逻辑上区分,封装上可以和其他模块混合,也许发行的时候,把所有模块合并为一个DLL一起发行(客户通常没必要知道你的系统由哪些模块组成)。

    2、对象:
    和上面二者没有并列关系,只是自然事物在计算机上的简化表示的集合,比如描述学生的属性(名字、年龄、成绩等)和维护属性的方法(如对成绩排序等);组件和模块都可以使用面向对象的方法来实现,通过处理一定的对象,完成自身的功能。

    从形态上来看,模块和组件都是相对稳定的代码的一种称呼。但是从实际的功能范围上来看,组件一般来说是实现某一种功能或者某一个功能的某一个细节的稳定的相对独立的类,而模块则至少有一个组件组成,也就是说模块的覆盖范围要比组件更大一些,它可能有多个组件组成,甚至除了组件之外还有很多相对稳定但并不会提供独立功能的代码一起来构成。
    这就是两者的差别。

    附带几篇文章:

    iOS组件化方案探索[http://ios.jobbole.com/84290/]

    已买到的宝贝前端组件化探索[http://ju.outofmemory.cn/entry/221379]

    [Thinking in Ember 2] 组件化的探索——路漫漫其修远兮,还得 Up & Down 啊~[https://ruby-china.org/topics/28230]

    利用handlebars实现后端组件化[https://cnodejs.org/topic/571e48db3f27a7c841bcb601]

    大规模的前端组件化与模块化[http://www.infoq.com/cn/news/2014/04/front-end-modular]

    相关文章

      网友评论

        本文标题:组建、模块、对象

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