学到老Never too old to learn分享 http://blog.sciencenet.cn/u/tangchangjie

博文

享受学习,享受实践---喜看学生“玩”电脑,----巡课笔记之四 精选

已有 14191 次阅读 2012-12-25 19:34 |个人分类:教学科研|系统分类:教学心得| 实习, 玩电脑, 项目驱动, 框架式辅助编程

享受学习,享受实践---喜看学生“玩”电脑,----巡课笔记之四(唐常杰)

Enjoy computer 计算机科学是实践性很强的科学,如今,写篇理论性的文章,如果没有一定的实验验证,没有几十个曲线或图表,已较难发到顶级会议或杂志了,至少在数据库界是如此

有人说电脑专业学生手中的电脑就像战士手中的武器,常用常练。除了学习理论,低年级学生会用相当的时间和电脑厮磨,有些高年级的学生会即兴写出平板电脑和手机的应用,学电子游戏方向学生的即兴编个游戏程序送朋友,他们写游戏剧本、玩游戏、都是“恰务正业”实践。

学得轻松的同学把这些实践活动规约为 “玩电脑”。好一个“玩”字! 它体现了学生的愉快心态,Enjoy computer ,就是 Enjoy praictice study,Enjoy technology。

并不像中学生想象的那么好玩 以为计算机专业大学生的学习就是“玩电脑”,也可能也是部分中学生被吸引到计算机专业的原因。其实,各行有各行的难处。一些教师不希望子承父业,就因对本行之难了解太多,计算机专业也莫能外。

大一学生进了计算机专业,才知道计算机专业也有难学的离散数学、枯燥的汇编程序、艰深的编译理论,不易入手的面向对象程序设计,不是中学时想象的那么好玩。一年后,总有极少数学生申请转向其他专业,理由中,兴趣不合多属托词,觉得难才是主要的,学起来难,自然就没了兴趣。

实验课引领学生“玩“电脑 计算机专业本科低年级的实验课中,探索成分和学习成分的比例 大概为2:8 或 3:7,随年级升高而升高。实验课中,总要和设备打交道,老师在实验课上是大玩家,带领一群小玩家玩设备,玩C语言,玩汇编,玩网络, 玩数据库,等等;如果能让学生们玩出兴趣,在玩中巩固知识、化解困难,在玩中建立信心,玩出成果,就达到了实验的目的。

老师显示动手能力,激励学生动手能力。培养学生动手能力的最好方法是老师在实验中显示自己的动手能力,让学生佩服,让学生模仿。一些老师在实验课中自己建设实验和改造环境。


Yhy老师的数据结构与算法分析的实习是学生欢迎的课程,实习目标是实现一个停车站管理系统、电话客户管理系统、或排课系统的原型,颇有难度。所采用的正规教材正好是他所在的教研集体编写的,并被多个学校采用,因此他对教材内容十分熟悉,在指导过程中,在学生提问、排错、咨询时,充分显示了的动手能力,这是对学生动手能力的最大鼓励和支持。
Zg老师在几个软件的基础上,通过集成、定制和改造,实现了一个宏汇编语言的环境,观察了使用效果,感觉挺好,师傅表现能力,徒弟佩服师傅,就产生了模仿的热情。

各有特色的数据库实验课 笔者巡听了几位老师的数据库课程实验课,他们的共同点是 “项目驱动(Project-Driven)+ 三次通关”, 但在教学指导上又各有特色。

所谓项目驱动,是指学生小组(2-4人)在一学期的实习中,完成一个能运行的应用系统原型,例如图书馆管理系统、学籍管理系统,或停车场管理系统,….; 围绕这一目标,学习软件平台安装、熟悉开发环境基本要素,最后要实现应用系统原型,而硬指标是通过实际运行的检验。

一课多师,各有特色Gx老师的实验课也是双语课,全英文的PPT,讲解以英语为主,对内容难点,用中文再解释一遍;听课教师觉得讲得很清楚,设计过程。需求分析,等环节处理得不错。

Lc老师在对学生的个别辅导方面有特色,学生反映他特认真,每到程序验收时,师生都进入大忙收获季节,检查、纠误,验收,学生组有三次通关机会,大部分两次能通过,少数学生要第三次才能通过,费力多,也学得多。

