别灰心,我当年也是技术渣渣

2020-03-26 17:16:29 浏览数 (1)

文/土哥

阅读本文需要 2.4分钟

新关注我的粉丝可能不知道,闰土哥这个称呼,都是从博客园写博客文章那会儿叫起来的。

这些年,码字阵地早已从博客园、CSDN转战到了微信公众号平台,身上多了两个辨识度很高的个人标签,一个是「自学一年」,一个是「前端leader」。

在公众号坚持输出原创内容的这两年,收到了很多粉丝朋友的私信,其中有一部分朋友,对自己的技术相当没自信,平时出去都不敢跟别人说自己干前端了3年...

今天,我就搬出自己的黑历史,给你们找点自信心,如果连我这样的前端渣渣都能通过自己的努力,在若干年后当上前端leader,你们也可以的!

搬好小板凳,和你们聊聊当年的我技术能差劲到什么程度,顺便回顾下自己曾经失败的面试经历。

为了给你们找会信心,我也是豁出去了。如此良心博主,记得动动你们的手指,给土哥一个在看,就是对我最大的鼓励,谢谢!

话不多说,进入正题。

一、

说起我人生第一次失败的面试经历,是在我13年刚刚毕业的时候。那时我正在海投简历,认真找工作。当初应聘的是一家规模不算大的小公司,进去之后,面试官看都没看我一眼,给我丢下一句话就忙他的去了。

他原话的意思是说,让我用jQuery写个轮播图效果,给我提供的条件是,一台没有联网的笔记本电脑,和本地下载好的jQuery的API文档。

当时刚从培训班学出来的我,html和css基础还算扎实,但对jquery的api熟练程度还是有所欠缺的。因为之前在培训班学习切静态页面的时候,碰到轮播图效果一般都会用网上别人写好的插件。但我还是硬着头皮去尝试着写了写。

过了几分钟后,我静态页面的布局写出来了,但是jquery的轮播效果还是没整出来。当时的我,知道通过的胜算几乎为零,但还是尽力争取了一下,跟面试官说,我U盘里有我自己的作品,你要不要看一下。

面试官此时还是目不转睛的盯着他的笔记本屏幕,边看边说,你自己带来的作品,是不是自己写的也不一定,面试题最能说明问题等,听他巴拉巴拉说了一堆。

结果可想而知,我被面试官刷下来了。

你看我当年,是不是比你们还渣......呸!是技术渣,连jq轮播图效果都写不出来,更别说原生js轮播了。跟我论渣,我简直渣到家了,你们以后可以叫我渣渣灰。

二、

还有一次,印象特别深刻,当时给我发面试邀请的公司是思特奇,这也算是在电信行业名声在外的互联网大厂了。

当时在省城就有传言,入思特奇者,月薪6k 。

思特奇在太原高新区的办公地点可以说是很高大上,整整一层都是技术开发人员,一排排A面亮着银色苹果logo的MacBook Pro甚是晃眼,给人一种浓厚的程序猿文化。

说实话,我想农村娃刚进城一样,被震撼到了。

这次的机试题,还是那个绕不过去的JS轮播图的实现,不过这次却是让我用面向对象的思想去实现,据说这是技术总监临时的想法,这也是我后来才知晓的。当然了,我这次面试的薪水又拔高了一个台阶。

基于面向对象的轮播图,看似比面向过程要繁琐了很多,而且对于一个轮播图来说,也没必要。但面试官想要考察的是应聘者对于面向对象编程的熟练程度,看看你的前端编程能力是否达到了他们公司业务开发的水平。

很显然,这次的机试题打了我个措手不及。

下面搬运一下我当年的学习笔记,仅供“娱乐”。

正如后来我拜读的JS红皮书里第六章写的,面向对象的程序设计,首先要创建一个Object实例,定义一个Slider构造器。

然后在Slider的prototype原型上定义各种方法,这样做的好处是可以很方便的实现轮播图的效果,减少代码的冗余,同时避免了变量命名的冲突问题。

现在需要我们先来捋一下思路,分析一下构造器里需要的属性:

1. 初始化所有的样式操作

2. 显示在对应的容器操作

3. 鼠标进入事件

4. 自动播放事件

在这些基本的事件中,我们需要注意调用的顺序,如创建在初始化之前,我们可以把一些通过的属性放到原型链中来编写,这样的好处是减少了变量空间的占用和多次访问属性的结果。

过程中遇到的问题:

1. 其中的this指代问题:这里的解决办法是在鼠标进入之前的函数中缓存一下var that = this。这样就可以访问属性了。

2. 图片轮播判断:向左点击的时候, 如果当前的索引值大于零,让它执行自减操作,如果不大于0 就让他等于对应图片长度-1;向右点击的时候,当前的索引值小于它对应的轮播图片的长度-1,执行自加1操作,超过图片轮播长度时,索引值等于0。

这次基于对象的代码就不给大家贴出来了,留给你们做个实践。

当然,这次思特奇面试之旅,最后也是以失败告终,这也是我离进「大厂」最近的一次。

三、

所以,你心目中的前端大神,当年也是从技术渣渣一路被社会毒打过、一步一个坑匍匐走过来的。如果你现在工作、学习中遇到瓶颈,别灰心,别丧气,你看我当年一个渣渣菜鸟,也能当上前端leader,你们更要有自信。

说归说,闹归闹,你看我现在也能将当时的黑历史、笑着讲给你们听,或许几年后你们也可以,怕就怕「枕畔思量千条路,明朝依旧卖豆腐」。

诚然,每个人起跑线不同,有的人英语好,可以看英文文档,遇到问题 百度谷歌或者其他英文论坛求助, 他获取信息的途径就更多更快更准。

有的人有其他语言基础,他学起js,学习框架,学习编程技术的速度更快, 因为很多东西他经历过。

但,你们要记住,前端本身是个大坑, 有的人专门研究各种页面效果, 有的人研究跨设备兼容性,有的人研究架构,任何人也没法同时精通所有方面。

认识到个人差异,也要有实际行动,迷茫一阵子是可以的,但不能一直迷茫下去。每个人的改变之门,钥匙都在自己手中,你等的那个契机,只能由自己开启,否则就是无限期的沉寂、沉底。

千万别学我,最近在家办公,人都有点懒散,我上班摸鱼,别人上班背单词。

一个单词连续错误5次就执行rm -rf /

0 人点赞