前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >前端工程化的个人思考-续

前端工程化的个人思考-续

作者头像
MavenTalker
发布2019-07-19 10:41:16
5420
发布2019-07-19 10:41:16
举报
文章被收录于专栏:歪脖贰点零歪脖贰点零

有朋友问最近看的哪两本关于前端的书籍——《前端架构设计》+《前端工程化:体系设计与实践》,一本重道,一本重术,道与术结合更具指导意义。希望了解前端的朋友推荐看一下。

接着上篇未完的话题,《前端工程化的个人思考》,前端工程化很庞大,涉及的点也比较多,笔者也只是想到那里就写到那里,要讨论的朋友可在文末留言讨论。

规范检查

既然走工程化路线,代码规范刚首当其冲,但每个人的编码习惯各异,只能靠团队规范来大方向上求同存异,Java的规范是出了名的,规范检查插件、组件也是种类繁多。前端自然也会有对应的组件来解决前端代码的规范问题,如jslint,eslint,stylelint等,结合svn/git或构建编译工具来确保代码的规范性,应该也有详细的规范文档来约定。我比较喜欢用的工具组合是SonarQube+Jenkins,利用Jenkins进行持续集成构建的同时,进行规范检查,将结果输出到SonarQube中在页面上展现出来,当然这属于一种后置的检查,在本机开发构建时,就可以集成到构建工作包或IDE插件中进行检查。

前端测试

不少项目针对后端有严格的单元测试通过率、测试代码覆盖率、代码注释率等,但对前端要求比较少,这也从侧面说明前端测试不好做,特别是前端的自动化测试工作。如果是前后端兼顾的开发,你基本是不会想到给前端代码写单元测试的,因为后端的逻辑性更强,测试方便。如果你是专职做前端开发的,你应该想想有没有给你的前端代码做单元测试?我们总是习惯于在JS代码中加入alert或console,刷新页面看看到底结果如何,一处又一处,一遍又一遍,直到随处可见的alert/console淹没在正常代码处理中。

不好做不代表不能做,具体到不同的技术栈,想必也有对应的测试工具来辅助大家进行测试,如Vue体系、React体系等等,算是有比较成熟的生态。也有独立的优秀三方测试框架,如Mocha、Karma等,结合断言库如char.js(没有写断言验证的单元测试都是耍流氓),集成到CI工具中,完成一个持续性的流程。

工作流

工程化做的比较好的当属Java,而前端前些年似乎不存在这个概念。虽然一部分人也在努力这么做,直到NodeJS的出现,才有了质的飞越。不但提升了前端在软件工程中的地位,也为一大批工具的出现奠定了基础。独立构建、独立部署、任务处理(编译、压缩、混淆、合并、解决依赖、文件hash)等工具的出现,将一个完整的工作流程串联起来,再结合CI/CD工具,可谓发挥出极大的威力,解放人力,提升生产力。特别是Jenkins新版本中Pipeline功能的提出,使工作流程配置更加流畅。

附:《前端架构设计》思维脑图总结图


写到这里,算是这段思考的一个完结,文中提到的点都比较数粗糙,后续还是要深入进去,毕竟觉知此事要躬行。

本文参与 腾讯云自媒体分享计划,分享自微信公众号。
原始发表:2019-05-10,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 MavenTalk 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体分享计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 规范检查
  • 前端测试
  • 工作流
相关产品与服务
持续集成
CODING 持续集成(CODING Continuous Integration,CODING-CI)全面兼容 Jenkins 的持续集成服务,支持 Java、Python、NodeJS 等所有主流语言,并且支持 Docker 镜像的构建。图形化编排,高配集群多 Job 并行构建全面提速您的构建任务。支持主流的 Git 代码仓库,包括 CODING 代码托管、GitHub、GitLab 等。
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档