美文网首页面试宝典
设计能力 - 你如何考虑组件化

设计能力 - 你如何考虑组件化

作者: 撸帝 | 来源:发表于2019-03-04 11:24 被阅读22次

    学习完整课程请移步 互联网 Java 全栈工程师

    组件化与模块化

    首先来谈两个前端和移动端比较常见的词:组件化模块化

    首先,可以肯定的是,组件化和模块化的中心思想都是 分而治之。目的都是将一个庞大的系统拆分成多个组件或者说是模块。

    image

    组件化

    组件化就是基于可重用的目的,将一个大的软件系统按照分离关注点的形式,拆分成多个独立的组件,主要目的就是 减少耦合

    一个独立的组件可以是一个软件包、WEB 服务、WEB 资源或者是封装了一些函数的模块。这样,独立出来的组件可以单独维护和升级而不会影响到其他的组件。

    模块化

    模块化的目的在于将一个程序按照其功能做拆分,分成相互独立的模块,以便于每个模块只包含与其功能相关的内容,模块之间通过接口调用。将一个大的系统模块化之后,每个模块都可以被高度复用。

    模块化和组件化的区别

    从上面的定义中可以看出,组件化和模块化的意思差不多,主要思想都是分而治之。只是一个把拆分之后的每个片段叫做组件、另一个把拆分之后的片段叫做模块。那么这两种拆分在拆分方式上是不是有什么不同的?

    关于组件化和模块化的区别,我在网上看了好多资料,也没有人能给出准确的回答。其实没有准确回答的原因也比较明显,那就是大多数时候我们真的不需要严格的区分这两个名字。我们要学习的是其中的解耦和分治的思想和目的。

    从另外一个角度来讲,如果真的要区分一下组件化和模块化的话,那么可以认为这两种分而治之的目的稍有区别:

    • 模块化的目的是为了 重用,模块化后可以方便重复使用和插拨到不同的平台,不同的业务逻辑过程中。
    • 组件化的目的是为了 解耦,把系统拆分成多个组件,分离组件边界和责任,便于独立升级和维护。

    相关文章

      网友评论

        本文标题:设计能力 - 你如何考虑组件化

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