自学程序员怎么入门(学好程序员的5个基本要求)

前言

这里筑梦师,是一名正在努力学习的iOS开发工程师,目前致力于全栈方向的学习,希望可以和大家一起交流技术,共同进步.

本文阅读建议

1.一定要辩证的看待本文.

2.本文主要阐述了自己在进行编程语言学习中的各种学习方法
自学程序员怎么入门(学好程序员的5个基本要求)

3.本文只阐述个人观点

3.觉得哪里不妥请在评论留下建议~

4.觉得还行的话就点个小心心鼓励下我吧~

目录

1.三大要素:环境、目标、动力

2.学习力

3.适度学习法

4.快速学习法

5.输出倒逼输入学习法

6.弹性时间学习法

7.随机目标学习法

8.沉浸式学习法

9.压力学习法

10.快捷键&笔记学习法

11.快速切入学习法

环境

一个程序员在萌芽之中,唯一的天敌并不是自己,而是一种叫程序员劝退师的人,他们可能有一点解决自己温饱的技术,有一份较为稳定的工作,但他们态度极其恶劣,从来不引导新人如何进行学习,而是驱赶。他们学习既不努力,工作中也不负责,因为自己的工作就已自满自足。

各位新人,请允许我告知各位,真正的程序员交流圈,根本不存在程序员劝退师,高质量的圈子几乎每天都是讨论前沿问题,最近的面试题,以及分享资源,互帮互助,可能这也是对新人的一种历练,但我觉得这并不妥,劝退师为什么要展现一种丢人现眼的样子给别人,到现在我仍不懂他们存在的意义。

现状

那么,程序员现状是什么呢。因为培训机构的存在,每年,每个编程语言的各行各业都不会缺少技术新人的存在。但各行各业的人才依旧紧缺,这是为什么呢。

因为大多数技术新人仅仅停留在解决温饱的程度,而不深入研究技术,对此我不评价他们,我只想对新人们说:只要你们稍微一努力,你就比他们强。

现状总结为一句话:初级开发工程师有很多,工作有时并不好找。高级工程师,多栈工程师依旧紧缺。

再来一句浅显易懂的话:初级工程师使用工具,中级工程师修改工具,高级工程师创造工具。

程序员这个行业,你选择了,就要不停地努力,否则就会被淘汰。

目标

很简单的,确定一下你的学习目标和生活目标

学习目标:

学习是一份苦差事,这句话真的不是说说而已,真的是你认真学习过,才会懂得,学习是多么的辛苦,这点我深有体会,但是我还是想说,没办法,想要更好的生活,你就要不断地努力学习。

所幸的是,程序员这个行业,学习和回报率是要高于其他行业的,不断提升自己的技术水平和认知,是绝对没有坏处的。

生活目标:

是否想靠自己的努力,一步步提高自己的生活水平,是否能够随时为自己的喜欢买单,我没什么大理想,我就是努力实现:看到好吃的,我可以买来吃,看到我喜欢的,我就买来玩。但是钱是挣不够的,知足常乐。

定一个自己能力范围内的目标,实现它。

不要安于现状,你不努力,谁也给不了你想要的生活。

动力

动力,只说我自己的感觉吧。

当我找到了学习方法和学习路线以后,我每天的日程都是排满的,我每天有12个小时都在学习。我是全天学习的那种,暂时不考虑工作。

你知道我是什么感觉吗?我每天12个小时都在学习,还是每天都能感觉到要学的东西有好多,太多太多,每次看完一本书,都会再根据自己的路线安排新书,都是能在工作中用的到的书。

我深刻体会到时间是不够用的,我甚至不想吃饭,都用来读书,有些词和大道理真的不是单纯的字面意思存在,等你到了那个时刻,你便会深有体会。

每次想打游戏的时候,我都会忍下去,是真的忍..而不是说好,我就玩一个小时,再来学习我觉得我是回不来了。所以,我根本不去打游戏,我甚至我的时间是不够用的。

