最有效的最快学习方法,你可知道?

3731 人浏览 | 时间: 2015-06-25 21:16:05 | 作者: codexia

    以前我学习编程,由C语言学完后,然后学C++,然后学Windows,在公司上班,使用MFC开发,所以我们也自然而然的一直在学习Windows。所谓的平台问题,倒没有仔细想过。但是,后来接触的多了,认识的朋友也多了,很多初学的朋友在纠结这个问题,有些朋友从事Linux开发,也推荐我学Linux,然后,慢慢的我也纠结了到底学什么平台或者是跨平台哪个更划算。我们总是想把最少的时间花在最有价值的地方学习。但是就是因为太功利化,太浮躁,太着急,所以一心求快,所以也迷茫。对于这个问题不同的人有不同的看法。很多人又是以功利性标准来评判学习方向的,所以也导致很多人有个错误的认识。因为这些想法实在是让很多人迷茫和浮躁了,所以,我很有必要跟大家分析一下,可以让大家沉下心踏实的学习,才可以早日学成入门。
    实际上最快的学习方法,是有的。这个还真不是夸口瞎说的。但是这个方法,并不是每个人做得到的。即使很多人知道了,也不想实践,总是想投机取巧。
    如果你学习编程只是为了找一份高薪工作,那你得想清楚了。又想学的快,又想高薪,也就是说,你想很低的投入得到很高的回报,这个现实吗?编程水平高,才能拿到高薪。没基础又学得快,这是速成品,遇问题就崩溃了!基础差,经不住一点考验,能做什么呢?实际的开发中是解决各种各样的问题的,没有基础,能行吗??
    我说的快,不是说的学好的时间短,而是从长远的角度来看的。说的是学习的效率高,质量好,才是真的快!而学习最快的方法就是打好强大的基础,在坚固的基础之上学习,你可以快速学会一种新事物。这里强调的是内功,强调的是基础。没有所谓的天才,不要幻想自己一夜之间成为天才。真正学习厉害的,能够一个星期学好一门语言,甚至不用学就可以直接使用一门语言或者一个工具库的人,其实也没有什么了不起的,只不过就是人家的基础很扎实!基础扎实才是使他后期学习极其快速,理解能力学习能力超强的原因,他有了强大的基础,而基础的东西是很难变化的,而高级的东西,变化莫测,随时就会有一个新东西出来。如果基础扎实,就可以很轻松的了解到内部原理,就可以很快上手,且使用起来得心应手,并不是因为他比其他人聪明,也只是因为他基础真的很扎实。
    你不用为自己的技术很差而烦恼,也不必为此感到自卑。闻道有先后,术业有专攻罢了。只是你花的时间不够而已,又或是没有踏踏实实的去花时间去学习而已。你要肯花时间,踏实去学习,花间花在哪里,成果就在哪里。你看到别人的辉煌,却没有看到别人的辛酸。你看到他学习一个星期可以掌握一门高级语言,但是你没有看到他挑灯夜战,没有看到他把零碎时间和休假时间都花在学习上。
    在这个功利性价值观占主导的世界里,我希望程序员能够坚守一份纯净。但不是说不求高工资,而是追求的目标不是金钱,追求技术卓越,高薪也是自然而然的事情。我们追求的重心是技术!!这才是程序员应该最求的最基本的价值。技术高不高不要紧,要有一个追求技术高超的目标,只要有追求,有兴趣,就很好。
    以正确的态度学习,学习基础的东西,在基础都扎实后,高级的东西都不是事,那都是很容易的事情。扎实的基础,是学习快速高效的唯一途径,但是基础却是需要好的心态踏实学才是最快的,只有这样才能沉下心学习,学起来才快。
    而基础这一个东西,我稍微说说这个概念。基础并不代表只是C语言或者C++语言最基本的语法。基础是一种最基本的知识,不管是语言还是平台,还是应用,开始都要打好基础,并不是说语言基础好了,什么都行了。这是不对的。
    语言只是开发的最基本的基础。然而在开发中,会涉及到各个平台和各种框架。如果涉及Windows开发,那么Windows操作系统的基础知识必须学习,还要学好基础,如果学习Linux或者IOS,那么这两个系统的机制也是要学好基础,只有在这些基础之上,你才能学好操作系统上的开发,才能深入。而对于操作系统平台最根本的基础,就是操作系统原理。这是大家必须学的基础,否则,进程、线程、同步互斥等,如何学会呢?所以,操作系统原理是学习操作系统平台必须学业必须学好的基础。
    而MFC的使用基础就是C++语言和Windows编程基础,Windows编程基础就是对于各种操作系统功能在代码中的基础,就是各种实现机制、各种规则的了解,这是大家应该学习的。这些规则的实现,也是大家可以参考到实际开发中使用的。
    在界面库的使用中,基础则是各种图形编程,如果这些图形都不了解,如何深入得了呢?
    其他各个领域都是如此,所以扎实的基础才是学习最快,最高效的方法。当然,学习编程是需要不断的动手练习而不是在纸上写代码,是要做一些练习项目或者参与实际的项目开发,然后及时总结知识点,记录下来,以便以后再参考。很多时候,时间长了,即使你之前在脑子里总结过,也会淡忘。所以,养成写总结的习惯,不断总结提升,提高思维能力都是可以加速学习的,如果思维水平高了,很多东西都可以简化,从而也能深入。
    所谓把书读薄,就是在【理解+升华】基础上做到的。升华就是不断的提炼知识点,提炼出思想,抽象,最后应用于其他的知识点,就总结了一套适合自己的通用的学习方法。达到这个地步后,就可以一通百通,可以应用于任何东西的学习,而不限于编程的学习,还可以是经商等等,大道至简,简单到可以应用于万事万物,到这个境界,学习能不快吗?!
    我希望你看完这篇文章后,能够反思一下自己的学习方法,希望能从中得到启发。这是我的学习过程中领悟到的,包括知识点的提升以及个人的各方面的思想的提升,我学每一个东西,都是学着知识点,带着找模式,找共同点,然后通用化,找到学习方法后,有些东西就可以快速了解了。比如STL中的容器,很多函数都是通用的,学了一个的用法,其他的都类似,然后就类推。比如学习使用MFC控件类,先拖一个控件到窗口,然后添加控件变量,然后就看得到对应的控件类,然后将这个类在MSDN中一查,各个成员的用法,一目了然,甚至都不用上网查资料就可以学习的很好。然后,我就掌握了这个方法,任何控件都知道怎么使用了,即使没有用过,也知道怎么去用了,用的时候就查一下就行了。这一部分的就不用再学了,重复学也没意思。这样一下子省了大片的时间。
    在对于很难懂的,或者从未接触的东西,第一遍不要贪图弄明白,先过一遍,了解基本概念,尽可能多理解一点,虽然第一遍会感觉很陌生很恐惧,但是第二遍感觉就不一样了。这样多看几遍(当然是经典书籍),会快速提升水平。大师级的书籍很多不只是讲知识点,很多带有各种思想和学习方法以及分析方法,这些多看几遍,会让你受益终身。然后就是写总结,写总结时以给别人讲解的角度来写,让你的理解用自己的话表达出来,并且要不能误导别人,这样你总结也就很全面,又是正确的,这样在总结是经常总结出意想不到的好处,会经常发现一些其他的重要的经验或者理解,这些都是快速提升水平的法宝,这是常规说的快速学习不可能得到的收获。常规的学习最多收获了知识点,这样学习,你不只是收获知识点,还有学习方法、分析问题的思维、对问题的抽象能力以及提升自己的世界观和价值观!!这些一点都不假,只要你真的踏实做下去,你必然也会成为大师。你想想,为什么大师能够道出各种至理名言,那都是总结提炼得来的。
    基本的方法和我的学习方法基本都分享给大家了,希望大家好好珍惜,好好利用这些方法,祝你学业早有所成!!

请微信扫码阅读
为防止恶意爬虫,
已开启反爬机制