程序设计类参赛作品的设计与制作
作品形态界定
《全国中小学电脑制作活动指南》 ——“ 以各种计算机程序语言编写的具有较为明确的设计思想、贴近作者学习生活的程序软件或游戏软件 ” 。
项目特点
¨ 一般程序设计竞赛( NOI / IOI 、 ACM )
– 给定问题
– 在特定场地、规定时间内
– 设计算法、编写程序、求解结果。
¨ 本项目
– 不指定问题(学生在平时的学习、生活和实践中自我寻找、发现要解决的问题)
– 在较长的时期内
– 设计算法、编写程序,使问题得到解决。
两种项目区别
前者须要参赛者个人独立完成,而后者则允许作者在整个过程中得到别人的指导和帮助;
前者需要学生有较高的算法设计和编写程序水平,而后者参赛的学生不但要有较高的算法设计和编写程序水平,还需要有软件开发、软件生产的整体思想和实际能力。
选题特点
¨ 多样化、贴近学生生活
– 辅助学习类(数学、物理、化学等)
– 益知游戏类(棋类、魔方等)
– 管理系统类(成绩、运动会管理等)
– 软件工具类(计算器、编辑器等)
– 其它生活类(海洋世界、长城等)
作品制作特点
¨ 科学、完整、符合产品化要求
– 有专用的安装程序
◇ 倡导 “ 绿色 ” 软件
◇ 应提供必要的卸载工具
– 界面设计规范
– 注意 “ 提示帮助、日积月累 ” 等细节
– 设计文档齐全
– 配合学术论文
工具和环境
¨ 程序设计语言
– Visual Basic
– Visual C++ (或 Delphi 、 Pascal )
¨ 操作系统环境
– 主流: Windows ( 98 、 2000 、 XP )
– 少数: Linux 、 DOS
¨ 数据库和网络
– Access 、 SQL Server
– 支持 TCP/IP 网络协议
程序设计类作品参赛常见问题
– 作品设计制作时发生的问题
– 作品评测安装时发生的问题
– 作品评测运行时发生的问题
– 评委评审中出现的问题
作品设计制作时发生的问题
¨ 找不到一个比较合适的选题
¨ 可供参考的资料常常不是很多
¨ 受到客观条件限制,发挥不出最好的水平
¨ 不太容易找到 “ 高人 ” 给以指导
¨ 有时不能够得到别人的充分理解
作品评测安装时发生的问题
¨ 缺少必要的说明,有些设置无法进行
¨ 带有计算机病毒,安装不能完成
¨ 缺少必要的安装程序或是某个程序模块
¨ 运行环境不能满足软件的要求
作品评测运行时发生的问题
¨ 屏幕显示的分辨率不对,往往屏幕空间没有利用或是有些信息显示不了
¨ 屏幕显示出语法错误信息
¨ 缺少必要的说明,不知道如何操作
¨ 没有提供试运行的数据
¨ 运行过程时间较长,但无法临时中断
¨ 人机交互界面繁杂,颜色搭配不合理
¨ 屏幕菜单设计不合理
¨ 运行结果不易观察和了解
评委评审中出现的问题
¨ 不能完全反映信息技术教育的成果
¨ 评委自身的知识和评价手段的局限性
程序设计类作品制作中值得注意的几个方面
– 要反复检查测试和试运行
– 对运行环境不要太苛刻要求
– 要及时地查杀计算机病毒
– 要按照程序设计的规范去做
– 要选择合适的、有意义的选题
– 要学会撰写程序设计说明文档
– 教师的指导要恰当
要反复检查测试和试运行
设计、制作完成以后的作品一定要设置适当的测试点,反复地进行检查、测试和试运行。
对运行环境不要太苛刻要求
所有的程序都应编译成可执行文件并同时提供编译前的源代码文档。源代码文档应转换成纯文本格式,以便于评测人员打印和阅读。
计算机病毒对此项活动作品评比的影响不小。如果在作品的制作过程中不幸感染了计算机病毒又没有及时查杀,会使程序调试屡屡失败,有时甚至使得辛辛苦苦取得的一点成果毁于一旦。
要按照程序设计的规范去做
要想做成一个好的作品、一个优秀的软件,程序编写者就需要学习关于软件危机和软件工程的一些概念,学习面向对象方法学的一些知识,学习软件工程的一些规范,学习项目管理的一些做法。
要选择合适的、有意义的选题
一个合适的选题对于作品的成败至关重要。好的选题应该是努力体现中小学生的学习生活,积极反映当前的社会热点,尤其是程序设计类的作品在选题方面还应鼓励高中学生利用自己掌握的知识积极参与科学技术攻关、为社会和生产实际服务。
要学会撰写程序设计说明文档
1 .程序说明文档首先应该介绍本程序是什么,用来解决什么问题
2 .接下来应该说说本程序的创作思路
3 .然后谈谈你的作品中所用的技术及算法特点
4 .说出你的程序的特点、特性及创新之处
5 .对素材的来源作一些介绍,说清楚这些素材的出处,在你的程序中被采用的情况
要学会撰写程序设计说明文档
6 .谈谈你的作品中目前还存在有哪些问题
7 .有足够的演示 ( 测试 ) 用的数据并公布在此
8 .要提供整个程序的流程图
9 .还要提供整个程序的源代码
10 .应该提供详细的程序运行操作说明
教师的指导要恰当
学生制作作品时,教师应清楚自己的角色,辅导要 “ 到位 ” ,不能 “ 越位 ” ,尤其不能 “ 越俎代庖 ” ,不能 “ 揠苗助长 ” 。
2004 年优秀作品案例
¨ 星光飞扬软件
– 天文观测, C++ 语言设计, OpenGL 作 3D 处理
– 模拟站在地球上任何地点看星图
¨ Programming Flow Chart
– VC++ 开发,将流程图转化为程序代码
¨ 公交换乘查询系统
– Delphi 语言设计, TXT 文本数据库
¨ 超级 24 点
– Visual foxpro 编程,不同难度等级数学训练
2005 年优秀作品案例
¨ Student Controller 套件
– MS .net 开发,计算机机房对学生机进行控制
¨ 海洋世界学习系统
– 数据库编程,提供海洋生物学知识库
¨ 青少年心理咨询管理系统
– VB + Access 编程,对学生进行心理咨询和诊断
¨ 电荷 . 场
– VC 编程,观察电荷、电场特性
程序设计类作品的发展趋势
1 .结合信息技术教育、结合课程改革,反映研究性学习的成果。
2 .在技术水平方面不断提高,高起点、高难度的作品频频出现,敢于向权威发起挑战。
3 .软件的完整性越来越好,有些作品与商品化的软件已经相差无几。
4 .通过活动的开展,发现一批在程序设计方面有特长的学生,使他们有机会脱颖而出。