Cp老师是编程高手,做过许多实际项目。其特色在提供的原型框架和半自动验收。要求学生做成一个B-S(浏览器-服务器)模式的目标系统,有一定难度,为减轻难度,老师提供了B-S系统框架(这不属于数据库课程内容,且需要较多经验),学生完成其中的14项数据库查、插、删、改功能。并通过一个半自动检查系统的验收。他的框架式辅助编程思路,启发笔者写下了下面几段。

急切学艺的学生 与 不慌不忙的师傅 低年级学生渴望进大学两个月就能学会写Windows风格的小程序--有界面、有窗口、有菜单、有颜色。

有老师说,不急,慢慢来,需学的还多,先学C语言,再学C++,学了对象类,学了MFC,才会编窗口风格的程序,早着呢,也许,要到二下或三上才学得会。这些老师也有理由,计算机专业的学生将来是要发明或研制一门语言的,需要深刻的理论基础,要夯实基础,一步步来。

其实,低年级学生学写程序,主要还是技术和艺术层面的事;而且大部分学生,将来也不会去研制或发明一门程序语言。在技术和艺术层面,是可以先知其然,后知其所以然的。

而框架式辅助编程能帮助学生先知其然,缓和“老师不急学生急”的矛盾。


框架式辅助学习编程 下面的例子是多年前给数据库方向硕士生用的,旨在实践数据库管理系统内部机制,现已年久失修,跟不上平台版本升级的步伐,虽然out了,还可以用来说明框架式辅助的思路。


这是一个亦虚亦实、亦真亦幻、亦难亦易的框架。

说它实,是因为课题组老师先写好了1.3万行代码,初具一个简单DBMS的功能,能建能存、能查插删改、有B-Tree、 有命令解释器,有时态管理机制…;

说它虚,是在实验前,把某些过去实现得不好的、或有典型性训练意义代码挖空了,让新的学生重新实现;例如显示结构模块和数据装载模块,是数据的逻辑表达和物理表达的纽带,对理解内部机制有典型的训练意义,多次挖空作为训练科目;

说它真,是因为框架总60%的子菜单项是真正实现了的,点击,跟着提示或子菜单,就能运行;

说它幻,有些菜单项是临时设想中的项目,或某研究生正选题探索的项目,例如点击菜单项 “测试Encode”,屏幕上将显示::

“本模块测试数据库加密方法

此模块由XXX同学开发,采用论文XXXX上的方法或更好的自己改进方法

要求:输入  XXX……  

     输出  XXXX…….

模块文件名: Encode.C, 头文件名 Encode.C, 其他相关文件:….”

开发注意事项 ....

规定完成时间:.....

说它难,是因为造一个简单的DBMS(数据库管理系统),比学会用一个DBMS难,就像自己学装一个简单的收音机,比学会用一个收音机难得多。

说它易,实际上它是已局部化了的任务书,规定了模块功能,输入、输出以及格式,提示了必要的相关文件,以及大致的思路。执行者只须读基础代码中的15-20%,自己再写1500-2000行程序,就可以测试自己的想法,如“测试Encode”测试数据库加密,等等。

先搭好框架,再赶小鹰上去学飞 。把上述亦虚亦实、亦真亦幻的框架内容,换成适合本科低年级学生实习的应用系统,如上面提到的目标项目,学生成绩管理、图书馆管理、停车场管理、 简单排课系统,等等。低年级学生就能在框架辅助下,在一个实习小组中,用C,C++,JAVA,或SQL,开发出一定规模的实用系统原型,学习编程技能,还能得到团队合作锻炼。

只要搭好了框架,然后,赶小鹰上架去学飞,没有教学风险,能够飞起来。因为:

(1) 任务已分解,老师已把全局任务分解为局部任务,且给出了各块衔接参数和格式,保证合格部件能组装成功、能正确运行(这一步有点难);

(2) 有模可仿,框架的基础代码就是“模”,在模仿中学习,在编程中学编程,在游泳中学游泳;

(3) 不大的旧程序阅读量,10-15%的基础代码,如与模块衔接的其他模块模块的输入、输出;

(4) 调用基础模块中的窗口输入输出工具函数,如在窗口中输入或显示字符串的函数,低年级学生可以轻易实现窗口风格的界面;

(5) 先填空式地完成局部任务模块,知其然,到了期末,悟性高的学生能知其所以然,自己写出这样的框架。

