摘要:
对于初次学习编程的同学来说,本文介绍了一些对编程正确的认识和一些小小的学习方法。
关键词:
编程的认知 语言 词 句 文章
正文:
1、 前言
在北大青鸟的学习生活中,一些同学总是问道:一个语句的意义是什么?一个语句该如何使用?我能看懂语句但一到用时就不会了,这怎么办?本文作者作为一个学习了编程3年,从C等基础学起的过来人,给大家讲解一些初学编程所应注意的一些小方法。
2、 对编程的认知
编程其实并不难!
要编程并不需要到大学计算机系里去学很多艰深的理论,经过适当的指导与训练,一个高中生就可以参加到软件项目团队中,并写出具有相当质量水准的程序!
为什么会有那么多的人把编程视为很高深的东西?
而现实中,一边是真正合格的程序员人数很少,软件企业都在呐喊急缺人才,而另一边是大量的学生毕业找不着理想的工作。这样一个怪圈为何会形成?
我想是学生学习方法与态度的问题。由于对软件开发这一工作本身缺乏正确认识,许多学生形成了一种浮躁的功利型学习方法,表现为盲目地跟风,学习各种当前流行的新技术,但大都只是三个月热度,由于欠缺毅力和不具备扎实的理论与实践基础,对这些新技术无法深入把握,浅尝辄止,“坐而论道”,讨论时可以“滔滔不绝”,一到动手则“原形毕露”。许多人没有想过,现在流行的“新”技术,难道就会一直“流行”下去?曾经风光一时的 Foxpro 和 PowerBuilder ,国内曾有许多人投入大量的时间去学习与掌握,可没过几年,还有几个项目是用这两种技术开发的呢?所以,如果要“追”新技术,也只能去学预计两到三年后社会急需的技术,这就需要学习者有超前的眼光。但软件技术进步实在太快,很少有人能够准确预测出几年之后会流行什么。所以,与其“临渊羡鱼”,不如“退而结网”,选择一项自己喜欢的领域,从理论到技术,扎扎实实地用两到三年时间去学好它,在学习过程中培养出“捕鱼”的本事。有了这种自我学习的基本能力与素质,还担心出海捕不到鱼吗?
编程是有规律的,读者能不能迅速成为一名具备相当水平的程序员,关键在于对编程规律与必备知识基础的把握程度。其实,很多语言都是相通的,毕竟都是给学习计算机的人看的。基础的相通使我们在学习过一种语言后对其他的语言能快速的了解并掌握。对于初学者来说刚开始的确很难学,而且还有那么多的变化,像c有c++,c# 等等。其实不用怕,到后来你发现越来越多重复的知识出现,你会发现原来就是那点东西,翻来覆去的用嘛。
最重要的是要掌握原理。在开发过程中所进行的各项具体活动与工作步骤,其背后都是有道理的,理解清楚了这些道理,在整个软件开发过程中该做什么,不该做什么,先做什么,后做什么,也就心中有数了。
3、 关于对语言的认知
很多人都认为计算机语言是一门理科的课程,它是与数学、物理等一样的学科。经常有人问,这个语句的公式是什么?他是如何做出来的?事实上真正如其名一样,计算机语言是一种语言,而语言是一种文学的东西,他并不是像数学、物理等一样是理科学科,而是与语文、英语一样的文科学科。它并不是由所谓的“公式”做出来的,而是由词、句等书写出来的一篇文章。下面就让我以Java中的语句为例,从词、句、章的方面来讲述初学者对于编程语言要了解注意的一些事情和一些学习方法。
词:
作为最基本的文学单元——词,是我们最先应该掌握的。再华丽的文章也是由一个个词组成的,一个好的程序,也是由一个个“词”来组成的。
何为一个词呢?下面让我们来看这样的一个语句:
int as = (int) (Math。Random () * 10);
一个Java第三章练习中出现的语句。这个语句的中文意思是:把一个double型的从0到1之间的随机数,乘以10 ,再变为int型,赋值给一个int型的变量as。很多人问了,这里又是乘,又是变形的,不是一个数学公式么?诚然这里用到了许多数学上的东西,但是事实上这是一个标准的语言语句。先不说这个,下面我会来给大家解答。先来看看这里的词。
int as = (int) (Math。Random () * 10);。这里int、=、Math。Random (),这些都是词或词组,“=”在这里是赋值的意思,Math。Random ()是取一个0到1随机数,这是个词组,int指代整型变量,而“;”就是我们说的句号。而在语句“int a =3;” (把a赋值3)“Math。random()*100;”(取0到99的一个随机数)中,这些词的意思都是不变的。好了,说到这里一个问题出现了,初学者常问编程中的这一句是什么意思?一句你看不懂,那么把它先分开来一个词一个词的了解。作为学习语言,了解词的意思,是学习的第一步,就像我们常背英文单词一样。
句:
词大家明白了,那么如何应用呢?怎么把它组成一句话呢?那么首先,我们要了解每一个词的准确意思和用法,像“=”:是赋值的意思,指把等号右边的赋值给左边的(变量)。那么我们就可以发现:1、“=”是一个动作,它是有方向的,就是说是有顺序的,而不是一个简单的数学表达式,就像语言中的主谓宾语。在数学中x=3,3=x说的都是3和x这两个数相等,而在编程中,只能有x=3;不能出现3=x.。2、在计算机语言中“=”是一个动作,所以有了这样的句子:a = a + 1。这当然在数学中是不可能的了。特别的,数学中是就是是,不是就是不是,而在语言中一个修饰或者只看一部分,可以把一些东西变成别的样子。例如:(int) (Math。Random () * 10)。(Math。Random () * 10)是一个0到10之间的随机数,那么我们现在修饰:(int)è把这个数看作为一个只有自然数的部分的数,就是说把3.5变为3,把一个有小数的数变为一个自然数。这在数学中有四舍五入之说,在这里我们只看小数点前面的,不理后面的。这是文学中常有的,只看部分。那么词有了顺序,有了修饰,才有了句子,才能看得懂。这也是刚开始编程的一个重要问题——词义不懂,语句不顺。
文章:
一个程序就是一篇文章。作为初学者来说,刚开始的程序就像小学1、2年级的小作文一样,只是叫你了解词的用法,句的组成,文章是否通顺,而不是叫你写多么华丽的文章,多么优美的语句,相对于程序就是简练的、方便的。初学者首先要把词语的具体用法弄清,句子弄通顺了,把程序做对了就好。不用你去做的多么简练,能运行就行。而怎么做得更好,程序更简练,是要你在词句全部了解之后,进行合理搭配的问题了。弄懂词的意思是第一步,词语的具体用法与在句子中的位置,句子的通顺,是我们需要重要掌握的。而很多人看得懂程序,却做不出题就是这个原因了。弄懂词意但不会用,是一个初学者经常犯的问题。
对于初学者,编程中写著译就像你在刚学英语时在书上写的中文一样有用而重要。多看看你能懂得程序,或看一些你做的著译,再把它翻译成程序,也是一种不错的学习方法。当然,你去看一些现在不会的程序,来提醒你的不足,激励你更好的学习也是可以的,这就因人而异了。
4、 总结
以上,是本人对初学者关于编程上的一些常见错误的认识与问题做出的解答,并把我学习时的一些方法介绍给大家,希望这篇文章能给大家带来帮助!