Web 前端开发大致上是,创建出 Web 网页以供用户浏览使用等。主要通过 HTML、CSS、JavaScript 等技术来实现交互。
所面临的挑战主要有几点:
一、
Web 的载体的多样性。
以浏览器为例,分别有 IE,Chrome,火狐等。虽然有 ECMA 委员会进行标准化,但不同浏览器对 HTML、CSS、JS 等支持程度还是存在差异。所以需要进行兼容处理。
而且,这还会另测试的复杂度上升。
二、
Web 前端开发的工程化问题。
在以前,Web 前端开发是极度依赖于后端的,例如 JSP、PHP 等前后端代码混杂,这段时期,前端的工程化问题还不算凸显。
而随着 MVVM 的普及,前后端的分离,本身的前端项目需要有一定的组织,协作,需要有前端的一套工程化解决方案。
包括组件化开发,单元测试,增量更新,代码压缩混淆,项目的打包构建发布等。
三、
Web 框架之间的不兼容。
Web 开发中,躲不开的是三大框架 React、Angular、Vue。而框架与框架之间存在明显的沟壑。
对于一个 Web 前端项目来说,其实使用哪种技术并不重要,重要的是能实现需求。但是在实际上,如果项目选定了某个框架,其他框架之间的某些组件或者解决方案并不能互通。
当然,现在的 Web Component 有希望解决这个问题,但是, Web Componet 的兼容性也存在明显问题。
结语:
Web 前端开发所面临的问题远不止这些。当然,有问题就有解决方案,Web 前端技术就是在攻克这些问题上不断演进。
web前端开发是在互联网发展中新兴的职业,简单来说就是网页开发,从事互联网中网站的开发,优化等一系列前端相关的web开发,当然不仅仅是网页的前端开发,比如还有应该程序开发,移动端开发,游戏开发,小程序开发等都是前端开发范畴,主要以HTML,CSS,javascript开发为主,当然涉及到的技术,工具等知识还有很多,现在都是工程化的,不仅要有深度,还有广度,大部分web网站主要是运行在浏览器上的。
web前端开发,从自己认识以来,这个专业职位出来大概10年左右。记得在自己入行互联开发的早期,那时候经常叫网页制作,美工,前后端没有分得很开,不像现在的前端,后端,设计师等等职责很分明,那时候一个就包了前后端的工作职责。
记得自己的找的一份工作就叫美工,主要是写HTML和CSS,div+CSS布局,当然还有美化工作,做登录页,做弹出层样式,系统管理页面的布局和美化等,后端是JSP,自己不写js,js都是后端写。还有做宣传单等,当时就以为互联网开发就是这样的。压根都不知道有前端和后端的说法。后来第二份工作去面试美工和网页制作,偶然被叫去面试前端开发的工作,当时想居然还有这样的职位,经过一段时间才清楚web前端开发这个职业。才知道web前端需要掌握js,DOM,ajax等等技术,最数据渲染交互等等。
随着技术的发展,web前端开发工程师所涉及到的东西越来越多,除开jquery等框架外,requirejs等模块化也是需要掌握,还有浏览器原理,http,gulp,webpack等等。从早期的写布局CSS,HTML外,web前端开发也越来越多东西。
再到这几年的vue,react框架等等,还有nodejs等等,web前端开发需要掌握的越来越多,不仅要会用,更需要掌握其原理,原生js很多深层的原理也要掌握透,慢慢地向全能发展,对服务器,Linux等要有一定的掌握。
所以面临的挑战就是要不断地学习,新技术越来越多,需全面发展,需要掌握的东西也越来越多,不学习就会被淘汰,现在都是工程化的,除开前端技术外,一些管理,组织,思维,思想,设计,架构等各方面扩展知识都需要有所掌握,还有就是做技术这行,随着年龄的越来越大,挑战也越来越大,年龄大也是挑战,这些都是web前端开发要面临的挑战。