寻求最合适你的学习方式,是让你坚持学习的重要途径

 对于每一种学科都有固有的学习方式,比如英语只要背就可以了,数理化只要多做题就行了。自然,这里说的是应试教育下的学习方式,是为了应付考试。所以,考试完毕后,基本就废了。因为没有用武之地,四六级过了,也不能说话;数理化满分,也不能创新。

  
劈开这些已经根深蒂固的学科,我们来谈谈计算机编程,目前大学计算机专业都会有各种编程语言要学习。但从我的大学的学习经历来看,基本上走的还是应试教育的老路。所以说,学习必须要靠自己。

  这个世界不存在最好的学习方式,只存在最适合你的学习方式。


  初学者从何开始?

  
什么是初学者?一般来说是初次接触编程的学者,而不是初学电脑的小白。对于电脑没摸过,"a b k"都会读成 "啊 啵 嗑"的人员,再天才的老师也没办法教授的。那么初次接触编程的学者应该会具有一般电脑操作,Windows的基本使用,能够上网,会打网络游戏,当然打字是肯定要会。Dos会的话,那更好一点。这些才能成为初学者。

  对于初学编程的人应该从何开始学习呢?大学的基础学科基本都是从C语言开始的,我个人也认为从C语言开始比较正确。后续的主流语言Java、.Net、PHP都是基于C的编码风格来的。有些人一开始喜欢从C++开始,因为他们知道C++可以实现大型系统的开发。但我要说的是,绝大部分人最终以放弃收场。

  
怎样完成一门主流语言课程的学习

  一般来说,主流语言主要是为了胜任一份工作而去学习它。而不是为了兴趣,也不是为了科学研究。所以,并不需要面面俱到。所以,学习主流语言是必须要用尽量短的时间,掌握能够胜任这份职业的程度就可以了。

  我们这里拿已经出品的ASP来做个理解吧。(虽然已经不是主流了)一般ASP分为三个部分:(1)基础知识 (2)高级应用 (3) 项目实践。我个人认为所有的语言都基本可以归纳成这三个部分。在我的课程中,没有涉及高级部分。只讲解了基础知识,然后在项目实践中融入高级部分。很多学生买书,或者看视频自学的时候,基础知识听完了,感觉不错,但一到高级部分就卡在那里了。这个时候,他们自信心就开始下降,决定再学一遍高级应用部分。但结果还是学不懂,云里雾里。这个时候,大部分人不会去直接看项目实践,而是选择重新买一套书,或者重新下一套视频学学看。其实正确的做法是,应该跳过高级应用部分直接去看项目实践,即使项目实践用到了高级部分,你就当复制一带而过就可以了。

  很多人卡在了中间比较高级的部分,因为很多情况下课程是连贯的,一个地方卡住,下面就学不下去。所以,基于这一点,我的课程没有高级部分的课程内容,而是将高级应用融入到项目实践中。比如:验证码的实现(这是ASP绘图技术,没有讲怎么实现,只是教授你怎么用,因为它不像PHP,.net有封装好的类库,需要自己编写绘图,所以非常容易把初学者卡住),比如无组件上传下载也没有讲怎么实现的(因为使用到stream字节流技术,会把初学者卡住,只是教授怎么套)。再比如ASP的面向对象class类和com组件等等,就不用去讲了,压根就用不着。这些都能卡到你丧失信心。

  因为卡住了,迫使很多人学了很多遍基础,更有人学习了很多遍各种语言的基础部分,而没有做过一个项目。其实,这样就造成了百通不精一的局面,殊不知精一就能百通啊。基础语法是最容易遗忘的东西,学习了那么多遍,没做过一个项目应用,很快就会忘记。而胜任的工作恰恰是项目应用。知道了这一点,很多人不去学习语法了,直接学习项目制作。这样难度相当大,总是要回来查询语法知识,很浪费时间。个人觉得,比较妥当的方式是:主流语言的学习,语法学习完之后,不需要面面俱到,只是把每节课的语法,不看书,不看笔记,脱手打一遍。然后立即进入项目实践,两到三个。即可完成一门主流语言的学习。切忌,学习完毕后不到半年基本就忘了差不多了,需要不停的练习。

  
学习视频课程的一些建议

  对于基础语法部分,有两个不同的学习方式:

  
第一种,就是老师讲到哪里,你暂停一下,在理解的基础上,跟着老师的代码打一遍,运行一下效果。但这种方式有一个很大的问题是,你是看着老师的代码打一遍,你自己打的出来吗?所以,建议这种学习方式的同学,打完一遍后,根据没有代码的笔记上,再打一遍。直到能把所有的语法和单词都记住。

  第二种,就是把一堂课听完之后,翻开源代码打一遍,其实和第一种方法雷同,还是需要脱手再打一遍比较好。两种方法都是可取的,只是建议能够脱手打一遍。让自己了解自己。

  很多视频一节课少则45分钟,多则2,3个小时,这样如果全听完再练,那么开始讲的什么都记不住了,考虑到这一点,所以我的每节课控制在20-45分钟之内,大部分在25分钟左右的样子。

  对于项目实践,学习逻辑,而不去刻意记代码:

  项目实践中分了很多个版本,每个版本中会增加一个功能,方便查询。听完一个版本后,不要去看源代码。自己记住老师的设计逻辑,然后通过你的想法去实现,就算你的代码和老师的不一样,只要功能实现,那就行,那就是你自己做的。你看着老师的代码打一遍,基本上还是老师的。放出源代码的目的是为了,你实在想不出来怎么做的,或者一个地方的单词记不住,去查阅的。所以,项目虽然是课堂上在讲,但你学习的不是代码编写,而是逻辑流程。记住逻辑流程,用你自己的代码去编写吧。

  一些有趣的学生的学习方式

  1.有个同学很牛,从来不会跟着老师的步调走,老师上HTML,他学习JavaScript,老师上PHP,他在研究Java,老师开始讲MSSQL,他正在安装Oracle,还抱怨安装好慢啊。最后的结果可想而知。


  2.有个同学非常注意细节,上课就一本书,他却买了很多参考书。每次都能把我问倒,因为他总喜欢找那些生僻的知识点。在实际应用中根本用不着的东西,在那边专研。最后结果可想而知,一无所获。因为把时间都耗在了这些东西上面,没有时间去练习和项目实践。

  3.有个学生很认真,上课没缺席过,上机都能坚持,但从来不写代码。整天冥想这个原理,那个原理,编译器是怎么做的?浏览器是用什么语言写的?电脑显卡怎么编程能让人类的肉眼看见显示屏的字?最后可以讨论到这个世界先有蛋还是先有鸡,宇宙大爆炸到底怎么产生的。诸如此类一大堆,55555555~~~~~


  
总结:我们不需要去做科学研究,不需要做特别高级的应用,只是为了能找到一份工作。所以,并不需要太注重过多的细节,不需要了解太多的底层。最好的学习方式是最适合你的学习方式,要找到最适合的学习方式是需要你自身去探索的。而寻求到最适合你的学习方式,才能让你在学习的过程中坚持下去。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值