当前位置: 首页 > Web前端 > HTML

个人对前端工程的感想

时间:2023-04-02 16:58:58 HTML

在我的印象中,一提到软件工程,首先想到的就是前端,大概是因为以往的偏见吧。这两年最大的感受就是前端发展很快,现在的前端开发远不是从网上随便挑一段jQuery代码搞定功能那么简单。AJAX的出现首次将前端请求异步化,局部刷新大大提升了用户体验。NodeJS的出现,将前端的发展推向了一个高潮。一大批基于V8引擎和NodeJS的开发工具脱颖而出,快速提升前端开发的效率和效果。下面从几个方面整理一下近期对前端的一些思考,仅供参考,欢迎在留言区讨论。对于前端工程师岗位来说,只要有一定规模的团队,前后端分离开发是不可避免的。前端开发人员过去常常由后端开发人员兼职。网页创建者制作静态效果后,后端开发人员嵌入动态功能。现在也有团队这样做,当然这不是最有效率的。前端工程师独立岗位的出现,让前端工程更近了一步。这部分专门用于前端开发,不再需要关心后端数据如何组装、处理、存储,将更多的精力投入到终端展示上。面向浏览器的编程(之前一直准备写一篇叫《面向薪水的编程》的文章)确实是上个月才接触到的一个新名词。被ie6折磨过的朋友相信都能明白其背后的含义。各种浏览器终端的出现,而且很多都是以不符合JS/CSS规范的形式出现,导致终端显示的发展不得不考虑各种浏览器和不同版本浏览器的兼容性。今天,前端技术的发展足以解决这个问题。Babel的生成只需要在编程时关注语言即可。构建时会生成低版本的JS,满足低版本的兼容。PostCSS的出现也让开发CSS时不用担心多版本多类型浏览器的兼容性问题。好消息是,各种浏览器也在积极向规范和标准靠拢,让终端显示更加一致。开发效率大量优秀的JS开发框架和脚手架,将JS开发提升到一个前所未有的高度。使用纯jQuery的朋友比较少。让我们开始拥抱Vue、React和ng2。Yoeman、Vue-cli等脚手架工具可以让你轻松搭建前端项目。CSS预处理和预编译框架为这种弱编程语言增加了编程能力。很多项目都采用了less和sass。任务处理器极大的解放了人力,gulp和webpack几乎成为了现代前端开发的必备。本地化开发时,通过事件监听,直接热部署将结果呈现给终端,无需反复刷新页面或清除缓存刷新页面。Mock的出现,将前端开发和后端开发隔离开来,不再相互制约。模块化组件化谈到工程,总是离不开模块化。说到模块化,似乎也需要组件化。这是一个依赖链。但实施难度相当大,尤其是有工期的项目,交付是第一要务,交付后如果没有后续升级,模块化和组件化优化基本不会进行。产品化项目更合适。随着功能的迭代推进,模块化更有利于解耦开发,提高复用性,也有利于后期维护。Node的出现,使得模块化变得更加容易。你会发现require、import和export在模块化项目中使用得如此频繁。CommonJS、AMD/CMD在ES6之前的模块化开发中发挥了重要作用。ES6原生支持模块化(ECMAScript简称ES,JavaScript只是ES的一种实现)