我是计算机二专业毕业的,现在在做前端开发。那时候大学的课不太好,和前端相关性高的网页设计课只教HTML和CSS。当时导师用的编辑器其实是记事本。你能相信吗?大三快结束的时候,突然发现自己没有什么可以奉献的。室友们慢慢得到了实习或者学校的offer,却不知道出路在哪里。当时他们完全纠缠了快两个月。有了想法就上网提问,然后被圈内人劝退,陷入自我怀疑的境地。
后来经过一段时间的奋斗,我发现自己似乎什么都做不了。我崩溃了,所以我简单地把简历放进去看看。刚找了个设计助理或者前端实习岗位混个实习。果然,过两天我就接到了面试的电话。我太高兴了,以为这就是上帝不关一扇门,却开另一扇门的方式。到了地方后,hr先给了一张表格,填了一些资料,问了一些常见的问题后,说公司一般不招没有相关工作经验的应届毕业生,但是可以培训一段时间,培训有一定的费用,可以分期贷款的方式支付,但是培训结束后可以留给公司做项目,支付培训费用。听完之后,我突然醒了。这不是培训机构常用的骗人套路吗?于是我赶紧跑了。
后来听说有些朋友毕业找不到工作,但后来通过努力学习,找到了一份好工作。结合互联网上所谓的行业薪资统计,他们发现互联网行业的薪资偏高,于是下定决心做一名码农。(其实就是给自己增强信心。毕竟我这个专业或者会计专业,承担不了这么大的优势。
有了目标之后,很多问题就简单多了。我首先了解到这些互联网岗位在互联网上所需要的知识和能力,以及工作职能的范围,包括行业专业人士给出的建议和吐槽点。其次,结合我的爱好和知识储备,我觉得前端比较适合我。主要原因:
1.我大学学的是C语言,C语言和Javascript语法很接近,比较容易上手。
2.我在大学学的是网页设计,掌握了一些网页构建的知识,对前端产生了兴趣。
3.前端开发工资不低,互联网行业不可或缺,尤其是我在那一年,Node的势头非常巨大,一度给人取代JAVA的错觉。
4.前景是公平的,不可替代的。不管怎么变,前端是需要的,所以不能让时光倒流~
我决定留在学校学习前端开发的知识。刚开始学习的时候,我在网上找到了一个教程。在学习的过程中,我逐渐发现前端不仅仅是搭建网页那么简单,还涉及到网络请求、逻辑交互、跨端显示、屏幕适配等一系列知识。
页面的前端载体不仅仅是PC浏览器,还有微信小程序和H5混合开发。页面也需要一些得心应手又好用的框架和UI组件来丰富(慢慢发现感觉自己是在一个大坑里),但可以说是付出之后得到了一些东西,后来成功找到了满意的工作。
前端对小白真的很友好。即使没有相关的知识储备,只要学习了HTML和CSS相关的基础知识,一个月之内就可以搭建出漂亮的页面,制作出酷炫好玩的动画,可以快速将所学的知识转化为看得见的成果。这种积极的反馈自然会给你前进的动力,这比java更容易使用。
但是,如前所述,因为前端开发充当了用户和程序之间的桥梁,所以它不仅仅意味着构建一个漂亮的页面,还意味着对用户的操作进行反馈,发送与服务器进行信息交互的请求,以及将数据更新或渲染到界面上。这需要一些HTTP和JavaScript的知识。在解决了基础数据渲染和更新后,就脱离了初级图像切割的范畴。
但是随着页面的复杂度和功能越来越高,js对DOM的简单操作会使页面出现不同程度的回流和重绘,甚至导致页面被卡住,影响显示效果。因此,有必要使用开发框架来生成虚拟DOM,提高页面的渲染效率。因此,有必要掌握VUE、react和Angular三个前端框架之一。以框架为背景,以原生JS为背景,完全是两个世界。幸运的是,当我进入培训时,大多数公司已经使用了该框架。
在开发过程中,有很多按钮、下拉框、导航栏等。会重复出现的页面,不断复制粘贴似乎很愚蠢。所以要解决这种问题,就要把重复的功能区打包成组件,只要引入页面,就能达到一次写,处处引用的效果。所以要解决这个问题,就要自己打包组件或者参考第三方UI组件,所以要掌握ElementUI、VantUI、IView等常见的优秀UI组件库。
开发的时候,页面越来越多,引入的依赖越来越多,相互依赖的情况也比较复杂,所以需要引入打包工具来处理你的代码,输出为浏览器可以识别的js文件。如果开发手机页面,就要解决不同手机的屏幕适配和不同系统的浏览器差异。如果开发微信小程序,需要学习相关的小程序开发API。如果你想实现一组代码的多终端复用,你需要掌握uni-
或者像颤振这样的框架。当你了解了所有这些之后,你想扩展到后端,nodeJS正在等着你。
任何有争议的事情都有两面性。前端开发前期学习难度低。学习了HTML、CSS、JS,掌握了一个前端开发框架,就能很快胜任简单的开发工作。但前端开发注定要解决各种领导要求和凌乱的多终端显示问题。
说白了,简单搬砖工作所需的技术很容易掌握,但前端领域覆盖面广,过于多样化。很多高级职位不仅需要你掌握如何使用上述框架和工具,还需要你了解和理解这些工具的深层设计思想。
决更复杂的问题或者选择最优的实现方案,因此,入行了前端就意味着不能停下探索的脚步。
其实不管做什么工作,保持不断的学习和自我提升,提高自己的不可替代性才是最重要的。
程序员对学历没有硬性要求,题主计算机本科学历已经符合大多数公司的标准了,听取过多的建议会在一定程度上影响自己的判断,他人说的都具有一定的主观性,题主选择性还很多,与其听别人说不如自己做决定,早作决定意味着可以早点了解自己是不是做码农这块料,人生就是试错的过程,一无所有的人没什么可害怕的,干就完了。
如果你仅仅因为“很多人不推荐前端”而被劝退,那你大概率会陷入想做XX事情――>行内人劝退――>想干XXX――>行内人劝退的循环怪圈,浪费大把的时间在踌躇不前上。
在网上,如果有人说大方向如何如何,大家都鼓励,
但是如果细分到具体,尤其是自己的行业,大家又开始纷纷劝退,而且这批人都是同一批,非常有意思,这就是干一行恨一行?围城?
与其一直被他们干扰,你不妨把你能做的选择列出来一一比较,我相信大多人做前端或者说做开发是比较好的选择,尤其本科计科专业的你!
如果你还在大学的话,抓紧时间自学,以本科本专业应届生身份有希望进大厂,起码我身边进大厂都是这个方法!
> 小编是个多年开发经验的程序员,懂前端、Java、Python。年初整理了一份最新的WEB前端学习教程,无论你是计算机专业想往前端开发方向发展,还是零基础想要转行做程序员,都可以通过教程学习。现在这份教程作为粉丝福利,分享给大家,只要关注我私信“前端”即可获取。