我与Vue.js 2.x 的七年之痒

------过去日子的回顾(这是个副标题)

------其实这是篇广告软文(这是个副副标题)


以下是一些牢骚和感悟,不感兴趣的可以滑倒最下面,嘻嘻。

每每回忆起从前,就感觉时间飞逝,真切的感受到了那种课本中描述的白驹过隙。和很多人发生的,经历的很多事情,就好像昨天一样,但是仔细的思索一番,早已时隔多年,恍然如昨。

我能走进这个行业,并在Web前端这个行业工作、学习至今,总结起来差不多也就四个字:大多数的运气、一点的的兴趣。还记得我15年毕业的时候,23、4岁的年纪,内心中充满了迷茫和慌张。回家之后无所事事,每天靠着老妈的50块零花过活,反正我也不用付房租,不用付饭钱,和朋友出去玩老妈还会多给50,所以这个额度还够用。那时候的日常就是,早晨老妈做好早饭叫我起床吃饭,吃完了我就继续睡,睡醒了就吃午饭,吃完了午饭就坐在桌子前打英雄联盟。嗯......就这样打了三个月,还是个白金都上不了的菜鸡,哈哈哈哈。

印象最深刻的,就是那时候每天打游戏打的屁股疼,嗯......现在还能想起来那种屁股疼的感觉。

然后有一次出去玩,和我朋友,也是我初中同学,到现在差不多有十几年了,是我不多的朋友中的一个。我们出去玩就两件事,要么网吧撸啊撸,要么去打台球,他打台球打的十分厉害,我就是个陪练,哈哈哈哈。

巧合的是,他也没有工作,然后我俩一起去P2P公司去发传单,拉客户,那个时候,差不多是15年底,正是P2P走向末路的最后一段光景。工资是一个月2000块钱,噢对,还要交100块的什么捐款,到手1900。说是发传单,其实每天早晨去打个卡,开个晨会,跳个小苹果,我还是领舞呢~~哈哈哈。然后就直奔公司对面的网吧。那段日子,也真是算得上无忧无虑了。

然后,有一次,我这个朋友说要去北京学习计算机,那时候我哪懂这些,学啥我都不知道,我就跟他说我也要去。其实我说这句话的时候我都没当回事,仅仅是凭着一点点兴趣表达了我也有意向而已。就好像人的一生中会有无数次类似的念起,但是真正能去执行的,可行的,到最后能有一二已是大幸。

后来,到了那年的年底,因为一直拉不到客户开不了单,公司也不要我们了。我又没了收入来源,不过也没啥压力。过了年,就去人力市场找工作,找到了一个卖药的,哦不对,卖保健品给老年人的,听起来就好像有点"骗子"的味道。不过,这都不重要啦。

就在我准备入职的前一天,破天荒的和我妈大吵了一架,也正是因为这一次吵架,让我确定了我要去北京学习的念头,本来第二天一早就应该去卖药公司上班的,结果第二天一早,我就打了电话说我不去了,然后我妈等我爸下夜班回来,和我爸商量我去北京这件事是否可行。

嗯,结果是我来了北京,我爸走之前跟我说,这是你唯一一次机会,要是最后去北京没结果,那就回老家消停找份工作,老实待着。哈哈哈哈哈哈~~~

更巧合地是,本来我那个朋友在我打电话的时候,按照原本的计划,他已经在去往北京的路上了。但是由于家里出了点变故,所以把机票推迟了一周,刚好,我巧之又巧的,赶上了这趟去往北京的飞机,也开启了我平行时空下的另一条生活轨迹。

四个月培训

来到北京之后,在昌平的育新那块,找了个合租的地方住下,一共三个人,挤在一间小屋子里,本来计划上就没有我,所以我买了个床垫睡在地上。

刚到学校的时候老师问我,你想学什么?啊?学啥?啥?我都不知道有什么可以学的。然后老师告诉我,可以学Android、IOS和Web,这三个你要学哪个?啊?啥?啥是Android,噢Android手机?我学啥?然后我就问老师这三个有什么区别?她说:"Android就是安卓手机系统开发软件,IOS就是苹果手机,Web呢就是两个都可以"。我一寻思,那我肯定选都可以的啊。

