17

工作半年就迷茫,给你一盏明灯

 4 years ago
source link: http://www.itwanger.com/life/2019/11/11/life-mimang.html
Go to the source link to view the article. You can view the picture content, updated content and better typesetting reading experience. If the link is broken, please click the button below to view the snapshot at that time.
neoserver,ios ssh client

大神,前端工作半年了,学的很迷茫,总感觉不知道怎么去自学,看书吸收能力差,可以给迷茫的人一点您的宝贵意见吗?

前几天,小伙伴星星微信我说了上面这段话。

首先呢,纠正两点,我不是大神,我真的不是,顶多是个大佬(皮一下);我对星星你没有任何意见哦,要有的话,也只是一点点建议,仅供参考哈。

其次呢,说实话,工作半年,迷茫的有点早啊。就我所知,刚入职的年轻人都喜欢热火朝天地干,就像刚刚交往的恋人一样,投入的很呢。难道说对工作不爱了?

01、先开一剂药

针对前端来说,掘金是一个绝佳的学习网站,里面的大牛每天都会推各种学习的路线。我特意花了一上午的时间找了几个。

1) 前端开发中79条不可忽视的知识点汇总 ,这篇文章截止到目前共获得了 1494 个赞。

2) 解密初、中、高级程序员的进化之路(前端) ,这篇文章截止到目前共获得了 1406 个赞。

3) 一个合格(优秀)的前端都应该阅读这些文章 ,这篇文章截止到目前共获得了 4854 个赞。

4) 前端 100 问:能搞懂 80% 的请把简历给我 ,这篇文章截止到目前共获得了 6006 个赞。

5) 8年前端开发的知识点沉淀 ,这篇文章截止到目前共获得了 1801 个赞。

6) 一名【合格】前端工程师的自检清单 ,这篇文章截止到目前共获得了 4144 个赞。

还有很多,我就不再一一列举了。这 6 篇文章包罗万象,里面的前端知识点足够你学习一段时间了,再贪多就嚼不烂了。

02、再来点偏方

在我看来,自学最有效的方法就是照葫芦画瓢,别看不起啊。

在我初入职场的时候,本事真没多少,唯一能拿得出手的就是抄。领导安排的任务,不会做,怎么办?面向搜索引擎编程啊,找到解决方案就开始搬砖。

任务完成的空闲时间里,怎么有效地提升自己呢?就去各种编程网站上抄人家提供的例子。早年我就是照着编程入门网的 demo 一个个的敲,敲出一个聊天室(前端 Flex,后端 Java,Socket 通信)都觉得无比的兴奋。可惜时过境迁,这个网站已经不存在了。

别耻笑我这种没有创意的做法,人丫的天生不都是模仿着长大吗?从小学说话,照着大人的嘴跟读就行了,发音不准确没关系,随着时间的推移,慢慢就好了。

学习也是这个道理,尤其是针对职场的新人来说,别怕丢人,就一心一意的模仿,照着 demo 抄。

和我当时一块参加工作的新人有好几个,其中一个叫惠惠的关系还不错。但是他很看不惯我这种没技术含量的做法,经常调侃我说,“你丫这样照着抄有意思吗?”

为了他能挂住点面子,我嘴上没回他。心里就默默地骂他了:“别特么眼高手低了,行不,就你那点‘一瓶子不满半瓶子晃荡’的水准,哪有资格来调侃我?”

总之,不为他的调侃烦恼,依然我行我素。你以为照抄很容易吗?说句良心话,就算是照抄,也经常抄不出人家文章中的效果,不信我举个例子给你看。

前端代码已经好久没写了,就举个后端代码的例子吧。我之前在学习 Java 的 fail-fast 机制的时候,看到 Hollis 大神的一篇文章,里面有这样一段代码:

List<String> userNames = new ArrayList<String>() ;

for (String userName : userNames) {
    if (userName.equals("Hollis")) {
        userNames.remove(userName);
    }
}

System.out.println(userNames);

然后我就抄到我本地,稍微做了点改动:

List<String> list = new ArrayList<>();
list.add("沉默王二");
list.add("一个文章真特么有趣的程序员");

for (String str : list) {
	if ("沉默王二".equals(str)) {
		list.remove(str);
	}
}

System.out.println(list);

两段代码差别不大吧!但是运行的结果却完全不同,第一段代码会抛出异常。

Exception in thread "main" java.util.ConcurrentModificationException
	at java.util.ArrayList$Itr.checkForComodification(ArrayList.java:901)
	at java.util.ArrayList$Itr.next(ArrayList.java:851)
	at com.cmower.java_demo.str.Cmower7.main(Cmower7.java:16)

