关于探索方案教学在.NET课程中探索与实践要求

更新时间:2024-02-29 点赞:5380 浏览:14357 作者:用户投稿原创标记本站原创

摘要:“.NET技术”是一门实践性较强的课程,传统授课方式难以达到理想的教学效果。文章以西北农林科技大学“.NET技术”课程为示例,探讨了应用案例的内容,以及相同案例不同解决方法在课程中的使用。以案例教学为主要教学方法,结合多种教学手段,教学效果良好,教学质量稳步提高。
关键词:.NET;案例;教学;课程改革
1674-9324(2013)36-0177-02
《.NET技术》课程是软件工程专业计算机应用方向的必修课程,其授课目标是让学生了解什么是Microsoft.NET,其工作原理,掌握.NET环境下的代码编写(C#)及执行方法、WinForm应用程序设计、基于ASP.NET构建Web应用程序和Web服务。案例教学作为一种教学方法在国外有悠久的历史,近几年在我国也被逐渐应用到各类课程中,其目的主要在学生掌握了有关基础知识和分析技术的基础上,根据教学目的和教学内容的要求,运用典型案例,将学生带入特定事件的现场进行案例分析,学生独立思考或集体协作,进一步提高识别、分析和解决某一具体问题的能力,同时培养学生正确的学习方法、良好的工作作风、较强的沟通能力和团队协作能力的教学方式。目前,绝大多数高校的软件工程专业都开设了.NET的相关课程,对于已经有C语言、C++或者Ja基础的学生,在.NET课程中如何根据课程特点,使得教学效果得以提高是本课程教学改革的重点。
本文就.NET课程各部分内容采用的案例进行探讨,以期能够通过案例增强学生学习兴趣、提高动手能力、缩短从理论到实际开发之间的距离。

一、更新教学内容,精心设计课堂案例

微软在2000年发布.NET,在12年间,.NET经历了1.0、1.1、2.0、3.0、3.5、4.0,.NET技术得到了越来越多的开发者的认可和推崇,成为计算机专业、软件工程专业的专业课程。当然微软在.NET上的更新速度也是非常的快,尤其伴随着Windows 8、Visual Studio 2012和.NET Framework 4.5的发布,微软在操作系统及其开发语言上做了很多重大的改进,因此本课程的教学大纲、教学内容也随着每一个版本的发布在一定程度上进行修订和改进。目前该课程上课和实习可按38/18或32/12进行分配。案例教学中的案例要求具有真实性、完整性、典型性和启发性,针对目前使用的Visual Studio 2010为开发环境,以C#为开发源于:论文致谢范文www.618jyw.com
语言,教学主要内容及相关案例如下:
1.语言基础。语言基础中,变量、关键字、表达式、运算符、条件语句、循环语句等与C语言、Ja语言等基本一致的内容,因此本部分主要是课堂调试常用程序。常用案例及作用如下:(1)限定输入字符(文本框中只能输入1~10和小数点、负号)。使学生能够熟悉条件语句的书写规则、Keypress事件的使用方法、事件的Handled和KeyChar属性、字符串IndexOf方法;(2)滚动字幕。使label控件从窗体一侧缓慢滑动到另外一侧,编写成功后,改写为左右摆动。目的是使学生理解Timer控件的使用方法、属性的作用、控件的Width和Left属性(Width、Top和Left是可读可写,Bottom和Right是只读)。结合Timer控件的简单应用,讲授窗口抖动的基本原理,使得学生在接触到.NET之初就能够产生浓厚的兴趣。窗体抖动的程序还可以改写为线程控制或委托、事件结合的方式,因此窗口抖动可以在多线程、委托和事件的知识点中再一次出现,将一个案例多种实现方法展现给学生,使他们能够更加灵活地运行.NET的知识。(3)计数器、输出格式限制、里程表(九九乘法表)。使学生熟悉三种常用循环语句的写法、应用场合。计数器主要是利用循环来计算阶乘、累加、计数。输出格式主要是用循环来控制输出数字(符号)的数量、位置。里程表主要使学生熟悉掌握循环嵌套、循环输出控制。这三个例子足以使学生掌握循环及输出位置控制。(4)猜数字、最大公约数和最小公倍数、对称数。猜数字是随机长生一个1~100的随机数,用户可以猜8次,没有猜对则提示用户是大了还是小了。该案例首先通过文本框输入,消息框弹出提示信息,让学生学会使用随机数的产生、循环,然后采用多窗体的调用方式,自定义一个对话框,弹出并可输入所猜数字,讲授多窗体调用的方法。最大公约数和最小公倍数的案例主要是结合“猜数字”案例中的对话框,输入所求数值,根据定义求解,分析该问题,介绍辗转相除法,利用该方法获取结果,使学生熟悉多窗体调用,取余等。对称数是为了引出数组,第一个解决办法是常用的按位取余,逆序重排后进行对比,该方法复杂、易出错;引出第二个解决方案,通过字符数组,使数字转换为字符,进行对比,获得结果,对比字符串Equals()和运算符==的区别并通过该例引出并讲解数组。(5)计算属相和每月天数。建立属相数组,通过输入的年,来计算属相,目的是熟悉数组的使用;结合该例,引出如何计算每月天数,实际就是如何判断2月的天数,修改程序,利用该案例引出属性、索引器的使用。(6)窗口抖动。用多国语言说话的经典示例,引出委托,利用之前用Timer控制的窗体抖动程序,使用并操作委托,同时当窗口抖动时产生一个事件,发出声音。(7)图形类库。创建图形类库,派生矩形类、多边形类、圆类,构造调用方法,对比private、protected、public和internal的区别;引入Sealed,new,讲解其功能;在此对比virtual、abstract与override的区别。
2.WinForm。WinForm编程最大的特点就是可以快速、高效的做出和Windows应用程序非常相似的界面,本部分是课程的重点之一,难点也比较多,采用的部分案例及作用如下:(1)窗体透明度渐变。用Timer控制Form的Opacity属性,引出Text、Icon、AcceptButton、CancelButton、BackColor、BackGroundImage、BackGroundImageLayout、WindowState等属性。(2)Word界面。仿照Word界面,利用MenuStrip、ToolStrip、StatusBar、SpliterContainer、ContextMenuStrp、TextBox、RichTextBox、Combobox、CheckBox、RadioBotton、GroupBox、ColorDialog、FolderBrowserDialog、FontDialog、OpenFileDialog、SeFileDialog、ProgressBar控件,讲解对应的属性、事件,设计为MDI窗口,并读写文件(FileStream、StreamReader和StreamWriter类的使用方法)。(3)资源管理器。仿照资源管理器窗口,讲授ListView和TreeView控件,引入File、FileInfo、Directory类、使用相关属性和方法,显示文件夹的属性结构和相关信息,其中文件路径引入@符号的使用。3.数据库。NET数据库的访问架构是ADO.NET(ActiveX Data Objects),是数据库应用程序和数据源之间沟通的桥梁。.NET数据提供程序的主要核心对象包括:Connection、Command、DataReader、DataAdapter、Dataset、DataTable。采用案例及作用如下:(1)用户登录。界面包括了用户名、、部门、提示(忘记)、创建用户四个部分,该案例很具有针对性,且包含了查询、插入、更新全部内容。(2)登陆后数据查询。包括两个窗体,分别调用。一个窗体是用文本框、标签和按钮配合,文本框绑定数据源,达到查询的目的;另外的窗体加上DataGridView,也可以完成查询,并且可以模糊查询、按出生时间段查询等。案例中多次用到数据库的查询、修改操作,引出如何封装数据库操作的类。
4.多线程、套接字。(1)窗体抖动。修改前面的窗体抖动案例,控制线程睡眠时间,达到窗口抖动的效果。使学生了解进程与线程的区别同时引出多线程应用程序。(2)局域网聊天工具。基于Socket编程技术,完成服务器与客户机端的通信,多个用户连接时,创建多个线程,完成相应的消息通讯。
5.ASP.NET。(1)用户登录。同数据库类,界面包括了用户名、、部门、提示(忘记)、创建用户、验证码五个部分,分别介绍控件的使用方法,同时关联数据库。(2)登陆后数据查询。使用GridView控件,让学生了解该控件的常用属性、分页显示方法、编辑修改与数据库的关联方法。

6.选讲。根据学时数,可适当增加XML、WPF、WCF、LINQ、WP7的内容。

7.综合案例。(1)饭卡管理系统(WinForm)。通过对饭卡的管理,与数据库结合,完成学生饭卡管理的过程。(2)研究生管理系统(ASP.NET)。以研究生管理系统作为案例,根据不同部门、不同用户的需求,完成动态网站的建设。全面介绍ASP.NET的工作原理,IDE的使用方法,借用数据部分讲过的用户登录和登陆后的查询,增加验证控件、GridView控件,使学生对后台操作更加了解。
为了达到更好的教学效果,案例通常都是在课堂上编写完成,但其中的部分案例只需要引入关键部分,剩余部分直接讲授源代码,给学生课后复习和巩固的机会,没有必要在课堂上完全编写。当然也可以节省课时,将时间放源于:本科www.618jyw.com
在部分难点、重点上。

二、针对课程重点和难点,经典案例上机试验

程序设计课程对动手能力的要求非常高,合理设计上机实习内容对学生掌握课程非常重要,每次实习前给学生案例的部分代码并布置实习作业,在上机前了解基本原理和要求,实习时添加代码完成实习内容,然后完成布置的作业。实习内容均为已经成熟,且应用较广的软件为对象,进行编写。主要实习作业如下:
1.吃豆子游戏。设计豆子类,其中包括了出现的位置等属性,消失等方法,该例子主要是练习类、对象、继承、多态、绘图。
2.IE浏览器。仿IE浏览器,完成浏览器的设计。该例子主要是练习WinForm编程方法及常用控件的使用。
3.事件提醒器。要求能够输入在制定日期和时间提醒相应的事情。该例子主要练习委托、事件、泛型。

4.聊天系统设计。要求完成局域网聊天系统的设计。该例子主要练习多线程、套接字。

5.学生信息管理系统。访教务学生管理系统,完成学生信息管理系统,系统能够查询成绩、查看课表、评教等工作。该例子主要练习ASP.NET、数据库。
实习前的准备和了解对学生非常重要,如果学生能够在实习前就对实习作业有多了解,甚至知道如何编写,那么实习作业的完成会非常顺利,学生知识的掌握效果会非常好。因此实习作业是在课程开始前布置。同时,课堂案例在讲授时要与实习内容结合,引导或启发学生对类似问题的该如何进行处理。实习的过程是以案例为驱动的,通过实习案例提出问题,通过课堂案例来解决问题。

三、改革考试方法,注重能力考核

.NET课程注重实际动手操作能力,因此考核方式有原来的考试变为考核。平时作业的完成为主要考查项目,实习、实验的成绩在考试成绩中占主要部分,同时如果课时允许,可以将学生分组,安排布置大作业,在最后一到两次课上让学生进行演示和讲解,也可以选择优秀作品进行展览,让学生体会成就感。最终根据学生实习、实验、综合实习作业完成的质量给定分数,使学生能够在该门课程上学到知识、提高水平、锻炼能力。
经过对近三年的案例教学实践,对案例进行不断的修改和完善,案例教学方法在《.NET技术》课程教学中逐渐成熟。案例教学方法能够使学生较好、较快地掌握所学知识,在教学和实习中的应用效果好,当然在讲授过程中,其他方法也要融合进来,如讨论解决方案法,课程之间、前后知识之间的横纵向比较法等。当然与学生的互动也显得尤为重要,互动过程中的启发,是达到教学效果的必要手段,授课过程中,注意学生的反应,使学生能够全面吸收并掌握。在实际教学中,综合应用多种教学方法,注重树立学生主体地位,帮助学生养成良好的学习态度与学习习惯,利于提高教学质量。
参考文献:
张家军,靳玉乐.论案例教学的本质与特点[J].中国教育学刊,2004,(1):48-50,60.
张继学.案例教学及其在国内的发展现状[J].职业教育研究,2004,(11):60-61.
[3]高进云,胡伟艳,乔荣锋.资源环境与城乡规划管理专业土地利用规划学课程案例教学实施探讨[J].高等农业教育,2011,243(9):80-82.
[4]常梅,董英茹,王法胜..NET程序设计案例教学中金字塔式课程设计模式探讨J].知识库,2012,(8):40-43.
[5]李天平..NET深入体验与实战精要[M].北京:电子工业出版社,2009.
[6]彭佳红,彭佳文,曹晓兰.基于案例的软件工程课程教学研究[J].高等农业教育,2009,211(11):60-62.
基金项目:西北农林科技大学教改基金项目(.NET程序设计课程教学模式创新研究与实践,JY1102076),陕西高等教育教学改革研究项目(校企联合软件工程专业建设与实践,11BY10),西北农林科技大学优质课程资源建设项目(面向对象系统分析与设计)
作者简介:张宏鸣(1979-),男(蒙古族),内蒙古赤峰人,讲师,主要从事网络计算技术与GIS研究。
通讯作者:李书琴(1965-),女,陕西澄城人,教授,硕导,主要从事计算机应用技术方向的研究。
相关文章
推荐阅读

 发表评论

共有3000条评论 快来参与吧~