前端工程化的一些理解
一、模块化
【前端工程化的一些理解】主要是js模块化,可以使用CommonJS、AMD、CMD等模块化规范,其中的区别是CommonJS对于模块是同步加载的,常用于服务器端;AMD、CMD是异步模块加载更适用于浏览器端;还有一个变态的UMD规范是兼容各种规范的产物。如今的ES6的import、export关键字也提供了简单的模块化系统,虽然ES6的浏览器兼容性是一个问题,但可以使用babel转化为ES5语法来解决。
解决方案:webpack + babel + ES6
二、组件化
模块化是从语言层面将代码拆分;组件化是基于模块化在设计层面上对UI的拆分。
模块是独立的算法、数据单元;组件是独立的可视、可交互单元。
一个组件一般是包括了html、js、css的功能完备的结构单元。理论上一切皆是组件,这个思想在Vue中体现的很好,每个文件都是一个包括了完整html、js、css的.vue组件。
三、规范化
一个好的开发团队,代码的规范化是非常重要的,具体使用什么样的规范是次要的,最主要的是整个团队的共同遵守。
一般情况下,规范是由整个团队共同讨论决定的,包括目录结构、编码规范等。
解决方案:ESLint or JSLint
四、自动化
很多可以由工具自动完成的东西,不应该浪费人力资源。
前端的自动化可以包括以下几个方面:图标合并、文档生成、自动化构建、自动化测试等。
推荐阅读
- 热闹中的孤独
- JAVA(抽象类与接口的区别&重载与重写&内存泄漏)
- 放屁有这三个特征的,请注意啦!这说明你的身体毒素太多
- 一个人的旅行,三亚
- 布丽吉特,人生绝对的赢家
- 慢慢的美丽
- 尽力
- 一个小故事,我的思考。
- 家乡的那条小河
- 《真与假的困惑》???|《真与假的困惑》??? ——致良知是一种伟大的力量