前端工程化的理解

前端工程化就是通过各种工具和技术,提升前端的开发效率的过程。就是为了让前端开发能够自成体系,个人认为可以从模块化、组件化、规范化、自动化四个方面思考。

模块化

简单的来说,模块化就是将一个大文件拆分成互相依赖的小文件,再进行统一拼装和加载。
1.js模块化
在ES6引入了模块化的概念,如CommonJS、CMD、AMD
2.css模块化
虽然现在有sass、less、stylus等预处理器实现了css的文件拆分,但是没有解决选择器全局污染的问题。
为了避免全局选择器的冲突,需要制定css命名规范:

  • Bootstrap风格
  • BEM风格
  • css in js是彻底抛弃了css,all in js使用js或者json来写
  • css module仍使用css,只是让js来管理依赖。他能够最大化的结合css生态和js模块化能力,目前看来是最好的解决方法。vue的scoped style也算是一种
    3.资源的模块化
    webpack的强大之处不仅仅在于它统一了js的各种模块系统,更重要的是它的万能模块加载理念,也就是所有资源都可以模块化

组件化

模块化只是在文件层面上,对代码或资源的拆分;而组件化是在设计层面上,对UI进行拆分

规范化

规范化其实是工程化中很重要的一部分,项目初期制定的好坏直接影响到后期的开发质量。
比如:

  • 目录结构的制定
    目录结构的合理设定,能为项目带来很多优点:
    • 有助于提高项目的逻辑结构合理性
    • 对应扩展和合作
    • 方便资源的统一定位管理
  • 编码规范
    • 制定一套良好的编码规范可以增强团队开发协作、提高代码质量。前端代码规范

自动化

任何简单机械的重复劳动都应该让机器去完成。

  • 图标合并
  • 持续集成
  • 自动化构建
  • 自动化部署
  • 自动化测试
©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

相关阅读更多精彩内容

  • 什么是"前端工程化"? 目前来说,web业务日益复杂化和多元化,前端开发从WebPage模式为主转变为WebApp...
    dosher_多舍阅读 64,231评论 6 88
  • 现在前端er在讨论什么,模块化,组件化,工程化无疑是逃不掉的话题。在前端向全端转变的路上,我们一定要理解这些东西,...
    从小就很瘦阅读 16,311评论 2 23
  • 1.为什么要进行前端工程化目的:解决代码冗余,提高项目可维护性,提高版本迭代速度,提高团队协作能力。主要目标:解放...
    JX灬君阅读 680评论 0 0
  • 最近无意中在github上看到大牛张云龙写的关于前端工程化的文章,虽然文章是几年写的,但我读完之后依旧收获满满,不...
    蘑菇均阅读 723评论 0 0
  • 前端工程化这个词出现的频率越来越高,一直没有明确的定义,有些人认为是模块化和自动化的工具,比如Webpack/Gu...
    憮悔阅读 798评论 0 0

友情链接更多精彩内容