如何能高效自学编程?
前言
扣除部分3分钟热度的人以外,真心想学习的人,在高效问题上,最重大的阻碍,即是挫折感。下文,我针对的就是速度这个关键点进行分析,我并不认同高速是一个最好的学习方法,不过既然问题是关于速度的,所以下文的方法,着重的就是速度。
在计算机学习的曲线上,初期非常陡峭,尤其是非科班出身,没有任何基础,或者基础相当薄弱。这是由于计算机语言的学习本身特性所导致。并且,计算机语言的特性充分体现了工科的特色,除了天才以外,最为稳妥的方法即是大量练习,而这和大多数人追求的“高效”相悖。
我提供想要高效学习的人一个思路。放弃上学的时候掌握的 理论-习题 的学习方法,采取 习题-理论- 习题的方式进行学习。 在初期试图学习计算机理论,或者语言理论,是非常枯燥的,这虽然是好的开始,但是不符合你们浮躁的心态。我不赞成浮躁的心态,但是我认可你们拥有浮躁的心态并试图学习成功。
着重的就是速度
首先你从习题,也就是代码直接入手,我们以JAVA为例子。对于JAVA入门的初学者,向来是建议他们从bitnami开始,不要再去听信那些人的jdk安装,Eclipse等等的infra调试。这些对你来说,是高效的大敌。我定义的高效,是在任何阶段花费最少的时间,学到最多的东西。jdk在你上手初期,调试也好,安装也好,常常遇到困难。而当你有几个月的努力以后,这些东西在数小时内就能完成。你去bitnami上下载一个完整的JAVA环境包,去Eclipse下载一个for jave ee developer,包括下载时间,可以在2个小时内帮助你进入JAVA编码阶段。很多的初学者教程,都不及这个快。
第三个小时的目的,是Hello World。你现在能打开Eclipse,你应该去百度下“eclipse如何新建工程”,这个步骤会花费半小时,你能得到的是一个空工程,一个默认包,一个空实体类。如果找到的教程好一些,或者你细心一些,你还会获得一个main方法。然后去搜索“java hello world”,你会找到很多在Notepad++里写,然后放到命令行下执行的教程。但是你足够聪明的话,你会发现,其实核心就是在main方法里面写一句system out。好,你学会了,放进去,在菜单里找到运行。
第三个小时,当你在命令窗口看到Hello World的时候,你已经准备好开始学习了。
这前三个小时,就是高效学习的关键开始:无挫折感,快速进入状态。
建立自己的第一个 "Hello World"
接着你要暂时放下IDE(集成开发环境),来学习一下理论,看下JAVA入门的书。跳过任何其他内容,只看一种内容:编程语句的语法。其他的暂时以后再看。为了快速入门,你只看语句,我建议你看语句的时候,用一张纸,看到一条写一条下来,你最后会发现,基础语句只有很少的一页而已。记住,只看核心包的语句,不看任何其他实现。
这可能需要8到12个小时,如果你完全顺着我所说的做的话。
读编程的入门书籍
再接下来,你可能要花费20到50个小时,阅读几段代码。这些代码最好来自于你看的入门书,不要是那些实际解决问题的代码。因为实际代码当中有太多为了实际情况妥协的场景,现在的你并不能理解。你应该在一个真空实验室里看完全无摩擦的小球下滑,而不是计算我的儿子在社区滑滑梯向下滑的模型。
你拿着刚才记录语句的纸,开始阅读代码。看不懂的,就看看你的纸,以加深印像。在如此50个小时,也就是全职搞一个星期之后,你大约能手写出基础的代码。所谓基础,基本上是个排序,或者是个随机抽奖之类的,这时候你仍然在IDE里活动,并没有服务器相关的东西,你不知道你的代码和实际的代码之间有多大的差距,别怕,你已经在进步了。
阅读简单的代码(与你看的入门书籍相关)
大约20个小时,你从代码回来,你来看看语言的哲学,包括语言的历史,他的分类,他的主要分支。(比如JAVA所分的三个大分支,现在的应用)。这些的大部分,你可以从互联网上获得,更好的方法,是来头条提个问题,或者找个牛人给你讲半小时。
过了这20小时,你可能基本上不满足于仅仅在IDE的控制台输出些东西,是的,你要找一个服务器了,tomcat向你招手。同样的,你不要去自己搞服务器,这个之后再说,你去下载完整的搭建包,只要双击,你就会有一个tomcat实例。
深入了解编程语言
巩固方法上,你只需要循环就可以了。首先阅读服务器编程需要的语句,然后尝试阅读基础代码,接着自己开始写。到这里,你基本上可以作为实习生助手参加一些开发工作。如果能找到一些社区项目,你可以继续精进了。
加油,坚持就是胜利!
Copyright © 广州京杭网络科技有限公司 2005-2024 版权所有 粤ICP备16019765号
广州京杭网络科技有限公司 版权所有