很多外行人在考虑转行做IT的时候,都会面临以下几个困境:
做前端还是做后端?
哪一个更好?
哪一个发展前景更好?
哪一个薪水更高?
哪一个更容易学?
…
嗯嗯~
其实如果想要深入的钻研IT技术领域,不管是前端还是后端,都不是一件容易的事。
今天我就从以下几个方面给大家详细介绍一下。
1、什么是前端,相关职位有哪些?
前端是网站的前台部分,既包括页面设计,也包括页面实现,主要指在PC、移动设备等浏览器上展示给用户的网页。
“前端”是网站中直接和用户交互的部分,从字体到布局到图片大小,还有下拉菜单、显示栏、动效等等,所有这些视觉可见的内容都是浏览器解析、处理、渲染相关的HTML、CSS和JavaScript的结果。
简单的说,所有你在使用互联网时所看到的网站上的展示页面以及供你操作的用户页面都可以称为前端。
IT行业里的前端一般指两类职位:
UI设计:又称用户界面设计,是PC互联网和移动互联网的设计,如网页设计、App页面设计及布局、图标设计、交互设计等。设计时除了考虑视觉美观度,还需要考虑人机交互的逻辑性。主要载体是各类电子显示屏。
Web前端开发:将UI设计效果图转换成可被浏览器运行的网页,并配合后端进行网页上的数据展示、交互等可视化工作。
2.什么是后端,相关职位有哪些?
IT行业里的后端更多的是和数据库交互,处理相应的业务逻辑,需要考虑的是如何实现相关功能和信息数据的接入,平台的稳定性和性能等,简单来说就是处理前端展现出来的业务逻辑功能。
后端对于用户来说是不可见的,并且涉及的逻辑代码比前端人员多得多。
IT行业里的后端一般指两类职位:
后端开发:使用Java、Python、PHP等各种技术语言实现产品业务逻辑和功能,目前企业中比较主流的后端语言是Java开发。
软件测试:对开发人员制作的产品或程序在规定条件下运行并反馈结果的过程,以发现程序错误,衡量软件质量,评估是否满足设计要求。
举个例子你就明白什么是前端,什么是后端了。
当你在一个网站上注册时,你的信息会被记录在网站的后端数据库中,方便你下次直接登录。用户注册时看到和使用的页面属于前端,而存储你的注册信息的后端数据库则是后端。
比如疫情期间,我们都使用健康码。
打开微信扫一扫出现的绿码界面,就是利用前端技术实现的。
但实际上微信扫描二维码之后,会向服务器发送请求,服务器会根据用户信息来决定二维码的颜色,这套逻辑和相关代码实现对用户来说是不可见的,这是后端的工作。
3. 前端和后端不同的职位分别需要哪些技能?
1.UI设计。
需要熟练操作PS、AI、Axure、Coreldraw等设计软件,了解移动端、PC端不同平台的特点,能做多屏界面设计、Logo设计、可视化与背景等。同时如果能做Web前端设计、交互原型设计、动效设计会更有竞争力。
2.Web前端开发。
需要熟练掌握HTML5、CSS3、JavaScript、JQuery、Ajax、ES6等核心前端技术,具备互联网交互设计能力,熟悉后端服务器运行环境及数据通信协议,掌握响应式布局框架、Angular、Vue、React等JS框架及App开发能力。
3.后端开发。
以Java为例,后端开发主要使用到的技术包括但不限于Spring、Springmvc、Hibernate、Http协议、Servlet Tomcat服务器等。掌握JSP、JSTL、XML、HTML、JavaScript、JQuery等语言,能做MySQL或者SqlsServer等简单主流数据库设计,了解一些设计模式等。
4.软件测试。
初级测试人员需要学习功能测试技术、计算机基础、软件测试核心理论、Linux、数据库等。
但若想长期发展,测试人员还需要掌握一门Python或Java等计算机语言,熟悉标准测试流程,能够进行需求分析、计划制定、用例编写和文档输出;能够独立搭建测试环境;有性能测试、自动化测试经验者优先。
4. 前端和后端不同岗位的难易程度如何?
总体来说,IT行业各个技术岗位的入门难度不大,但是如果想要深度发展的话,就需要付出更多的努力了。
很多朋友喜欢根据代码量来区分前后端岗位的难易程度,按照这样的顺序排列:Java开发>Web前端开发>软件测试>UI设计。
但这并不是完全绝对或准确的。
IT领域各个岗位的分工非常细致,从岗位特点来看,Java对逻辑的要求比较高;测试需要细心和耐心,同时也需要一定的编码能力;Web前端与UI设计需要对美有一定的理解和追求。
所以每个职位的侧重点都不一样,不同公司对同类职位的要求也不同,难易程度不能一概而论。
**
5、前端、后端不同的职位,发展前景和薪资有什么区别?
发展前景好像没有太多值得讨论的,因为只要IT行业不断发展,相应的四类重要岗位就永远需要。
同时只要你能够静下心来,在自己的岗位上努力发展,那么未来的福利待遇肯定不会差。
当然,两者虽然都有发展前景,但是市场需求不一样,相对来说,在国内企业,对Java的需求会更大一些,其次Web前端和软件测试也差不多,UI设计相对来说比较少。
造成这种情况的原因在于,只有相对中大型企业,研发岗位才会分得更细,但在一些初创企业,开发人员一般也做测试,前端也做UI等等。
全国不同职位平均薪资如下,数据来自知友集,供大家参考:
看了上面的数据,你可能会觉得测试甚至还没有超过10K。
但事实上,有一类测试岗位的薪资并不低。
通用测试和测试开发差距这么大的原因在于,以前只要有点知识,就能找到一份通用的功能测试工作,公司不会有太高的要求。但现在如果带着这样的能力跳槽,基本上很难再找到工作了。
现在公司在招聘测试人员的时候,基本都会要求测试人员懂一门开发语言,因为懂开发的测试人员可以根据公司具体的产品,编写自己的自动化测试工具,从而提高工作效率,给公司带来更大的回报。
最后我想说,不管是前端还是后端,不管是难还是简单,大家可以根据自己的喜好去选择,因为兴趣是最好的老师,任何一个行业想要深耕,都是需要付出努力的。
希望这篇文章能够帮助大家解决一些疑惑,同时也希望大家注意抵抗病毒,外出做好个人防护。
正在学习Java的朋友们,如果对Java的学习路线、学习方法、教程、开发工具等有疑问,可以来我的Java十年俱乐部:3907814
有什么不懂的问题可以随时交流学习,有助于你学习Java。
暂无评论内容