模块化和组件化区别

随着Web应用复杂度增加,模块化和组件化成为解决开发效率和运行效率的关键。组件化关注UI的拆分,如弹出框组件,而模块化侧重功能或数据封装。模块间的依赖管理是核心问题,ES6模块、AMD、CMD等规范应运而生。Babel等工具使得ES6模块的使用更加便捷。总结来说,模块注重职责分离,组件强调复用。
摘要由CSDN通过智能技术生成

我们的程序稍微大点就要分开写了,不然几万行代码放一起不得疯了,就像我们平时用电脑也会把电影和音乐分开放吧,这其实就可以算是模块 分开后就带来了依赖的问题,文件多了手动管理依赖就毁了,就有了amd cmd commonjs等,这些规范其实是为了解决模块的依赖,而不是模块本身

对比如下:

图片

组件化和模块化的价值都在于分治

web应用系统的复杂度不断提升,兼顾开发效率和产品实际运行效率,会在开发阶段运用组件化和模块化的手段分离关注点,结合构建工具合理打包。

组件化更多关注的是UI部分,你看到的一个管理界面的弹出框,头部,内容区,确认按钮和页脚都可以是个组件,这些组件可以组成一个弹出框组件,跟其他组件组合又是一个新的组件。

模块化侧重于功能或者数据的封装,一组相关的组件可以定义成一个模块,一个暴露了通用验证方法的对象可以定义成一个模块,一个全局的json配置文件也可以定义成一个模块。

封装隔离来后,更重要的是解决模块间的依赖关系。babel作为现在最火的es6转换器,用babelify或者webpack的babel loader再或者基于task的构建系统插件都可以很方便用起来es6 modules

总结:『模块注重的是职责分离,而组件强调的是复用』

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值