第二个代码就不会。当时我就纳闷了,难道 Hollis 大神的文章写错了?我还准备在他文章底部留言提醒他一下呢,结果我翻看了源码以后明白了。

你看,照抄这么简单的代码都能出问题,还逼着我去研究了一番 ArrayList 的源码,还真的学到了很多之前不曾了解过的知识点。知道怎么自学了吧!

03、再来点秘方

良心话,市面上很多技术书都特别枯燥无味,看这些书的时间,还真的不如玩一把俄罗斯方块(wang zhe nong yao)。书名叫啥我就不方便透露了,给作者或者译者留点面子。

那难道就无书可读了,那难道就放弃读书了,不是宋朝有句流行诗叫做:“书中自有黄金屋,书中自有颜如玉”嘛?

书当然要读,但读书要讲究点方法,不然真的很难吸收啊。

1)看视频

汲取知识的方法有很多种,看书只是其中的一种。记得我刚开始学习编程的时候,看书就看不进去,看一会就跑神。

当时学校图书馆有各种《21 天学会 XXX》的书,看起来真心痛苦,感觉就像在啃一块发霉的石头。那时候也没有前辈列一些优质的书单,或者说列了我不知道。

但是呢,那时候马士兵老师和李兴华老师的课程很流行,大家伙都看这个,我也跟着看。我尤其钟爱李兴华老师,讲课讲得风生水起,比听易中天品三国都带劲。李兴华老师还有一个特色,就是打字竟然用的是智能 ABC,但是,打字那叫一个迅速、流畅,作为观众的我由衷的佩服。

为了向偶像致敬,我甚至卸载了最爱的谷歌拼音输入法,也改成智能 ABC,硬生生撑了两个月,最后……没撑下去,换回了谷歌拼音输入法。

看视频学习有什么好处呢,就是注意力可以高度集中,用一个专业的成语形容一下——聚精会神。

那去哪里找这些优质的、紧跟时代的高清教学视频呢?

好朋友“江南一点雨”给了我一份,价值连城啊,这一套视频包罗万象(大前端的有“HTML5 新特性”、“AngularJS 视频教程”、“NodeJS 视频教程”、“React 视频教程”、“Vue 项目实战视频”、“JavaScript140 集”),已经分门别类好,大家可以根据索引按需下载(关注公众号后,回复“免费视频”即可查看索引)。

2)正确的读书方法

去年的时候,我读了这样一套书,系列名叫做《大师带你学语文》,里面提到的几种读书方法,我觉得非常有用,再次推荐给大家。

①、泛读

泛读可不是指泛泛而读,而是要博众家之长,开拓思路,广泛涉猎各方面的书。比如说,一名前端程序员最好也要读一读《软技能》、《代码大全》、《代码整洁之道》这类书。

②、精读

有些知识是要反复琢磨、反复研究的,务求明白透彻,了解于心,以便吸取精华。比如一些算法、设计模式方面的书。我读过的《趣学算法》、《设计模式之禅》。

③、跳读

这是一种跳跃式的读书方法。可以把书中无关紧要的内容放在一边,抓住书的筋骨脉络阅读。有时候遇到反复思考不得其解的内容时,可以跳过去,等后面的读完了再回头读,说不定就前后贯通了。如果整本书都跳过了,说明这本书就要先束之高阁了。

④、写读

俗话说得好,“好记性不如烂笔头”。读书的时候能把重要的知识摘选出来,然后写心得,这样不仅能积累大量的材料,而且能有效地提高写作水平,更重要的是能够提高读书的吸收能力。

老读者可能比较清楚,我很多文章的写作灵感都来源于读书。我在读书的时候,其实就是在寻找一个写作题材,或者说找到命题作文的题目,然后准备素材,最后文章写完后,发现自己把所有的知识点都掌握了。

04、最后的银弹

我敢赌一块钱,所有的人都会经历迷茫期。处在迷茫期的人最需要什么呢?

绝不是劈头盖脸的批评和嘲讽,比如说,你咋这么不上进呢?你竟然还有时间迷茫,真了不起。

迷茫的人需要一盏明灯,或者说需要一位亦师亦友的朋友。我非常期待能够成为你的朋友。

以上就是我给星星的一点点建议,仅供参考哈。

谢谢大家的阅读,原创不易,喜欢就随手点个赞,这将是我最强的写作动力。如果你觉得文章对你有所帮助,也蛮有趣的,就关注一下我的微信公众号「 沉默王二 」,拜谢。


About Joyk


Aggregate valuable and interesting links.
Joyk means Joy of geeK