以下的一段文字来自网上单片机的论坛,是一个单片机学子说的:
学习
C
语言,千万不要用我们在学校里学英语的方法,而要用小孩学说话的方法。我
们学英语的方法,就是我们在本科时学
C
语言的那种模式(这里
,我们的这个网友同志
给我们很漂亮的玩了一把很标准的循环逻辑):详细搞懂每一个细节,背大量的规则,
很少上机实践,没有解决实际问题,最后由一纸考卷来断定学习成果。这种模式的后果大
家都清楚:我们不少人学了十几年英语,可还只会四五千个单词,写百把字的文章,但
不会说,更不能听;尤其要命的是,居然看不懂计算机中的英文帮助文档。我们要象小孩
一样,在使用中学会语法、修辞和词汇;一开始肯定只能编出最糟糕的程序,就好像小孩
开始只会说:“
”
爸爸坐车车 ; “
” “
”
但 爸爸 和 车车 ,这样的学习效率反而最高。学
C
语言的
时候,应从我的需要出发,先做一个最简单的东西,然后一点一点复杂起来,象滚雪球
一样。
这是一个单片机网友关于编程语言学习的观点,他把语言学习概括出两种模式:①
不少的大学生的模式;②小孩的模式。
他跳开学习C语言和英语的具体情况,来讨论语言学习中的两种方法;他从我们母语
学习的实践,来思考英语和C语言学习中的共性问题。这就是一种居高临下的心态。我们
很需要这样的心态。积极主动地进行这种反思和讨论,无论是对我们的英语学习还是对C
语言学习都很有意义,所以介绍给同学们,并进行讨论。
“
”
我的意见:第一:在语言学习中的确存在这两种模式。他所谓的 大学生模式 不妨认
“
”
“
”
“
”
“
”
“
”
为是从 一般 指导 具体 的模式; 小孩模式 不妨认为是从 具体 上升到 一般 的模式。
但是不要推到极端,不要绝对化,尤其不要作非此即彼的简单割离和划分。小孩学习语言
效率高,不完全是事实,还因为任务负担不重、驱动力很强烈、没有其它语言的干涉。
第二,强调小孩方式,强调积极进行语言实践,在用中学,这是对的。但有小孩学母
语,有两大不同的因素:在无处不在的母语环境中学习自然语言的母语。过程极其复杂而
漫长,因为其间还伴随着思维方式和思维习惯的形成。我们大学生和小孩大不一样,大学
“
”
生已经很难完全 复制和克隆 小孩的这种过程了:语言环境不同,智力状态和思维习惯
不同,任务负担不同,尤其,我们这里学习的是人工语言C51。
C51语言是人工语言,它不是自然语言,规则性比自然语言强得多,语言现象简单
多了。而且我们面临的C51,或多或少已经具有C
“
”
语言的背景。因此我主张从 一般 指导
“
”
具体 的方式,但强调语言实践,首先强调在用中学。
“
”
“
第三, 在用中学 不能无所用心,不在意、无所用心,抱一个消极的 用多了自然就
”
“
”
“
”
会 的幻想是不行的。在 用中学 ,这是基本原则。处处留心皆学问 ,一定要自觉的刻意
的 “
”
“
”
“
”
用 一般规则 指导 学语言用语言中的具体 ,自觉刻意地从 具体 验证、领悟、强化、上
“
”
“
”
升到 一般 (什么是领悟?啊,是这样的,学苏东坡, 浮一大白 )。就是说,读程序编
“
”
“
”
“
”
“
”
程序的时候既要 一般 指导 具体 ,也注意从 具体 上升到 一般 。勤于实践,双管齐下,
左右逢源,怎么得劲儿就怎么来。
“
”
在用中学 ,一定要勤于语言实践,网上有5000行的说法。勤于语言实践。
“
”
第四,这个网友的 滚雪球 的说法,即从一个最简单的东西开始,然后一点一点复
杂起来,象滚雪球一样。这个观点我们很赞同,特别推荐给你们,我们要由浅入深,逐步
推进。先读程序(范文的重要性,真所谓“熟读唐诗三百首,
”
不会作诗也会吟 ),再写程
序,在编写中也是先做一个最简单的,然后一点一点复杂起来,滚雪球。但是,我们必须
“
”
注意,刻意 上升到一般 、刻意模仿。
对于C语言学得比较好的同学,在C51
“
”
学习中可以找到 轻车驾熟 的感觉;曾经在C
“
”
语言学习中举步为艰的同学,也会在找到 似曾相识 的感觉。只要不轻言放弃,可以在
C51这里找到感觉,重建信心。说不定,一下子豁然开朗柳暗花明,于是不善罢甘休,得
寸进尺,返回去深入学习C语言,一不留神又把C语言给搞定了。这是有例子的。这是我们
的一种期待。