安利一波崽崽表情包
为什么网上有人说WEB开发没技术含量?
web开发需要知识面很广的,需要一直学习。
1. 服务器方面:高并发集群,Serverless,K8S、Linux运维等。
2. 后端开发:开发语言、算法、框架、API开发、业务逻辑等。
3. 前端开发:VUE、小程序、H5、Nodejs等
4. 设计:字体图标、PS、Logo、UI设计等
5. 产品:产品文档、开发需求文档、项目管理、高保真原型等。
每一项精通都不容易,得花大量时间不断学习。
知识都是入门易,精通男。
2020年度OSC中国开源项目评选:最佳人气项目
我是一名程序员,对这个问题非常感兴趣,而且多年前的我,也曾经有过这种认知。接下来我就来回答一下这个问题吧~
一、部分童鞋可能对WEB开发定位不是很清晰
部分童鞋对WEB开发的定位还停留在页面方面纯前端网页开发的层面,一些标签、一些属性、再做一些样式就可以了。因为入门比较容易,所以会被认为没有技术含量。其实,并不是这样的。做过WEB前端开发的童鞋都知道前端的水有多深,单单一个兼容性问题就难倒了多少人,尤其是基于IE浏览器开发的场景下。虽然在移动应用逐渐普及的今天,在特定的行业和特定的领域,依然活跃着IE浏览器的身影。
二、优秀的框架降低了开发的门槛
本人主要的编程语言是java,那么就结合J2EE标准以及java生态下各优秀框架来简要进行说明。
1、J2EE是目前最为流行的企业级软件标准,并且提供了一系列标准组件。在这套规范下,我们可以通过servlet组件来很便捷的处理WEB请求,使用jsp组件对页面进行动态的渲染,使用JDBC与数据库建立良好的交互。J2EE不需要开发者关注传输层协议(这部分工作由WEB中间实现),仅需要关注应用层实现即可。或许,就是这种便捷,让很多人对WEB开发产生了误解。
2、SSH时代,我没有赶上struts1的时代,但是刚刚参加工作时,SSH(Struts2+Spring+Hibernate)算是最为流行的组合了。开发人员不但不需要关注传输层协议,而且连很多模板化的操作也都省略了。更重要的是在这个时代,基于MVC分层的思想已经有了很好的实践,各层分工明确,从而降低了开发的难度。
3、SSM时代,我认为是Spring系列的崛起的时代。Spring MVC以其更加简洁/安全的优势快速抢占了Struts2的地盘(记得当时有很多公司都将原Struts2项目使用SpringMVC进行了重构),此外,MyBatis(前身是iBatis,也是非常不错的框架)也将Hibernate逐步挤出C位(Hibernate框架配置多、问题多,自己还搞出一个HQL。使用起来比较繁琐,即便是拥有丰富应用经验的老司机都无法很好的驾驭)。
4、SpringBoot时代,要问现在最火的框架是什么,当然非SpringBoot莫属。SpringBoot对编码、配置、部署方面都做了响应的简化,而且官方还提供了非常方便的脚手架(虽然我几乎不用)。SpringBoot进一步的降低了编程的门槛。
可以看到随着框架的发展,WEB开发的门槛越来越低,从而吸引了大量的从业者。但是门槛和技术含量其实并没有多少联系。
三、技术含量
如果仅停留在CRUD工程师这一级别的话,那确实没有什么技术含量,会模仿,能CV就足够了,但是CRUD的级别其实只相当于游戏中的“新手村”级别,并没有窥探到开发世界中的奥秘。随着对业务量的增量,对系统可靠性、可用性等特性的考验越严峻,在进行系统设计、开发时也不再是以能够满足业务需求为目标,实现业务需求只是最基础的工作,更多的时间和精力将会投入到非功能性需求当中去。WEB开发门槛随不高,但是却非常值得深入学习,在充满各种挑战的场景(想想天猫淘宝的双11、12306的春运、除夕夜的红包)面前,CV就是一个渣渣~。
综上所述,WEB开发只是门槛比较低,通过一段时间的学习和培训后可以快速上手,但是WEB开发绝非没有技术含量,千万不要把这两个概念混淆了~
我是一名程序员,更多精彩请关注:空心小窝头