《程序设计与算法(C#)二》课程教案一、课程说明1、课程代码: 0404832、总学时数: 64 ,其中理论环节学时数: 32 ,实验实践环节学时数: 363、学分: 6分4、适用专业:计算机应用技术5、本课程的性质、地位和作用本课程是计算机应用技术的一门重要的编程类专业课。
C#语言是针对网络技术应用而开发的语言,课程的主要教学内容以应用为主,以语法介绍为辅,主要包括C#语言基本语法、面向对象编程方法,C#开发Windows应用程序,C#开发Web应用程序等。
本课程的先修课是计算机应用基础或C语言,后续课程是基于C#的Web应用程序设计。
本课程是软件工程、信息系统开发、开发工具等课程的前驱课程。
《程序设计与算法(C#)》采用CAI课件,在多媒体教室讲授。
使用多媒体技术可以提高授课效率,可以现场运行、修改例子程序,实现直观教学,提高授课效果。
本课程以从实际应用出发,集应用与原理于一体,两部分内容互相联系,又各有侧重,力求做到理论联系实际,用理论来指导实际应用。
二、教学基本要求1、本课程的目的、任务课程的教学目的是培养学生使用NET平台开发桌面及网络应用程序的能力。
教学任务是让学生掌握C#语言的基本知识与技术,理解并树立面向对象的程序设计思想,培养运用Visual C#开发工具进行编程的能力。
2、本课程的教学要求课程的要求是培养学生面向对象编程的思想和能力及素质,为以后学习其它面向对象的编程语言打下坚实的基础。
本课程是一个实践性非常强的课程,要求学生要注重实践,在掌握C#语言的基本语法后,重点应放在提高编程能力的训练上。
主要教学方法与手段采用面课堂讲授与实习相结合;多媒体教学与传统教学相结合。
三、学时分配四、大纲具体内容(一)课程教案内容(根据实际安排,本课程《C#技术基础》一书分两学期上。
)第四章 C#面向对象程序设计基础(类的继承)【本节教学目的、要求】:让学生理解面向对象程序设计的概念和基本特征,学生能够熟练运用类定义、对象创建和使用对象的方法,类的成员及作用域,能设计多个具有层次结构的类,示范类的继承。
【本节教学重点、难点】:重点:类的和对象定义、类的成员的访问及作用域。
难点:类的继承,子类的创建,base与this的使用。
【本章主要教学要点、分配学时】:第一节:面向对象的基本概念、基本特征(0.5学时)第二节:子类的创建,类的继承规则,base与this的使用(1.5学时)【本章节实验、实训、或作业、练习、思考题】:实验:用面向对象的方法实现一个小学生“十以内数的加减乘除学习器”,提示用随机函数出题,由用户输入运算结果,程序判断对错。
思考题:1、什么是类,什么是对象?在C#中如何创建类,如何使用对象。
2、什么是继承,如何实现类的继承?第五章面向对象高级编程【本章教学目的、要求】:理解接口、委托和事件的概念;运用接口的定义、声明与实现方法,示范使用接口实现多重继承,运用委托与事件实现对象之间的信息安全传递;理解多态的概念,运用方法重载、方法重写以及抽象类和抽象方法实现类的多态;能够运用命名空间管理应用程序。
能够实现运算符的重载。
【本章教学重点、难点】:重点:利用接口实现多重继承、利用委托在事件之间实现信息传递难点:方法的重载、类的多态,运算符的重载【本章主要教学要点、分配学时】:第一节:接口、委托与事件;(2学时)第二节:方法重载、方法重写、抽象类与抽象方法;(2学时)第三节:运算符的重载;泛型(2学时)第四节:命名空间(2学时)【本章节实验、实训或作业、练习、思考题】:实验:用接口实现多继承,设计一个给小学生的“10以内的整数的加减乘除学习器”,出题由用户输入运算结果,程序判断对错。
思考题:1、在C#中如何创建接口、委托与事件?2、什么是多态,如何实现重载和重写?第六章窗体与常用控件【本章教学目的、要求】:掌握窗体的常用属性、事件和方法;常用控件的共有属性、事件和方法,区分常用控件的特有属性、事件和方法。
能够熟练运用Visual C#2005开发环境操作应用程序窗口以及窗口中的控件、窗口之间的调用;能够根据用户需求灵活运用标签、文本框、命名按钮、单/复选按钮、列表框等常用控件,设计用户应用程序窗口界面,编写代码实现控件属性设置、事件处理。
能够编写简单的Windows Form应用程序,实现程序的基本功能。
【本章教学重点、难点】:重点:窗体的常用属性、事件和方法;标签、文本框、命名按钮、单/复选按钮、列表框等常用控件的属性,使用,编写代码实现控件属性的设置,事件处理。
难点:标签、文本框、命名按钮、单/复选按钮、列表框等常用控件的属性,使用,编写代码实现控件属性的设置,事件处理。
【本章主要教学要点、分配学时】:第一节:创建窗体;窗体的属性、事件、方法;窗体中控件的操作;窗体的基本操作。
(1学时)第二节:Label、TextBox与Button控件;(1学时)第三节:RadioButton、CheckBox与GroupBox控件;(0.5学时)第四节:列表框控件(0.5学时)第五节:PictureBox、Timer、DataTimePicker控件。
(1学时)【本章节实验、实训、或作业、练习、思考题】:实验:制作一个学生选课系统,系统由两个窗体组成,一个窗体作为系统登录界面,另一个窗体用来完成学生选课。
思考题:1、Windows窗体有哪些常用属性和方法?向窗体中添加控件的方法有哪些?2、组合框有几种类型?每种组合框有什么特点?第七章窗体界面高级编程【本章教学目的、要求】:学生能够理解窗体界面设计的原则,能够运用MenuStrip等菜单控件设计实现应用程序窗体主菜单、快捷菜单、编写菜单事件的处理代码,实现菜单功能;运用工具栏与状态栏控件设计实现应用程序窗体的工具栏和状态栏,编写菜单事件处理代码,实现工具栏和状态栏按钮功能。
并能实现应用程序的MDI窗体。
【本章教学重点、难点】:重点:运用MenuStrip等菜单控件设计实现应用程序窗体主菜单、快捷菜单、编写菜单事件的处理代码,实现菜单功能;运用工具栏与状态栏控件设计实现应用程序窗体的工具栏和状态栏,编写菜单事件处理代码,实现工具栏和状态栏按钮功能难点:编写菜单事件处理代码【本章主要教学要点、分配学时】:第一节:窗体界面设计概述(0.5学时)第二节:主菜单、快捷菜单的设计(1.5学时)第三节:工具栏、状态栏试设计,设计可依靠的菜单和工具栏(2学时)第四节:创建MDI应用程序。
(2学时)【节实验、实训、或作业、练习、思考题】:实验:制作教学管理系统软件的主界面,要求加入工具栏和状态栏,工具栏按钮与菜单命令对应,状态栏显示系统时间、工具按钮提示、当前子窗体状态等信息。
思考题:1、常见的用户界面有几类?设计用户界面的基本原则是什么;2、如何创建下拉式菜单和弹出式菜单、工具栏和状态栏。
第八章文件与对话框【本章教学目的、要求】:学生能够利用文件管理控件编写文件资源管理程序;运用Directory类实现文件夹创建、删除和设置等操作;熟练运用File和FileInfo类实现文件管理程序;运用FileStream类、StreamReader类和StreamWriter类编写文件读写程序;能够运用对话框类编写调用通用对话框应用程序;运用打印对话框类编写打印程序;能够设计简单的文件管理、读写、打印程序。
【本章教学重点、难点】:重点:文件资源管理程序的编写;文件的创建、删除和设置的操作;难点:通用对话框应用程序、打印程序的编写【本章主要教学要点、分配学时】:第一节:DriveListBox、DirListBox、FileListBox控件(1学时)第二节:文件夹的创建、删除、查看和设置文件夹信息(1学时)第三节:文件的管理、读/写操作(1.5学时)第四节:通用对话框的设计(1学时)第五节:打印、设置类对话框(1学时)第六节:自定义对话框(0.5学时)【本章节实验、实训、或作业、练习、思考题】:实验:1、创建教材图8-26所示的带有工具栏和状态栏的文本编辑器、实现文本编辑器菜单中所有菜单项的功能,要求菜单功能与Windows应用软件相关的菜单功能相同或相近,符合用户的操作习惯。
2、在实验1的基础上,实现工具栏按钮的功能与菜单项对应,状态栏上显示系统时间和当前操作的命令。
思考题:1、如何获取文件的属性信息?2、如何创建和使用通用对话框?第九章数据库编程基础【本章教学目的、要求】:了解数据库系统、关系数据库的概念,了解中Connection、Command、DataReader等对象的常用属性与方法;熟练运用Connection、Command、DataReader、DataSet、DataTable、DataColumn、DataAdapter等对象编写数据库连接类,实现数据库应用程序的三层结构。
掌握DataGridView控件的使用。
【本章教学重点、难点】:重点:Connection、Command、DataReader、DataSet、DataTable、DataColumn、DataAdapter等对象的常用属性和方法的使用。
难点:数据库连接类的编写。
【本章主要教学要点、分配学时】:第一节:数据库系统的概念、关系数据库的概念、常用SQL语句(0.5学时)第二节:基础:Connection、Command、DataReader、DataSet、DataTable、DataColumn、DataAdapte对象(1.5学时)第三节:数据绑定(1.5学时)第四节:建立报表、浏览和打印报表(0.5学时)【本章节实验、实训、或作业、练习、思考题】:实验:1、利用常用对象编程、利用绑定控件、报表控件等进行数据的绑定。
2、创建一个学生信息管理系统,具体要求见教材P281思考题:1、简述访问数据库的基本步骤、如何创建和使用对象访问数据库第十章 Web服务、程序调试和异常处理【本章教学目的、要求】:创建和访问Web服务,运用Web服务与DataSet对象,二进制文件、Session对象等实现数据和用户状态的传递;运用程序调试方法排除程序错误;运用异常处理方法处理应用程序异常。
【本章教学重点、难点】:重点:运用Web服务与DataSet对象,二进制文件、Session对象等实现数据和用户状态的传递难点:运用程序调试方法排除程序错误;运用异常处理方法处理应用程序异常。
数据库连接类的编写。
【本章主要教学要点、分配学时】:第一节:Web服务基础(0.5学时)第二节:Web服务和DataSet、Web服务和二进制文件、Web服务和应用程序状态(0.5学时)第三节:程序错误类型和程序调试(0.5学时)第四节:异常处理(0.5学时)【本章节实验、实训、或作业、练习、思考题】:实验:1、Web服务与错误调试思考题:1、什么是断点,断点有什么作用?如何给程序设计断点?(二)实验课程教案内容实验一面向对象的程序设计一、实验目的1、掌握类和对象的创建及使用方法2、掌握类继承的方法3、掌握类多态的实现二、实验内容用面向对象的方法实现一个小学生“10以内数的加减乘除学习器”,提示用随机函数出题;由用户输入运算结果,程序判断对错。