课程背景:
编程工具与消费类电子设备(如移动电话和PDA)的出现带来了新的问题与需求。集成不同语言的软件组件存在困难,安装问题也很常见,因为新版本的共享组件与旧软件不兼容。开发人员还发现他们需要基于web的程序,以便通过Internet访问和使用。随着移动电子设备的普及,软件开发人员发现客户不再局限于桌面计算机。开发人员认识到软件需要让任何人通过各种不同类型的设备访问。
为了满足这需求,2000年Microsoft公司推出了C#编程语言。C#是由Microsoft公司Anders Hejlsberg和Scott Wiltamuth领导的小组开发的,作为.NET平台上的语言,使程序员可以方便地集成到.NET。c#源于c、c++和Java,采二家之所长并增加了自己的新特性。c#是面向对象的,包含强大的预建组件类库,使程序员可以迅速地开发程序。
2013年,c#推出了更加强大的5.0版。2017年,微软公司发布了visual studio 2017。本课程在vs2017的平台上,以c#5规范标准为基础,全面讲述了c#编程的原理和方法。本课程可以在学习完成面向过程的编程语言(如C语言)后继续使用本书学习面向对象的编程知识,也可以作为第一门程序设计课程直接学习。课程主要面对非计算机专业,理工类、经管类和医学类学生。主要包含3个教学内容:(1)面向对象的编程;(2)Windows窗体界面编程;(3)线性数据结构的使用与编程。
课程安排:
本课程需要每周4小时的学习时间(不包括作业时间),8周学习完本课程,共计32学时。本课程在设计上注重了以下原则(1)精讲多练。程序设计是一门实践性很强的课程。需要做大量的练习。课程讲述突出重点,难点,结合实际,多讲例题。(2))以案例为导向,注重实际动手编程能力。(3)在案例的选择上,注重联系实际,并有一定的趣味性。丰富课程内容,使课程更加生动。
1. 完成课程所有的学习内容、视频、课件等;
2. 完成所有的在线练习(单元测验),占总成绩20%;
3. 完成所有的编程题(作业),占总成绩40%;
4. 参加期末考试,考试成绩占总成绩40%;
通过视频学习,完成练习、编程题和期末考试,并积极参与讨论,60分-79分为合格,80分及以上为优秀。达到课程要求后,可以申请获得课程主讲教师签名颁发的纸质合格证书或优秀证书
1 c#概述
1.1 c#与.NET
1.2 面向对象的编程技术
1.3 名字空间和类库
1.4 一个c#的例子
1.5 使用visual studio
1.6 输入和输出
1.7 变量的声明
1.8 代码阅读
单元测试
单元作业
课件
2 数据类型与表达式
2.1 .NET数据类型
2.2 c#数据类型
2.3 表达式
2.4 结构和枚举
2.4 代码阅读
单元测试
单元作业
课件
3 面向对象的编程
3.1 面向对象的编程
3.2 类
3.3 代码阅读
单元测验
单元作业
课件
4 控制结构
4.1 选择结构
4.2 循环结构
课件
4.3 其他控制语句
4.4 代码阅读
单元测验
单元作业
5 数组
课件
5.1 一维数组
5.2 二维数组
5.3 多维数组
5.4 交错数组
5.5 例题-随机填充一维数组
5.6 例题-在数组中顺序查找
5.7 例题-骰子的模拟
5.8 例题-洗牌与发牌
5.9 例题-利用交错数组生成杨辉三角
5.10 代码阅读
单元测验
单元作业
6 方法
课件
6.1 静态方法和静态变量
6.2 方法的声明与调用
6.3 例题-静态变量和静态方法
6.4 方法的参数传递
6.5 例题-方法的参数传递
6.6 out参数
6.7 可选参数、命名参数及变长参数表
6.8 方法的重载
6.9 递归
6.10 代码阅读
单元测验
单元作业
7 类与对象(面向对象的编程)
课件
7.1 类与构造函数
7.2 构造与析构
7.3 例题
7.4 代码阅读
单元作业
8 类-继承
8.1 继承
8.2 例题-复数类
8.3 例题-龟兔赛跑
8.4 例题-点和圆
8.5 例题-包裹投递
8.6 例题-Account类
8.7 代码阅读
单元测验
单元作业
课件
9 类-多态
9.1 多态
9.2 多态-例题
9.3 例题-宠物类
9.4 运算符重载
9.5 接口
9.6 例题-员工工资(重点例题)
9.7 代码阅读
单元测验
单元作业
课件
10 异常
课件
10.1 异常处理
10.2 异常示例
10.3 抛出异常
10.4 代码阅读
单元测验
单元作业
11 泛型和委托
课件
11.1 泛型
11.2 泛型示例
11.3 委托的定义
11.4 实例化委托和内置委托
11.5 多播委托
单元测验
12 Windows Form 编程
课件
12.1 Windows 编程概述
12.2 消息驱动机制示例
12.3 常用控件
12.4 例题-计算利率
12.5 ListBox控件
12.6 数字调节控件
12.7 鼠标消息
12.8 键盘消息
单元测试
单元作业
13 GDI+绘图系统
课件
13.1 GDI+
13.2 画笔、画刷等画图对象
13.3 屏幕的刷新
13.4 例题-下落的小球
13.5 在窗体和控件上绘图
单元测验
单元作业
14 窗体、对话框和菜单
课件
14.1 窗体和对话框
14.2 窗体-例题
14.3 对话框-例题
14.4 菜单
14.5 菜单-例题
单元测验
单元作业
15 文件
15.1 文本文件的读写
15.2 二进制文件的读写
15.3 文件和目录的操作
15.4 三道例题
15.5 文档序列化
文件和流
课件
16 .NET与数据结构
16.1 数据与数据结构
16.2 线性表
16.3 栈和队列
16.4 例题
本课程可以零基础学习。大学计算机基础、计算思维导论等课程对于理解本课程的部分内容有帮助,但这些课程的学习不是必须的。
崔舒宁等编著,《visual C#大学程序设计》,清华大学出版社,ISBN 978-7-302-42304-1