《C#高级程序》课程标准.docx
- 文档编号:4992939
- 上传时间:2022-12-12
- 格式:DOCX
- 页数:13
- 大小:22.05KB
《C#高级程序》课程标准.docx
《《C#高级程序》课程标准.docx》由会员分享,可在线阅读,更多相关《《C#高级程序》课程标准.docx(13页珍藏版)》请在冰豆网上搜索。
《C#高级程序》课程标准
《C#高级程序》课程标准
1.课程性质与设计思路
1.1课程的性质
本课程是软件开发专业的主干课程,讲解面向对象如何在.NET平台上实现,涉及面向对象语言的三大特征:
封装、继承、多态,同时讲解了接口、泛型的使用方法。
本课程必须在C#语言基础课程《C#语言程序设计》之后开设,平行课程有《SQLServer数据库设计和高级查询》、《Java面向对象编程》等,后续课程有《Asp.NET企业级应用开发》,本课程起到承上启下的作用。
1.2设计思路
本课程的设置是根据学生就业后在程序员的工作岗位中经常遇到面向对象类的设计问题,而之前的课程体系中这部分内容讲解薄弱,故在C#基础知识讲解完毕后,将C#语言中的核心内容:
继承、封装、多态、接口、泛型等集中深入讲解形成本课程。
本课程采用了项目贯穿设计,理论课由教师示范《旅行社管理系统》项目的实现过程,教师需对知识点进行讲解并比较详细的演示知识的应用过程,让学生学习C#语言的各个知识点并模仿实现该项目程序。
上机课由教师指导学生完成游戏程序,由学生根据理论课学习到的方法独立完成这个新的项目,教师只对重点、难点或大多数学生遇到的问题进行指导讲解。
在条件允许的前提下,建议理论课和上机课均在计算机机房工作环境下进行。
学生完成《旅行社管理系统》项目后,基本掌握了各章的知识技能点,然后再完成一个综合性项目案例《新闻快客系统》,通过项目案例课将本课程所学的重要知识技能点融会贯通,运用自如,培养分析和解决实际问题的能力。
建议课程在第二学年上学期开设、总学时为90课时、学分数为6分。
2.课程目标
2.1职业能力培养目标
2.1.1总体职业能力培养目标
1)培养编程的熟练度,具有较高的工作效率;
2)培养编程的规范化,具有较高的工作质量;
3)培养良好的表达能力、沟通理解能力;
4)培养综合分析能力;
5)培养合作精神和团队开发的能力;
6)培养自学能力。
2.1.2单项能力目标:
1)学会用面向对象思想来编写程序;
2)学会使用类库进行快速开发;
3)学会使用泛型存储集合数据;
4)熟练操作XML文档;
5)学会利用面向对象思想构建自己的新闻阅读器。
2.2知识目标
1)掌握封装、继承、多态、接口、值类型和引用类型等的基本语法;
2)学会使用面向对象编程语言的三大特性:
封装、继承、多态来设计类;
3)学会使用接口、值类型和引用类型;
4)掌握文件系统操作的基本语法;
5)学会以追加、覆盖等方式读写文本文件;
6)学会文件的复制、删除、移动的方法;
7)学会目录的复制、删除、移动的方法;
8)掌握XML的基本语法;
9)学会遍历XML文档的各个元素的方法;
10)掌握泛型的基本语法;
11)学会集合的基本操作方法(遍历、查找、添加、删除、修改);
12)学会泛型集合的基本操作方法(遍历、查找、添加、删除、修改);
13)学会使用泛型接口集合IList
14)学会使用List
15)理解框架的组成及各部分之间的关系;
16)理解基础类库中各命名空间的主要用途;
17)学会使用序列化和反序列化保存对象的状态;
18)学会利用assembly类读取版本信息的方法;
19)学会利用反射机制动态创建对象的方法。
2.3职业素质目标
1)培养管理时间的能力;
2)培养吃苦耐劳的精神;
3)培养对程序设计的兴趣;
4)培养责任心、上进心、事业心;
5)培养专业、敬业、创业、诚信、务实、合作精神;
6)培养韧性和创新性;
7)培养良好的表达和沟通能力;
8)培养承受工作压力的能力。
3.课程内容和要求
本课程的内容依据.NET程序员的就业技能结构表设置。
表1就业技能和知识点对应表
就业技能
知识点
C#语言
.NET框架
理解.NET框架结构
学会框架类库的使用方法
掌握C#语言中面向对象的实现方法
掌握封装、继承、多态、接口、值类型和引用类型等的基本语法
学会使用面向对象编程语言的三大特性:
封装、继承、多态来设计类
学会使用接口、值类型和引用类型
掌握常见的文件系统操作方法
掌握文件系统操作的基本语法
学会以追加、覆盖等方式读写文本文件
学会文件的复制、删除、移动的方法
学会目录的复制、删除、移动的方法
掌握XML文件的解析方法
掌握XML的基本语法
学会遍历XML文档的各个元素的方法
掌握泛型集合的使用方法
掌握泛型的基本语法
学会集合的基本操作方法(遍历、查找、添加、删除、修改)
学会泛型集合的基本操作方法(遍历、查找、添加、删除、修改)
学会使用泛型接口集合IList
学会使用List
.NET框架
掌握框架基础类库的使用方法
理解框架的组成及各部分之间的关系
理解基础类库中各命名空间的主要用途
学会使用序列化和反序列化保存对象的状态
学会利用assembly类读取版本信息的方法
学会利用反射机制动态创建对象的方法
教师在理论课上示范完成《旅行社管理系统》项目中的各个任务,讲解知识点,实现各章知识目标。
具体各章任务和知识目标如下表。
学生在上机课根据理论知识,通过完成《旅行社管理系统》项目中的各个任务,掌握各章技能点。
具体各章任务和技能点如下表。
表2理论课和上机课《旅行社管理系统》项目各章任务、技能点分布表
章节
上机任务
训练技能点
第1章至第3章
画一张.NET框架结构图;
熟悉框架类库,能够指出不同命名空间的主要功能;
用WebClient下载网络图片;
使用Ping检测网络地址;
使用自定义命名空间组织类。
在“旅行社管理系统”中使用枚举和结构;
使用结构定义;
使用枚举给属性赋值;
理解.NET框架;
体会框架类库的好处,使用框架类库;
命名空间的使用。
常量、枚举的定义和使用;
结构的定义和使用;
理解值类型和引用类型的区别;
理解结构和类的区别。
第4章
在窗体显示“旅行社管理系统”程序的界面;
讲解并提取“旅行社管理系统”中主要对象;
创建类;
给类添加属性,在窗体访问属性;
利用方法实现图片的移动,通过构造函数创建对象;
练习使用构造函数、重载构造函数;
理解“旅行社管理系统”中的对象;
能够定义和实现一个简单的类;
能够定义和使用属性;
能够使用方法和构造函数。
第5章
扩展“旅行社管理系统”,去除类型判断,
使用继承
使用抽象方法;
使用虚方法;
练习在MySchool中实现多态;
去除调用SayHi方法的类型判断;
使用抽象方法实现SayHi。
理解多态的概念;
能够使用抽象方法实现多态性;
能够使用虚方法实现多态性;
能够使用简单工厂模式创建对象;
第6章
通过委托封装方法
定义和调用匿名方法
事件处理
对旅行团基本事件进行处理
理解委托的概念
能够利用委托进行处理
能够对控件进行事件处理
第8章
读取XML文档并绑定TreeView控件;
通过读写文本文件实现对”旅行社管理系统”的保存与读取;
使用文本文件保存;
读取文本文件。
能够使用文件流读写文本文件;
理解XML文档的作用;
能够读取XML的内容;
能够使用TreeView控件。
第9章
掌握异常处理的结构
能够进行异常的捕获和传播
熟悉使用异常的指导原则
能够对旅行社管理系统进行异常处理
理解异常的概念
能够进行异常捕获和控制
文件I/O异常处理
对系统业务异常进行处理
第10章
使用IComparable
使用IComparer
接口作为方法参数;
接口作为返回值;
实现自定义接口;
使用接口技术实现必杀技;
实现接口对象的使用。
理解接口的概念;
能够实现IComparable
能够实现IComparer
理解接口作为方法参数,作为返回值的意义。
第11章
使用泛型集合维护信息;
使用泛型List
对泛型集合进行添加、删除、访问操作
对泛型集合进行遍历;
扩展“旅行社管理系统”存储多个对象;
使用泛型存储多个对象;
对泛型集合进行添加、删除、访问操作;
对泛型集合进行遍历。
理解泛型集合的特性;
能够使用泛型集合List
能够使用泛型集合Dictionary
补充
使用序列化和反序列化对“旅行社管理系统”;进行保存和读取;
使用序列化保存对象;
使用反序列化读取对象;
完善“旅行社管理系统”;
使用反射进行版本升级;
使用ILDasm查看MyGame.exe;
使用反射技术实现版本升级。
理解序列化与反序列化;
能够使用序列化和反序列化存取对象;
能够反射的概念;
使用反射读取应用程序的信息。
第13章
学习使用高级Windows控件
能够进行绘图和打印操作
对旅行社管理系统进行完善
掌握高级Windows控件的使用
能够对项目案例进行绘图和打印
项目案例:
三层结构
学习软件架构
使用三层架构完善旅行社管理系统
掌握软件架构体系
能够熟练使用三层结构建立软件项目框架
学生在上机课完成《旅行社管理系统》项目,掌握各章技能后,再完成一个综合性项目案例《新闻快客阅读器》,具体任务和技能点如下表。
表3项目案例课《新闻快客阅读器》项目各章任务、知识目标分布表
章节
每章任务
每章目标
1
展示本课程要完成的项目:
新闻快客;
实现网络图片下载功能;
用ping检测一个网络地址是否有效。
理解.NET框架的组成及其基本工作原理;
了解.NET框架与C#的特性;
理解类库中各个命名空间的主要用途;
回顾并加深理解命名空间。
2
“新闻快客”功能介绍;
设计RssFeed类框架,保存频道;
基本信息和文章列表。
理解类与对象的概念;
理解属性和方法的概念;
能够定义一个简单的类。
3
分别用结构和类实现Student对象。
熟练掌握常量、枚举、结构的使用;
理解值类型与引用类型的概念;
理解值类型与引用类型作为参数时的区别。
4
使用集合实现班级的学员列表;
理解和使用泛型;
List
List
Dictionary
理解集合的概念;
熟练使用集合访问数据;
理解泛型概念;
熟练使用各种泛型集合。
5
实现动态获取文章列表的功能;
实现频道添加和保存功能;
通过读写文件来实现。
掌握文件的读写;
理解新闻阅读器的工作原理;
掌握XML文件的元素读取。
6
用继承方式实现RSS/Atom两种频道文件格式的支持;
提供具备频道修改/查看功能的右键菜单。
理解继承的概念;
掌握继承使用方法;
能够利用继承建立父类和子类。
7
去掉获取文章列表功能中的多余判断;
重写StudentEquals虚方法解决前面章节遗留问题;
利用工厂模式自动识别RSS与Atom格式。
理解多态的概念;
理解抽象方法和抽象类;
了解简单工厂设计模式的应用;
理解虚方法与抽象方法的区别。
8
为新闻快客提供不同的频道排序功能;
理解接口的概念。
熟练使用接口。
理解接口作为返回值和参数的意义。
理解接口和抽象类的区别。
9
完善我们的“新闻快客”阅读器;
实现配置文件的保存和读取。
理解序列化/反序列化概念;
能够使用序列化/反序列化保持和恢复对象状态;
理解反射的概念;
理解程序集的概念。
4.实施建议
建议课程在第二学年上学期开设、总学时为90课时、学分数为6分。
每一章理论课对应两次上机,完成一章的上机总目标。
4.1教材或参考资料选用
4.1.1教材选用及编写
郑宇军编著.《C#面向对象程序设计》.人民邮电出版社,2009年6月.
4.1.2参考资料选用
北大青鸟ACCP课程体系专用教材:
《深入.Net平台和C#编程》徐袛祥主编科学技术文献出版社,2008年1月。
4.2教学建议
4.2.1教学条件和环境
根据软件专业程序设计课程的特点建议将理论课和实验课、实训课均安排在计算机机房进行。
这就对机房有更高的要求:
1)必须配置服务器,用来存放教师提供的素材以及所有学生上机完成的作业内容。
2)必须配置教师机,供教师示范操作使用。
3)必须实现全部计算机联网并按照多媒体教学广播软件,教师可将示范的内容通过广播软件显示在学生机的屏幕上,使用投影仪会影响后排学生的观看效果,并且造价太大。
4)必须提供学生自由上机的时间,软件开发需要大量的课余时间进行练习,提供一个学习的环境。
根据学生人数较多的实际情况,目前班级总人数一般在40-60人左右,可以根据学生的层次将学生分成多个组,每组配备一个学习较好的学生作为组长,协助教师对学习进度较慢的学生进行重点指导。
将来在条件允许的前提下应该将每个班级的人数控制在20左右,以便教师更好的进行辅导。
4.2.2本课程在教学方法上的特殊性。
本专业课程采用多模式教学法,实施具体要求如下:
1)理论课
a、必须在每章理论课前组织学生背诵、听写本章单词,达到学生能默写本章基本单词、认识扩展单词和难点单词;
b、对于第一学年的学生,必须要求学生课下手抄代码,背诵经典代码(如求最大值、最小值、冒泡排序等);
c、从上第一门课开始,必须要求学生全部提交作业,每班的作业每次批改量不得低于全班总数的1/3;应该通过批阅学生代码提高学生编码规范性;
d、作业完成率是指提交作业并且达到70分的学生数和参加授课的学生总数的比率。
重点章节的作业完成率不得低于85%。
2)上机课
a、上机课必须使用投影仪播放上机教学PPT,进行阶段控制;
b、上机课必须使用机房控制软件控制学生用机;
c、上机课必须先讲解本次上机的目标、演示上机要完成的效果,确保学生明确本次上机的目标和任务;
d、对于基础较差的学生,课上没完成的上机任务必须要求学生课下完成,以作业的形式提交,确保不影响学生下次上机;
e、上机课必须采用任务分解、阶段控制的方式进行实施,每阶段控制在5~25分钟;
f、指导阶段重点应该放在实现思路分析和难点分析,不允许简单地提供代码;练习阶段应该及时发现问题,确保阶段完成率;
g、重点章节必须保证至少85%(含)的学生可以完成所有阶段(包括课后完成,以作业方式提交的);
h、由于多数上机内容采用案例贯穿的形式,任课教师必须要求学生将每次上机的结果在项目服务器中备份;
i、必须在上课前将上机、项目素材(图片、项目要求提供给学生的代码等)下发给学生,避免影响学生完成进度;
3)项目案例课
a、必须在讲解需求前,让学生明确项目案例课的意义,调动学生积极性;
b、讲解需求时应该演示最终效果,明确讲解需求;
c、在问题分析和难点分析时应该使用提问、设问教学技巧,让学生充分参与,增强学生分析问题和分解问题的能力;
d、必须明确并强调每个阶段的任务和时长,树立学生的时间观念和紧迫感。
通过检查,记录阶段完成情况督促进度;
e、应该根据班级情况合理划分阶段,在规定课时内完成整个案例;
f、必须记录学生成绩。
4.3其它说明
本课程适用专业:
软件技术专业。
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- C#高级程序 C# 高级 程序 课程标准