安全套体验师入职门槛是什么,有人觉得IT行业门槛低吗培训就可以进入吗

我想题主所说的IT行业安全套体验师入职门槛是什么,指的是其中的开发工程师吧?我是一名经过培训入行的软件工程师,到目前已经工作了将近8个年头了,我认为IT行业门槛低是相对于过去来说的,通过培训确实可以实现行业入门,但是想要百尺竿头更进一步,还是要下苦功的。下面我就谈谈我的看法吧,如果有表述不准确的地方,欢迎各位童鞋指正,如有遗漏,欢迎补充。

安全套体验师入职门槛是什么,有人觉得IT行业门槛低吗培训就可以进入吗

安全套体验师入职门槛是什么,有人觉得IT行业门槛低吗培训就可以进入吗

门槛变低先来谈一谈门槛吧。任何行业都有一定的门槛,软件开发也不例外。随着编程语言越来越简单,各种中间件和开源库的成熟程度和性能的不断提升,开发人员可以不用过多的关注很多与业务无关的技术细节。基于这种技术红利,从业的门槛而确实比多年前要低了很多,但仅仅是相对过去而言。

安全套体验师入职门槛是什么,有人觉得IT行业门槛低吗培训就可以进入吗

一、编程语言门槛在降低

安全套体验师入职门槛是什么,有人觉得IT行业门槛低吗培训就可以进入吗

从时间维度来看,编程语言共分为三个阶段。

安全套体验师入职门槛是什么,有人觉得IT行业门槛低吗培训就可以进入吗

(一) 第一代语言:机器语言。我们都知道计算机其实很“傻”,只认识0和1,因此第一代的编程语言就是由0和1构成的机器语言。用0/1编程的问题非常明显,难理解、效率低、易出错、维护困难等等。面对一堆乱七八糟的纸带,很难将其和IT挂起钩,可想而知机器语言的入门难度有多高!

安全套体验师入职门槛是什么,有人觉得IT行业门槛低吗培训就可以进入吗

(二)第二代语言:汇编语言。因为机器语言编程的困难,伟大的工程师们创造了汇编语言,汇编语言通过易于人们理解和记忆的特定字母代替指令,这样理解和阅读的难度就大大降低了。这样就需要有专门的“翻译”将特定的字母翻译成计算机可识别的0/1,编译器就是在这个阶段诞生的。虽说汇编语言使用了人类相对好识别的方式来表示0/1,但是依旧存在易出错、难维护、效率低的问题。在大学期间学习微机原理时曾经学习过汇编语言,确实非常的晦涩难懂。不是还流行那么一句顺口溜么:微机原理闹危机,随机过程随机过,实变函数学十遍,汇编语言不会编。(三)第三代语言:高级语言。高级语言又分面向过程语言和面向对象语言。C语言是面向过程变成语言中的佼佼者,同期的其他语言基本已经被抛弃了,但是C语言一直沿用了下来,至今仍然在占据着TIOBE编程语言榜单的重要位置(难道在给C语言起名字的时候就有C位一说么?);而面向过程语言中的佼佼者就是C++和Java,尤其是Java语言,凭借其开源及优秀的可移植性,占据着很大的市场。在高级语言时期,编程语言的语法更加的友好,可读性和可维护性更强,使得语言的学习难度进一步的降低。而Java作为面向对象语言中的佼佼者,还接管了让人头疼的指针和内存管理工作(其实是JVM的能力),使得其学习难度进一步的降低。

安全套体验师入职门槛是什么,有人觉得IT行业门槛低吗培训就可以进入吗

此外,脚本语言也逐渐流行起来。火爆的Python和Go都出现在了TIOBE的TOP20榜单中。

安全套体验师入职门槛是什么,有人觉得IT行业门槛低吗培训就可以进入吗

编程语言的不断“革命”,其实就是编程语言学习门槛在不断降低的有力证明,因为大家总是更喜欢简单且高效的事物。

安全套体验师入职门槛是什么,有人觉得IT行业门槛低吗培训就可以进入吗

二、强大的公共组件支持

现在的软件开发离不开各种组件(中间件、应用级框架等),组件为我们的开发提供了很多的便利条件,让我们的程序员能够将更多的精力投入到业务逻辑上。我们不妨设想一下,如果没有了框架和中间件,即使有Java这种高级语言的存在,想快速构建一个系统也是非常困难的。为了能够更加直观的体会到组件的发展,我将结合我从业以来应用级框架的发展情况进行介绍。

