《C#面向对象程序设计》课程教学基本要求
课程代码:040508 总学时:102 (其中实训学时:50 ) 总学分:6
一、课程定位
《C#面向对象程序设计》是软件技术专业的一门专业基础必修课程。 主要对学生进行基础性的、面向对象的WinForm程序设计训练,为学习后继课程做好铺垫,同时也为今后开发软件打下良好的基础。
主要讲授C#程序设计语言基础、面向对象程序设计、控件及组件、文件管理、网络通信基础、ADO.NET数据库编程基础等常用软件开发技术。
其前导课程为《计算机应用基础》、《C语言程序设计》和《SQL Server数据库》等,其后继课程是《ADO.Net数据库项目开发》、《ASP.Net程序设计》和《手机程序开发(Windows Mobile平台)》等。
二、职业能力要求
1. 掌握面向对象程序设计基础;
2. 应用C#进行WinForm程序开发的能力。
三、学习目标
本课程主要学习目标:使学生掌握C#程序设计语言基础;掌握面向对象程序设计的思想方法;培养学生的面向对象编程思想和兴趣;使学生理解可视化编程的概念,掌握常用控件(组件)及其使用;掌握ADO.NET数据库编程基础;掌握WinForm程序设计的基本方法;训练学生编程的实战能力。通过对《C#面向对象程序设计》理论和实践教学,应能使本专业的学生掌握面向对象程序设计的理论知识和应用技能,锻炼学生进行软件开发的能力。通过教学应使学生获得以下知识和能力目标。
1、专业能力目标
(1)应用C#语言进行基础程序设计的能力。
(2)应用面向对象编程思想和方法进行程序设计的能力。
(3)应用窗体、控件和组件进行可视化编程的能力。
(4)对文件、目录进行编程管理的能力。
(5)网络通信基础编程能力。
(6)ADO.NET数据库基础编程的能力。
(7)进行WinForm程序开发的能力。
2、方法能力目标
(1)能自主学习新知识、新技术。
(2)能通过各种媒体资源查找所需信息。
(3)能根据实际客户需求进行软件开发。
(4)能运用所学知识解决实际问题。
(5)能够从工作岗位获取新的知识,胜任工作岗位。
(6)具备吃苦耐劳、团结协作、勇于创新的精神。
(7)具有合作精神和管理协调能力,具备优良的职业道德修养,能遵守职业道德规范,具有良好的心理素质。
四、学习主要内容与教学模式
本课程共计102学时,其中理论学时52,实训学时50。根据本专业人才培养方案中对《C#面向对象程序设计》课程的要求,确定如下主要的学习内容和教学模式:
1. 学习情境1:简单数据处理程序设计
(1)本情境重点学习常量、变量、运算符、表达式、运算符、程序分支等编程基础。
(2)本情境教学目标是使学生掌握C#编程基本语法。
(3)采用任务驱动教学和案例教学。
2. 学习情境2:数组处理程序设计
(1)本情境重点学习数组说明、创建、初始化及应用,4种循环语句应用。
(2)本情境教学目标是使学生掌握数组和循环等C#编程基础。
(3)采用任务驱动教学和案例教学。
3. 学习情境3:对象处理程序设计
(1)本情境重点学习类的声明、类成员及方法声明,对象创建、引用,函数重载,类的继承与多态,类的接口声明等。
(2)本情境教学目标是使学生掌握面向对象程序设计的思想和方法。
(3)采用案例教学和任务驱动教学。
4. 学习情境4:控件组件程序设计
(1)本情境重点学习常用控件(组件)及其使用,主要内容窗体、按钮、文本框、标签、列表框、单选钮、复选框、计时器、滚动条、对话框等控件和菜单、工具栏、状态条、标准对话框等组件。
(2)本情境教学目标是使学生掌握应用窗体、控件和组件进行可视化编程。
(3)采用案例教学和任务驱动教学。
5. 学习情境5:文件操作程序设计
(1)本情境重点学习Windows下文件(目录)操作类、文件夹及文件创建、文件读写。
(2)本情境教学目标是使学生掌握文件、目录的编程管理。
(3)采用任务驱动教学和情境教学。
6. 学习情境6:网络通信程序设计
(1)本情境重点学习.NET中Socket通信编程基本原理和方法,主要包括Socket通信的基本概念、地址格式,多线程通信,以及Socket类实现TCP和UDP通信方法。
(2)本情境教学目标是使学生掌握网络通信基础编程。
(3)采用任务驱动教学和情境教学。
7. 学习情境7:ADO.NET程序设计
(1)本情境重点学习ADO.NET程序设计方法,主要内容包括Connection、Command、DataReader、DataAdapter、DataSet等对象的编程手段和可视化的方法进行数据操作等。
(2)本情境教学目标是使学生掌握ADO.NET数据库编程基础。
(3)采用任务驱动教学和情境教学。
五、教学方法与手段
教学过程中综合运用“任务驱动教学法”、“案例教学法”和“情境教学法”等多种教学法,使教学过程的针对性更强;使每节课的任务明确,以实例情境贯穿理论知识,在教学安排过程中,每个知识点后面均安排有相应实训,保证理论与实践的比例为1:1。
多元化教学形式:有多媒体教学、课内实训、综合实训等多种教学形式,将C#程序设计基础和实际软件开发技术传授给学生。向学生提供多种形式的自主学习途径;让学生参加程序设计和软件开发的各类竞赛活动;采取多种激励方式,发掘学生学习的主观能动性和创造性。
本课程主要采用基于工作任务的学习情境教学模式,模拟企业真实的项目开发过程,获得基于C#语言平台的程序设计和应用软件开发的工作岗位和工作过程所需的能力,整个课程贯穿了“以职业岗位工作过程为导向”、“以学生为中心”、“以能力培养为基础”、“以双师教师为主导”、“校企合作””等先进的教学指导思想,不断更新教学理念、创新教学方法。
六、教师的基本要求
1、具有软件工程师的职业资格;
2、较丰富的理论教学和编程实践经验;
3、能独立完成课堂讲授和案例教学;
4、具备实际软件开发项目经验;
5、具备软件技术开发领域的知识内容,除了熟悉软件技术开发知识以外,还要了解计算机网络技术等其他领域的知识内容。
七、教学条件的基本要求
具备校内软件开发实训室、图书馆、多媒体教室、校外实习基地等。
八、考核标准与方式
本课程采用形成性考核和结果考核相结合的考核方式。考核方法为平时学习态度、实训练习、作业、课堂出勤占总成绩的20%,期末实践考试占总成绩的40%,期末笔试成绩占总成绩的40%。
九、学习资源
1、教材选取的原则
选用优秀新版教材或选取以项目为载体的任务驱动理论实践一体化教材。
2、推荐教材:《C#案例教程》电子工业出版社。
3、参考的书目《Visual C# 2005入门与提高》、《Visual C# 2005程序设计自学教程》等。
4、网络资源:http://www.csdn.net/、http://msdn.microsoft.com/等。
十、其他说明
本课程要求适用的专业:软件技术专业。
(1)new 运算符 用于创建对象和调用构造函数。
(2)new 修饰符 用于隐藏基类成员的继承成员。
(3)new 约束 用于在泛型声明中约束可能用作类型参数的参数的类型。
new 运算符
1.用于创建对象和调用构造函数
例:Class_Test MyClass = new Class_Test();
2.也用于为值类型调用默认的构造函数
例:int myInt = new int();
myInt 初始化为 0,它是 int 类型的默认值。该语句的效果等同于:int myInt = 0;
3.不能重载 new 运算符。
4.如果 new 运算符分配内存失败,则它将引发 OutOfMemoryException 异常。
new 修饰符
使用 new 修饰符显式隐藏从基类继承的成员。若要隐藏继承的成员,请使用相同名称在派生类中声明该成员,并用 new 修饰符修饰它。
请看下面的类:
1 public class MyClass
2
3 {
4
5 public int x;
6
7 public void Invoke() {}
8
9 }
10
1 public class MyClass
2
3 {
4
5 public int x;
6
7 public void Invoke() {}
8
9 }
10
在派生类中用 Invoke 名称声明成员会隐藏基类中的 Invoke 方法,即:
1 public class MyDerivedC : MyClass
2
3 {
4
5 new public void Invoke() {}
6
7 }
8
但是,因为字段 x 不是通过类似名隐藏的,所以不会影响该字段。
通过继承隐藏名称采用下列形式之一:
1.引入类或结构中的常数、指定、属性或类型隐藏具有相同名称的所有基类成员。
2.引入类或结构中的方法隐藏基类中具有相同名称的属性、字段和类型。同时也隐藏具有相同签名的所有基类方法。
3.引入类或结构中的索引器将隐藏具有相同名称的所有基类索引器。
4.在同一成员上同时使用 new 和 override 是错误的。
注意:在不隐藏继承成员的声明中使用 new 修饰符将生成警告。
示例
百度搜索“爱华网”,专业资料,生活学习,尽在爱华网