一旦学生学会了做这样的框架,用途就多了,例如:

(1)集成自己的实习作业,把实习作业成一个窗口化的点菜单式的程序集合;

(2)集成课外创作,有了一个小小的灵感,在框架下,对用过去的工具模块,就可测试新的想法;

(3)学会组织合作,把一个较大的创新想法分解成为多个小题目;一周做一点,一人做一点,集零为整,集小胜为大胜,一学期几个人,就做成一个稍微大一点的、拿得出手的项目;甚至像博文《计算机科学, 大一学生怎样来爱你)》说的L同学那样的,做出能实际应用并产生经济效益的项目,同时锻炼了项目分解和管理的能力。

过来人的唏嘘,当年痴心遇冷风 高年级学生中的程序高手,回望来路,感叹大一时的迷茫和蹉跎,说:最难的是不知在何处下手,一个大程序(1000-10000行),不知先写哪一行,不知怎样去写一个窗口风格的程序。刚刚学C语言时,知识少,技能少,写的程序都是DOS风格的,键盘输入,黑屏幕输出。看见中学的同班同学,学的还不是计算机专业,都能编窗口风格的程序了,心里就着急。想快点学,老师却不断告诫要踏实,要慢慢来,有点像是痴心遇冷风。

到了三年级,总算学会了,如果当年有三四年级的学长指点一个框架,就可能快一点。

值得欣慰是,现在已经有高年级的学生,愿意试一试,为低年级学弟学妹们,开发这类型的辅助学习框架系统.....,

期待他们的成功。

巡课笔记后记

督导组不是督战队,不是教训组 教学督导组中,有院系管理教学的领导,也有已经退休或即将退休的老教师。巡课过程中,我们看到了不足,更多的是看到了欣慰,看到了年轻老师的成长。

如在本系列第一篇说的,教学督导组是传感器,是蜜蜂,不是督战队,更不是教训组。上课的教师已为人师,不需要别人去教训。只要传播教师中的好经验,他们就能感觉到压力。

作一回蜜蜂,传播花蜜一样的好经验,正是本系列博文的宗旨。

重当一次本科生的感觉真好 在交流巡课体会时,督导组老师们说,巡听了不少以前学过、教过,但已经被更新、变化了的课程,有的课程变化很大,恍如隔世,也是一次重新学习。

老教师Lb 说:“重做了一回大学生,觉得老了,老了,”,“退休后重新回教室听听课,重做了一回大学生的感觉真好”;

他还说出了督导组老师的心声:要把理念应该放到第一位,要教学生“Learn how to learn”,......

到此,巡课程笔记基本结束,原策划还写一篇议论考试的,暂未写的原因有二:(1)离考试还有一段时间,没有调查就没有发言权;(2)以前写过一个关于考试的系列博文,可暂时参考(参见后面)。

系列博文 

     考试出题系列 3篇 进化、人工选择和考试;技能性考试与驾照;


https://blog.sciencenet.cn/blog-287179-646341.html

上一篇:互动是课堂的活化剂和清新剂 ---巡课笔记之三
下一篇:新现象、新话题,新困难、新方案 — 带个WiFi去串门
收藏 IP: 182.150.135.*| 热度|

47 毛宁 曹聪 董文娜 王娜娜 袁君云 王春艳 石东兴 杨正瓴 刘洋 徐向田 李伟钢 李学宽 吴飞鹏 边一 王善勇 钟炳 赵斌 孔梅 赵继慧 王浩 马萧萧 刘丽华 左嘉陵 封力军 曹元兰 庄世宇 苏德辰 李志红 徐迎晓 彭真明 王德华 张俊鹏 高建国 虞左俊 朱晓刚 龙涛 zhangbenhua82 wnagjiho lizhiyuge chengmin8504 qiaoaiguo7801 zhongweiguo8 bridgeneer zhugehonghuaz huangpulingk linhucao chenhuansheng

该博文允许注册用户评论 请点击登录 评论 (37 个评论)

数据加载中...
扫一扫,分享此博文

Archiver|手机版|科学网 ( 京ICP备07017567号-12 )

GMT+8, 2024-4-24 03:40

Powered by ScienceNet.cn

Copyright © 2007- 中国科学报社

返回顶部