然后我就跟着朋友一起去了他们的班级,但是由于我们来得晚,他们班级已经开了两周的课了,哎哟。。。那时候听课真的是,就是这种感觉:

然后,又过了一周还是两周吧,我记得是16年的三月底的时候,有一个新班开课了,于是我就申请去新的班级了。

时光荏苒,开始了我四个月的学习路程,说实话,那时候啥也没学会,就学会了一点基本的HTML、CSS,和jQuery,对没有JavaScript,虽然学了,但是啥也不会。偏偏啥也不会,却又感觉自己啥都会,现在回想起来,切实的感受到了那种自己无知者无畏的憨傻感。

到了七月底,课程基本上都快结束了,然后老师让我们写简历,写假的项目,我从网上抄了几个项目,又随便到招聘网站上一投,真的就面过了一家公司。

对于那时候的我来说,有人要,能赚钱,就真的很不错了,其它的连考虑都不知道要考虑什么。以现在的认知来看,这就是起点的差距吧。

然后,我就在16年的8月1号,正式的走进了Web前端这个行业。哦对,我是我们班第一个找到工作的,现在想来,除了运气,我找不到任何合理的解释。

第一段工作

第一段工作是一家西安的传媒公司,在北京创建了一个开发他们想要的网站的子公司。那时候写的第一个项目是一个移动端手机的网站,专业一点的词好像叫做WAP。这个项目呢,我只写页面就好了,数据是后端用php来搞。这个项目写完差不多用了六个月,六个月之后,我们又要开发一个后台管理系统。

当时Vue大火,我记得那时候Vue最吸引我的就是中文文档和三大块写在一个文件里,上手容易,不像那时候的React和Angular,文档都是英文的,还不好写。于是呢,从网上找了一个VueAdmin的现成的项目,然后在上面改吖改,就成了一个业务项目。

哦对,我当时印象十分深刻的是,写了一个类似选择图片到购物车的类似一个需求,就是点击按钮一个弹窗,然后选择弹窗中的图片到父级页面,嗯......这样一个东西我写了三天。印象十分深刻~~~想想我当时有多菜,哈哈哈哈哈。

然后呢,这个公司有活干就按时给你发工资,没活干呢,就拖着你的工资。那时候也是初生牛犊不怕虎,感觉自己萌萌哒,就出去找工作了,然后也很快,就找到了第二家。当然,我得这种天真,也给我接下来的遭遇埋下了伏笔。

学习与Vue2

进了新的公司,开发新的项目,理所应当的就用上了Vue2,做了好几个项目,这个时候在我现在的回忆里,算是比较浅淡的一段日子,每天上班,下班,学习,工作,写博客,没什么值得诉说和期待的。

写到这里,我停下来,想要在我的记忆力搜索一些可以拿出来说说的场景,好像什么都没有,唯一不变的就是还是那种傻憨的样子,什么也不会,觉得自己天下第二,牛逼坏了。

又过了一年,我裸辞了。好吧,牛逼坏了的人不惧裸辞,于是我开始开开心心的去找工作了。一天面试四家公司,大厂也有,小厂也去,来者不拒。第一周开开心心,第二周沮丧的心情就像坐火箭一样,一下子弥漫开来。

好在,第二周找到了,于是开始了我难受的日子,那时候啥也不会,也没有什么职业规划,给钱就行。

就这样一晃,我用Vue2开发已经七年了,期间也经历了很多,但是更多的是技术的提升和认知的改变。

我与Vue2的七年之痒

我从工作到现在,用了Vue2差不多七年了,但是我觉得我还是什么都不会。是真的,不是谦虚。

我刚开始工作的前两年,那时候我觉得自己好像很厉害,干活干的也不错,其实啥也不是,连最基本异步我都不知道。就这样一路工作,一路学习,刚开始认识到自己水平不行的时候,差不多已经工作三年有余了吧。虽然认识到了自己的不足,但是我完全不知道如何去弥补这种缺失,于是我只能盲目的学习。