(一)J2EE。这是一个Java官方牵头制定,并得到广泛认可的企业级规范。在这套规范中,我们可以通过servlet组件来很便捷的处理WEB请求,使用jsp组件对页面进行动态的渲染,使用JDBC与数据库建立良好的交互。J2EE不需要开发者关注传输层协议(这部分工作由WEB中间实现),仅需要关注应用层实现即可,但是基于Servlet/jsp进行开发还是比较繁琐的。我来简单介绍下使用Servlet/jsp进行开发的一些基本流程,童鞋们可以感受一下。

创建web项目;

编写web.xml

文件(web.xml

是J2EE的核心配置文件,也是应用和中间件连接的桥梁);

编写Filter、Servlet;

编写Jsp动态页面;

打成war包,并提交到web中间件上。

主要的工作在第3步,在开发过程中需要考虑字符集、线程安全问题,还需要手动获取请求参数、手动写出应答数据,程序最终需要发布到web中间件上来运行。

(二)SSH,这是Spring+Struts2+Hibernate的简写。SSH很好的落地了MVC模式,由Struts2负责业务控制层处理,HIbernate封装对数据库的操作,Spring负责解耦以及整个项目的整合。相对于Servlet/jsp来说,SSH确实要在编码方面简化了不少,不再需要人工的获取参数,也不需要“写死”依赖到代码中,繁琐的数据库事务也被AOP接管。虽然相对Servlet来说少了不少开发工作量,但是超多的配置文件和jar包的依赖成了开发人员的负担,曾经有些开发人员戏称自己为配置工程师~。

(三)SSM,Spring+SpringMVC+MyBatis的简写。简单而安全的SpringMVC代替了Struts2(繁琐且频繁有漏洞),轻量高效的MyBatis代替了Hibernate(框架比较重,问题也比较多)。注解的出现,使得项目的配置内容大幅度减少。于此同时,Maven也流行了起来,可以比较方便的管理项目的第三方依赖。

(四)SpringBoot,SpringBoot的优秀可以通过其流行程度来证明。在SpringBoot中内嵌了web容器,并且提供了丰富的plugin,可以让项目以jar包的方式运行。此外,对依赖jar包的管理也更加简单,在其他方面也提供了一站式服务的能力。

综合java主流的应用级框架的发展情况来看,虽然都是基于J2EE标准,但是从开发、配置、管理、运维等方面都在不断的进行提升,应用框架将很多与业务无关的技术细节进行了处理,开发人员只需要关注相应的业务实现即可。

可见,随着语言门槛的不断降低,应用框架及相关组件日益成熟,IT从业的门槛是相对(过去)较低的。

培训速成我们需要对入门有一个相对客观的定义,我认为入门的标准为:具备独立承担开发任务的能力(有师父带的那种不算)。现阶段对开发人员的最低(入门级,外包公司能卖人头的那种。大厂、独角兽、互联网等等尖端的先不计算在内)要求主要包括四个方面(行业/公司还会有其他要求):

语言,需要熟练掌握语言的语法(编译都过不去的不能要)

API,需要熟悉常见的API(String、Date、IO、BIO等)

框架,SSM、SpringBoot(应用层面必须掌握)

数据库,基本增删改查、关联查询要掌握

单从以上四点来看,几乎所有java培训班提供的课程安排都是能覆盖到的,但是,从我参加培训的情况以及后续从培训机构招聘的情况来看,学员之间的差距还是非常大的,差不多满足2/8原则吧(毕竟培训班是商业化机构)。

因此,“靠培训就可以入门”有点绝对了,培训就是学习的过程,一定会有差异,除了自身的努力之外,还要看老天爷赏不赏饭。所以,报班还是要理性一些。另外,选择培训机构也要谨慎(有些培训机构会存在学员毕业直接成讲师的情况),一定要试听!

培训速成是适用于老天爷赏饭并且自身还非常努力的同学的!

程序员是一个需要持续学习的职业,IT也是一个需要持续学习的行业,入门不是目的,走下去才是目的,只有持续学习才能在这条路上走的更远!与君共勉!

我是一名程序员,更多精彩请关注:空心小窝头

2022-06-10

2022-06-10