在前端开发中为了提高网页的开发效率,提高代码的复用率,同时降低块与块之间的耦合性。
产生了组件化、模块化让我们解决问题的方法
组件化更多关注的是UI部分,比如头部,内容区,弹出框甚至确认按钮都可以成为一个组件,每个组件有独立的HTML、css、js代码。
我们可以把他放在页面的任意部分,也可以和其他组件一起组成新的组件,一个页面是各个组件的结合,可以根据需要进行组装。
而模块化侧重的功能的封装,主要是针对Javascript代码,隔离、组织复制的javascript代码,将它封装成一个个具有特定功能的的模块,有了模块,我们就可以更方便地使用别人的代码,想要什么模块就加载什么模块,但是模块开发遵循一定的规范,及ADM规范和CMD规范。
注释:
AMD规范:”异步模块定义“的意思,采用的是异步加载模块,模块的加载不影响后面语句的运行,所有依赖这个模块的语句,都定义在一个回调函数中,等到加载完成之后,这个回调函数才会运行
模块可以通过传递参数的不同修改这个功能的的相关配置,每个模块都是一个单独的作用域,根据需要调用。
一个模块的实现可以依赖其它模块。