开始,我觉得是我基本的水平和能力不行,总觉得自己写的代码就是一坨大便,虽然到现在好像也没什么改变。

但是基于想要赚更多钱的心里,我先后学了基本的CSS、CSS3、JavaScript的各种书籍,但是好像学了也记不住,记住了也不一定有使用的场景。于是我又去学浏览器原理,HTTP,计算机基本知识,我学完了之后感觉,似乎一如从前,毫无变化。

再然后,我以为是我对框架用的不够熟练,对Vue2的原理毫不知情,于是我又去学Vue2的实现,看源码,写源码,但是我发现,虽然我知道了Vue2的响应式是咋回事,它的编译,模板渲染,模板解析,什么什么的,但是我写代码的时候还是那个叼样子,与我付出的学习的时间和带来的收益完全不成正比。

然后,我深深的迷茫了,最后,我只能求助于设计模式和算法。

但是算法这个东西,其实就是数学题,大多数场景,哪怕你要用到,百度一下,其实你就可以用的还不错。而设计模式,大多是依托于Java与面向对象来讲解,那时候我毫无选择,于是尝试是否可以在Vue2的框架下应用面向对象的设计思路去让代码更易读、减少代码的耦合和增加其可扩展性。好吧,其实就是很多编程思想所描述的那些。嗯......结果就是,还是写成了一坨大便。

机缘巧合的,在一次和面试官的沟通中,了解到现代的Vue3、React16什么的,包括整个前端的未来可能性,都在向函数式靠近。于是,又去花了不少的时间学了函数式。

确实,函数式解决了很多我工作中的问题和解决问题的思路,但是,还是改变不了我写成大便一样的代码的结果。

再往后,我发现很多思路、模式、设计、实现,都需要时间去打磨,你不可能一次性写出一个完美的结果。就算是世界顶尖的计算机科学家,哦好吧,他们或许可能做到,但是我这个半路出身毛都不懂得伪技术人员,是根本无法做到的。

先知自己无知,再去考虑要去如何做。

所以,我就需要一个项目,可以一点一点的打磨我的思路,和应用那些有意义的模式,渐进的去提升自己的能力。我希望可以有一个试炼场一样的项目。这也是我在接下来的生活中要去做的事情

《手写Vue.js2.0源码》

接下来是广告时间~~~还记得我前面写到,学了一段时间的Vue2源码。在我学习的过程中,恰巧北航出版社的杨编辑在博客园上找到我,希望我可以出一本技术类的书籍,于是我稍微犹豫了一下就接下了这份工作。

算是我给用了这么久的Vue2的一个答卷。这本书写的还行,因为代码不是我的,哈哈哈哈,是我在珠峰架构学习Vue2源码的时候的代码。当然,我经过授权了噢。这一点源码我写了差不多有四五遍,把其中我自己再加上老师整合起来的感悟,思路,理解,都写在了里面。但是确实本人能力有限,书中存在谬误也在所难免。欢迎大家来找茬噢~~~

欸?Vue3都这么久了你还写Vue2?搞siao~~~~~~~

确实,Vue3已经很成熟了,但是说实话,其中很多的思路和模式都是类似的,无非实现有些区别,如果你现在公司的项目还在用Vue2,那么其实我是十分推荐你买来读一读的,因为我在写这本书之前也看了下市场上关于Vue2相关的一些书,我个人不成熟的感觉是,没啥有用的。

所以,这本书的诞生源自于我的学习,源自于一点机遇,还有我希望你们可以少走一些弯路。

最后,七年之痒,这是我给我过去的工作的、生活的、经历的一份答卷。

哦对,大家去京东啥的网站搜这个书名就能搜到了,封面挺好看的,一眼就能看出来区别。哈哈哈哈哈~

最后,谢谢大家,也谢谢那些给我点了关注的粉丝,那种被认可的感觉,很好。