如何训练大学生的工程实战能力

这是发到我邮箱里面的一个问题,感觉有点普遍性,这里share出来,希望能给目前的老师们一点参考。
一家之言哈,欢迎拍装。
===============================
原问题如下(有删节):
肖老师,您好:
我是在CSDN认识您的。你在学生大本营的文章我篇篇都阅读了,很实在,受益匪浅呀。
我是一名高校教师,是计算机学院的。由于工作原因,我暂时从事编程语言类的教学,主要是C语言程序设计。
 
现在我们在大一第一学期为新生开设60学时的C程序设计课程,主要目的是培养学生的程序设计能力。经过思考以及看您的文章,我考虑将课程分成两个30学时的课程,分别在大一第一和第二学期讲授。
 
第一学期讲授简单数据类型,程序控制逻辑,函数初步,指针基础,数组和结构体,目的让学生快速入门,会写程序;第二学期讲授复杂数据类型,函数深入,指针深入,文件,程序结构,程序优化等,目的是让学生提高程序设计能力,能写出较高质量的专业程序。上机实验在各个学期各占10学时。在临近结课时,结合嵌入式系统设计实验内容,指导学生在小型嵌入式系统上使用C编程解决具体问题。
 
这样设计的主要思想是,(1)知识由浅入深,分散难点,使学生快速掌握(2)培养锻炼学生的程序设计能力;(3)通过嵌入式系统的编程练习,使学生认识的C语言的实用价值(不单单是一门教学语言),提高学习热情和兴趣
 
不知这样的教学和实验设计,就您的经验,是否可行?有何赐教?
 
谢谢您百忙之中阅读此信。热切期盼您的回复。
===============================
我的回答如下:
你好:
 
首先感谢你的厚爱,其实我不是老师的,自己的定位还是一个工程设计人员,因此具体教学上,我说不好,请见谅。
 
我的理解,作为一门传统意义上的大学课程,你的设计是正确的,不过,距离企业的应用需求还是有段距离。
 
我们在学习计算机编程时,其实大家没有明说,但是都清楚,有个“门槛”,这个门槛就是程序思维,我个人的理解,就是综合运用自己的知识,特别是数学知识,对某种事物的行为特性,做出抽象化,提取其可重复的共性,进而进行清晰的描述的能力,这个能力,没有写过程序的人理解不了,如果不迈过这个门槛,也写不好程序。
 
这好比大家小学是认字一样,字可以认识很多,但是,写作文,始终有道门槛,如果不迈过去,写出来的东西别人就看不懂。小学其实做的很好,先学字,再学词,再造句,慢慢的把几句话连起来,写短文,最后写指定字数的作文,这样循序渐进地学习,效果比较好。
 
但显然目前计算机编程教育,没有做到这一步,基本上是字词教完,最多教到造句,也就是写一些简单的实验程序,然后学生就毕业了,到了企业中,大家才发现,每一句话都正确,连在一起却不知道讲什么意思,我个人认为,这就是中国计算机教育缺失之处,学生在学校里面,很难有机会,针对一个可以卖钱的商用工程,站在系统的角度,连贯起来分析,以锻炼大规模的抽象能力,这个是现状,也很难改变。
 
针对你的课程,我建议你不妨把第二学期的内容变一下,第一学期可以理解为学到造句,30行以内的小程序,应该有设计能力,再大估计就不行了。
 
那么,我建议你从第二学期直接就开一门试验课程,嗯,这个实验内容可以具体定,比如说做个自动控制的灯光,门铃,注意,这可不是过家家,我举个例子,如果是灯光,你观察一下十字路口的信号灯,出个课题,咱们来做一个信号灯系统,你是嵌入式课程,一定能做出来的,解决方案可以由学生自己定,但最终,利用一个学期完成。做个电铃,那就要求可以满足一个中学每周的定时打铃需要,需要做计划任务,任务队列排定。
 
你注意到差异没有?实战类课题,要么不做,要做就要做个切实可用的东西出来,甚至,做出来的东西,要请用户来点评,是否好用。
 
这样当然有难度,因为这实际上是一种“憋”的方法,逼着大家强行跳过这个门槛,前期肯定是学生也累,老师也累,我当初过这个程序设计门槛的时候,嗯,87年吧,愣是用了三个月才真正理解,但是过去了就好了,就会用程序写作文了。我想,如果你希望做个好老师,不妨这么累累看。
 
当然,商用开发也有一些必要的流程,可以考虑把学生分为几个小组,每个小组是一个项目组,互相构成竞争关系,大家都遵循先做系统分析讨论,然后写设计文档,最终实现的目的,甚至,可以考虑各个组互为QA,测试对方的作品。每个阶段完成,都要有里程碑评审会,全班开会,讨论各个设计方案的合理性,以及互相学习。我觉得这样一个学期联系下来,你的学生出去,应该有初步的动手能力了。
 
嗯,这里做个小广告,我的新书《0 Bug ---- C/C++商用工程之道》,里面讲了很多商用项目实战的经验,一些必要的做事方法和态度,另外还提供了一套工程库作为参考,如果你有兴趣,建议书出来后买本看看,嗯,甚至可以考虑把它作为指导教材,推荐给学生使用。里面的知识,应该有很多培养学生写作文的能力的。

你可能感兴趣的:(能力,实战,工程,大学生,训练)