总有人跟我那学习路线陡峭说事,这就是你要变强和成为大神必经的一环,如果学习路线不陡峭,人人都能成为高工,又如何体现你这么久以来的刻苦学习和成果是多么的来之不易。

未来的你会感谢现在努力学习的你。

学习力

学习力不同于学习能力,而是将知识资源转换为知识储备的能力,你看了多少书、文章,这是你的知识总量(阅读量),但不是你拥有的.你能够讲出来的知识,就是你所拥有的.

适度学习法

学习一定要找到难度适中,需要一定时间学习才能理解的知识.而且以后能用的上. 从遇到的问题出发,从能实践的领域出发去找适合的认知材料。 不要一上来就阅读数据结构、算法导论这种圣经类的书籍,而是一步一步来.

快速学习法

当我遇到一个自己不会的知识点时,我会进行百度,进行泛读,充分结合各个大神的文章,进行理解,重点是自己个人的理解.做笔记.辩证的看待每个人的文章,然后提炼到自己的笔记里.

遇到难点时,我会询问列表里的大神,是否在工作中也是这个做法.得到答案. 整理以后,可以用自己的话描述出这些知识点. 在讲的过程中,就会发现自己的话有瑕疵,就会去寻找正确的说法,不断修正自己.

输出倒逼输入

如何提高巩固自己的实力,也是本人最喜欢的一个学习方法,在整理自己的笔记之后,尝试把自己的笔记转成文章输出出来,放在博客,简书或者CSDN等技术论坛上. 在输出的同时,在追求完美的同时,就会发现自己的不足,搜罗各种知识点,结合自己的理解.

最后变成自己的输出文章.这就是输出倒逼输入.完美的文章逼着自己学习更多的知识.

弹性时间学习法

我是一步步自学探路过来的,我很清楚你们所谓的自学的情况是什么,几点到几点看什么书,几点到几点看什么视频,从来没有按时完成,然后一拖就石沉大海了。

不要给自己的目标限制死时间,因为一件事可能会被耽误,那么接下来的目标都会耽误,而是要以完成目标、达到目的为中心进行学习。例如我这两天要看完一本书,那么这本书可能会有些难懂,我可能需要再多一天,那么我便三天去看完这本书,我的目的是看完这本书,而不是在有限的时间内,我的重心是学习这本书的知识。

在完成了某两天的目标以后,再完成下一个目标,因为你无法预估你是会提前完成你的目标,还是延后。

这就是弹性时间学习法,以完成目标为重心的学习方法

随机目标学习法

随机目标就是,不要只把学习的重点只放在一个范围内,而是要做好随时跳出去的准备,只有懂得多了,才能更容易理解后面的知识。简单来说,每本书都不可能面面俱到,他不可能把一个业务逻辑所涉及的方方面面都给你讲一遍,有时候需要你自己去延伸,如果你不延伸,你又无法读懂后面的知识。

例如学习HTML和CSS的过程中,可能会涉及到Cookie和Session,那么这两个东西又属于HTTP协议,如果这个时候,你不去延伸一下什么是HTTP协议的话,后面的内容就无法融会贯通。

学习编程语言不是为了看书的数量,刷视频刷代码的次数,而是在于连贯性,越能融会贯通你学习编程语言的速度就越快。

沉浸式学习法

沉浸式学习法,毫无疑问,就是没有任何干扰。这里指的不是外界干扰,就拿我来说,我可以在KFC非常吵闹的地方看书敲代码。却有时无法在家中静下心来想事情。

所谓的沉浸,便是把自己沉浸在学习中,远离游戏,远离来自自身的一切干扰,例如聊天软件非必要不开,例如游戏该戒就戒,现在的努力和刻苦是为了以后更好地生活和打游戏,别因为现在的一时痛快,浪费了整个人生。

压力学习法

