项目在复杂多元化的同时,工程化也就成了不可避免的问题。在前端架构是无疑是十分重要一个环节。前端开发的技术在不断进步的同时,其实开发者也一直在不断思考如何更好的优化开发的过程,令开发可以变得更加“优雅”。毕竟一个复杂页面应用开发总是需要多人协作的。开发者也希望让自己的团队在开发过程中尽可能的减少重复的工作,并且尽可能的提高开发的效率,而且又使可维护性不被丢失。带着这些问题,前端开发者一直在朝着这个方向努力。
Node.js的诞生可以说为开发者们指明了一个重要方向。前端工程化中的组件化和模块化,往往是开发框架带给我们,就像我们前文所提到的angularJS一样,这些开发框架可以帮助我们实现组件化和模块化,令我们的代码结构变得更加清晰,但是却无法帮助我们进行自动化和规范化的过程。因此我们可以尝试将各个事件进行封装,并且在这个过程逐步对我们的方法进行抽象和解耦。在这种解耦和抽象过程中,其实就会形成我们所需要的规范,开发过程中这些规范可以更好的帮助约束整个代码的结构和层次。而在自动化这个大旗中,Node.Js技术却是帮助开发者一个重要武器。在Node.js帮助下,可以通过脚本帮助实现项目的打包和压缩以及其他重复性高的工作。在整个开发的过程会有自动化工具帮助开发者管理开发环境中各个文件包、依赖包以及版本控制。包括如果css文件的预处理等。在前端自动化可以节省大量的工作时间,并且减少重复工作,提高工作效率。
前端工程化对于目前前端开发技术的发展来说是至关重要的一环,它主要影响着前端工程项目是否能够高效的维持多人开发任务。不会因为项目过大而开发人员多时造成重复工作多,开发环境复杂的问题。开发者们也十分重视前端工程化的发展,如今市面上涌现了大量前端工程化的工具,例如grunt、gulp、webpack等。这些工具的出现,在如今的前端开发中有着不可估量的作用。复杂的前端项目也离开这种工程化工具。
4 小结
Web前端的发展历史很长,同时也充满着故事性,技术与需求的增长有着关联十分密切的关系,需求不断驱动技术的发展,技术又可以不断响应新的需求。现如今web前端已经进入飞速发展期,各种新的技术和新的框架层出不穷,开发者也在不断适应和学习新的技术。优胜劣汰,整个前端开发可以说是日新月异。前端架构在前端历史进程中可以说是不可忽视的,前端开发技术想要迈出大的一步,架构可以说是基石。而在架构中前端工程化又是十分重要的环节。工程化是现阶段web发展历程中不容忽视的,而自动化也是如此。如今前端自动化工具很多,它们的存在都是为了帮助进行前端项目的工程化。如何在众多的自动化工具中选择,也是一个十分重要的研究话题。目前在国内外的市场中稍微大一点开发项目前端都是无法离开自动化构建的。例如Twitter、Adobe使用的是grunt,我所在京颐护理教育部前端构建使用的gulp,也有国内大的公司例如百度也在研发自己的前端自动化构建工具fis,并且现在已经开始在市面上进行推广。所以就目前而言,前端自动化构建在国内外的发展和研究已经到了十分重视的地步。
目前市面中应用最为普遍的几款自动化构建工具例如grunt、gulp、webpack都依然有很强大的团队在支持和开发。他们有些是开源的项目,有着强大的开源社区和扩展插件,并且有着大量热心而且技术强大的开发者作为后盾。几乎每一个自动化构建工具都有着不可估量的发展未来。也让开发者对前端工程化这条道路充满了信心。