查看文章
 
学习编程的第一步——怎样学习编程
2009-01-11 3:04 P.M.

经常遇到很多搞美工设计或做动画的朋友,想学习编程,但是对于怎么入门很困惑,到处在网上求教,一些混迹网络的“高手”们就开始给新手们出主意,比如某A君想学ASP,被告知,先去学C吧。再如某B君想学php,被告知先去学asp吧,再有如某C君要学C#,被告知先去学C++吧,又有如某D君想学js,被告知先去学java。等等很多诸如此类的推荐,都是要某君先学一门语言,再学另一门。本人看到类似的推荐帖,不免摇头苦笑。学习一门语言真就那么难吗?真的要先学一门,才能学另一门吗?

本人结合多年经验及自身学习经历,给出的答案是:NO!


1.任何语言都可以直接学习

首先,学习一门语言,并不需要先学习别的语言,先学A语言,再学B语言这个观点是不正确的,不管什么语言,都可以直接开始学,只不过如果有别的语言的基础,能更快的进入编程学习的状态,因为所有的语言的关键字和基本语句都是差不多的。

打个比方:比如你学英语,首先得先学习26个字母,然后才会单词的发音,接着单词学会了以后,才能学句型。另一方面,老外学中文,一样要先学习拼音字母,然后才会汉字的发音,单字都会了以后,才能学造句。这里面有多少东西是相似的呢?

1) 首先,英语字母和拼音字母都差不多,写法一样,仅仅读音不同。

2) 再次,学习的方法都一样,都必须先从字母开始,然后学习单字,然后句型。

3) 另外,我们还能看出,不论英语的造句和汉语的造句,在句型结构上也相似,都有主谓宾定状补。

所以对于已经学会一门语言的人,再学习另一门语言,在很多时候的学习上,就可以借助之前学习的经验,但是对要学会一门新语言本身并没有必然影响,学会英语,不一定对学习汉语有帮助,反过来学会汉语的人,不一定在会英语的时候能如鱼得水,因为他们的本质内容还是不一样的,所以也需要不同的学习方法,毕竟各种语言之间的联系并不紧密,除了传统思想和大框架有相似性,其他没有多少一致。而且有时候还会因为学了另一种语言,思想根生蒂固,结果在学习B语言的时候产生思想抵触。

这在学习编程语言是也是一样的,所以本人认为,要学一门编程语言,不必要刻意去学别的语言。比如要学习C#,没有必要去先学Java或者C++,学习As3,也没必要先去学Java,先学C++就更没必要了,和as3无论用途还是环境,应用构架都相差太远。

换言之,如果学习一门编程语言前,都要先学另一门相对基础一点的语言,那学会AS3的人,肯定是Java也会,再推下去,那肯定C++也会,那肯定C也会,推下去的结果是什么都会,这样的人也有,不过不是普遍现象,没有人是什么都精通,什么都会用的。而且虽然很多程序员在各种语言之间转来转去,但是并不代表要先会a语言再会b语言,没有这样的逻辑。而且我知道很多的C#程序员都是直接在学校就学会的。


2.讨论一下学习编程的要点。

1)系统性学习

学习编程,我建议要系统的学习,因为语言的学习并不像学电脑操作,可以先学会一些功能,其他的功能即使不会,大不了不用。而语言的使用是一个系统性的使用,因为项目本身就是一个很系统,很严密的结构,一知半解,或只学会30%,即使学会了50%也是很难完成的整体结构的。所以要学习的话,不推荐看电子书,视频教程,建议买书系统性的学习。买书的时候也不建议买实例书籍,而应当以语言的语法,思想学习为主。全部吃透消化之后,再看实例类书籍。

2)有效的学习方法

由于编程的学习属于逻辑性思维,对于一些逻辑思维能力较差的朋友,可能学习起来就很费劲,学了几个月,还是不入门,那怎么办呢?

根据本人的一些经验,这类朋友不妨试一试如下方法:

a. 背关键字和基本语法,并默写:为什么要背关键字呢?打个比方,就像小学生写作文,写不出来,会背成语字典一样,同样的道理,先背会关键字,对写程序也有很大的帮助,即使还不了解是什么意思,但是如果能背会,在以后看例子程序的时候再慢慢理解也会让学习更加有效,免得经常看了后面往了前面。

b. 抄写例子程序:对于一些例子程序,反反复复都看不懂怎么办,个人建议,抄写几遍,一边抄一遍理解,即使还不理解,也会因为抄写了几遍,而加深了印象,看到类似的程序,脑海里就会自然的产生关联性。

当然这些方法只是针对一些久学而不会的人,并不是所有的人学习编程都需要这样,有时候我自己学习某种语言,甚至是研习了数十个实例后,豁然学会。当然这样的学习并不系统,只能算粗粗学会,要想进一步学习,还是得看系统性的教材。

3)大量的脱书练习

学习编程,学习语言,最重要的是什么?就是需要不断练习,就像学习英语要多说多写一样,否则就是哑巴英语。学程序也是一样,要多练习,否则即使能看懂,也不会写。我发现很多人都是这样,能看懂,但是让他自己写,却怎么也写不出。

有的人说,我也是经常练习啊?我经常做各种东西,也算是做了大量练习了?那我不禁要问,你有没有做过脱书的练习,就是不看书,不看任何实例,自己独立写程序呢?好像某些朋友都是抱着一段程序片段,东拼西凑,到处抄抄。这也算练习吗?即使算,也是很没效率的练习,这样的练习重复100次,也不会让你有多大的长进。

要做到有效学习,就必须做脱书练习,把书本抛在一边,不看任何实例,手册,不去抄别人的代码,完全自己独立编写,做过多次这样的练习之后,你就会感到,你突然理解了怎么写程序了,如果你不信,去试试。

4)学习编程的步骤

学习编程建议步骤:首先系统性的学习语法,然后深入理解思想,再次需要勤加练习,最后多多分析一些高手的实例。


3.推荐一些学习AS3编程的书籍

对于一些流行的语言,网络上的学习方法比较多,本人不作推荐,在此推荐一下学习AS3编程的书籍

1) 《as3殿堂之路》

2) flex用户可以同时购买《flex第一步》

3) 同时还有几本书也不错:《as3设计模式》、《as3 cookbook》(建议有一定基础以后再看)

关于学习flash编程,可以看下我这篇文章,由于文字太多,所以以下贴出链接,文章后半段探讨了flash编程的学习方法,供你参考:
http://hi.baidu.com/billypc/blog/item/4c1bd4cbbed94e41f31fe767.html


类别:默认分类||添加到搜藏 |分享到i贴吧|浏览(6228)|评论 (0)
 
 
最近读者:
 
网友评论:
发表评论:
姓 名:
网址或邮箱: (选填)
内 容:
     

   
帮助中心 | 空间客服 | 投诉中心 | 空间协议
©2012 Baidu