说一个在高质量群听到的把,我97年在群里算年龄小吧,但是当我得知比我小6个月,已经在16年拿到了16K 15薪的时候,那个压力,虽然我不喜欢攀比,但当你知道,很多人都比你强的时候,你自己就会很冷静,时刻明白自己还要努力很多.就不会把时间放在娱乐上.

就是压力,让我现在可以把一整天的精力都放在学习上,而不是打游戏,看电影,环境很重要.

快捷键&笔记学习法

自学笔记,该笔记针对并记录在书中的问题,以及书中重点.

视频笔记 学习日志,该笔记针对每天的学习中遇到的问题,以及在各个视频当中汲取的知识点的笔记.

输出笔记,例如:全栈工程师开发入门笔记,该笔记按照文章输出规范整理,每一个知识点,都可以成为一篇文章输出,不整理好不写入笔记,这就是我的财富.一定要漂漂亮亮的.

快速切入学习法

上面的学习方法,都是适合有大把时间自学的人,那么针对于上班人群,想要提升自己的,目前我只能提供一个方法给你。

我不推荐你看视频,因为既浪费时间又没有效率。

首先要养成一个模式,随时可以将自己全身心投入学习的模式,例如在坐地铁的时候,切入到学习模式,拿出手机,刷一些干货文章。

我推荐你看书,因为我知道,每天上完班是疲惫的,谁不想舒舒服服吃顿饭,躺下休息。按照自己的学习路线,买一些提升的书籍去读,一星期看一本400页的书是工作中的人基本水平吧。

重点不是如何学,而是如何切换到学习模式,而不是休息和娱乐模式。

断点续传读书法

这个方法我自己总结的,不一定适合所有人。

看书是有方法的,不同的看书方法效率是不同的。如果你是咬文嚼字的读书,那我推荐你换一个方法.

书籍大致分为四类:计算机基础类、入门类(不同语言的入门类书籍)、应用提升类(不同语言或框架)、提升类书籍(例如剑指offer)

没有任何一个人可以做到看一遍书就记住所有知识点,因为其过程及其漫长,你要知道一本500页的书籍咬文嚼字,每行都仔细的研究,那是需要近一个月甚至更多,尤其有些人还需要上班。

列一个公式:

咬文嚼字模式:

第一遍(一个月)记住本书的50%(甚至更少)

第二遍:可能因为书对初读者不友好等原因,可能没有第二遍。

我的看书模式:

第一遍(一星期)记住本书的大纲(20%)

通过第一遍阅读书籍的前言和目录快速分析本书的针对方向,可同时翻看同类书籍的其他书籍对比针对性。

例如:PHP MySQL 开发实战 注重实战和PHP,而PHP&MySQL web开发一书注重的却是MySQL部分和项目优化.

书籍并不都是好的,根据第一遍阅读情况,来决定要不要阅读第二遍,或者阅读更好的书籍,放弃此书

第二遍(两星期)记住本书较为重要的部分(40%甚至更多)

第三遍(一星期)本书当中在实际应用中我需要用到的部分(60%)

根据工作需要,重点学习并应用.

最后,因为我对本书至少看了两遍,那么他的知识分布我是知道的。

所以在工作中我需要用到的时候,我就会去直接查阅我需要的部分。这便是我比大多数人可能一年都读不了几本书快的原因。

我个人偏向于快速读书,多读几遍的模式,而不会因为某个艰难的知识点卡壳,我会在学习相关知识以后,再扭头回来解决这个问题

结束语

如果您对这篇文章有什么意见或者建议,请评论与我讨论.

如果您觉得还不错的话~可以点个喜欢鼓励我哦.

如果您想和我一起学习,请毫不吝啬的私信我吧~

链接:https://www.jianshu.com/p/3f4b1c052910

相关推荐:

初级程序员和高级程序员,以及为什么他们都很重要

软件开发团队最常见的错误

程序员如何优雅使用mac

发表评论

登录后才能评论