《C#程序设计教程》课程教学大纲

执笔人:xxx,xxx,xxx 编写日期:年 月

一、课程基本信息

1.课程名称:C#程序设计教程

2.课程编号:

3.课程体系/类别:

4.课程性质:

5.学分:3

6.先修课程:数据结构、离散数学、程序设计基础、Java程序设计

7.适用专业:计算机科学与技术专业、网络空间安全专业或其他相近专业

二、课程教学目标本课程是为计算机科学与技术、网络空间安全等相关专业本科生开设的一门课程。.NET是一个全面的产品家族,它建立在行业标准和Internet 标准之上,提供开发(工具)、管理(服务器)、使用(构造块服务和智能客户端)以及 XML Web 服务体验(丰富的用户体验)。.NET 将成为今天正在使用的 Microsoft 应用程序、工具和服务器的一部分,同时,新产品不断扩展 XML Web 的服务能力以满足所有业务需求。掌握.NET技术是现代软件开发的一项基本技能,是计算机及相关专业学生必备的基本知识。如今,C#已经成为微软.NET平台的主角,C#程序员队伍也日益庞大。相信,凭借着微软雄厚的技术实力和不容动摇的软件霸主地位,在今后可预见的未来,C#必将得到进一步的加强和完善,受到更多程序员的青睐。通过对以C#编程语言的学习,为计算机及相关专业学生奠定基本应用技能的储备,培养学生的实际动手能力和开发能力,满足当今大数据时代对高级专门人才的需求。

本课程的教学目标:

1、 能够根据工程基础和专业知识设计.Net软件开发领域的复杂工程问题的解决方案;

2、 能够根据用户需求确定计算机.Net软件系统或相关产品的设计目标。

3、 能根据目标选取恰当的C#、.Net开发技术与设计流程,并确定系统、模块或流程的研发方案,体现创新意识。

4、 能针对.Net软件开发领域的复杂工程问题,开发、选择与使用恰当的C#、.Net技术、资源、现代工程工具和信息技术工具,包括对复杂工程问题的预测与模拟。

5、 具备从事基于C#和.Net的软件开发所需的职业素养以及符合社会主义核心价值观的个人素质。

三、课程目标和毕业要求的对应关系

课程目标和毕业要求的对应关系见表1。

表1 课程目标和毕业要求的对应关系(仅供参考)

毕业要求

毕业要求指标点

课程目标

1工程知识:能够将数学、自然科学、工程基础和专业知识用于解决计算机及相关领域的复杂工程问题。

1.3能够根据工程基础和专业知识设计计算机相关领域的复杂工程问题的解决方案。

目标1

3 设计/开发解决方案:能够设计针对计算机领域复杂工程问题的解决方案,设计满足特定需求的计算机系统、软硬件或相关产品,并能够在设计环节中体现创新意识,考虑社会、健康、安全、法律、文化以及环境等因素。

3.1能够根据用户需求确定计算机系统、软硬件或相关产品的设计目标。

目标2

3 设计/开发解决方案:能够设计针对计算机领域复杂工程问题的解决方案,设计满足特定需求的计算机系统、软硬件或相关产品,并能够在设计环节中体现创新意识,考虑社会、健康、安全、法律、文化以及环境等因素。

3.2能根据目标选取恰当的计算机开发技术与设计流程,并确定系统、模块或流程的研发方案,体现创新意识。

目标3,5

5 使用现代工具:能够针对复杂工程问题,开发、选择与使用恰当的技术、资源、现代工程工具和信息技术工具,包括对复杂工程问题的预测与模拟,并能够理解其局限性。

5.1能针对计算机相关领域的复杂工程问题,开发、选择与使用恰当的技术、资源、现代工程工具和信息技术工具,包括对复杂工程问题的预测与模拟。

目标4,5

四、课程教学内容和要求

本课程的课内总学时为48学时,其中理论学时36学时,实验学时12学时。本课程的课内理论教学内容、重点、难点、教学要求见表2。

表2 课内理论教学内容与要求(仅供参考)

序号

知识单元(章节)

知识点

重点

难点

要求

推荐学时

支撑毕业要求指标点

1

C#程序设计基础

程序设计语言

程序设计方法

C#程序设计语言概述

C#集成开发环境

了解

2

1.3,3.1,5.1

2

基本数据类型

基本数据类型

变量与常量

基本运算

复合数据类型

数组的定义和使用

*

掌握

2

3.2

3

选择结构和循环结构

if语句——二分支选择语句

switch语句——多分支选择语句

while语句和do…while语句

for语句和foreach语句

跳转语句

*

理解

3

3.2,3.1

4

面向对象编程方法

类和对象

类的继承、重载与多态

运算符的重载

接口及其实现

方法的委托

泛型类

常用的几个类

命名空间

*

*

掌握

6

1.3,3.1,3.2

5

异常处理

异常的捕获与处理

异常的抛出及自定义异常

*

理解

2

5.1

6

窗体应用程序设计

组件的公共属性、事件和方法

常用的控件

常用的对话框

消息对话框

菜单和工具栏的设计

*

*

理解

4

1.3,3.1

7

目录和文件操作

目录管理

文件管理

文本文件的读写

二进制文件的读写

*

了解

2

5.1

9

多线程

线程及其实现方法

线程的同步控制

线程池

线程对控件的访问

了解

2

3.2

10

数据库开发技术

数据库系统与ADO.NET概述

SQL语言简介

ADO.NET对象

数据库操作举例

*

理解

2

1.3,3.1,5.1

11

ASP.NET Web应用开发

关于ASP.NET

ASP.NET控件和对象

ASP.NET数据库应用程序

Web服务的应用

*

*

掌握

3

3.2,3.1,5.1

12

基于数据控件的应用程序开发

数据显示控件

DataGridView控件的结构

DataGridView控件的属性和方法

对DataGridView控件加载数据

DataGridView控件的应用举例

GridView控件的属性和事件

GridView控件的数据库应用

应重视的问题

*

理解

4

1.3,3.2,5.1

13

Excel数据读写在Web开发中的应用

Excel表的结构

Excel数据读写的三种方法

构造不规则Excel表

Excel数据的导入与导出

了解

2

3.2,3.1,5.1

14

应用程序的发布

关于应用程序的发布

由手工复制文件来发布程序

IIS安装与Web应用程序发布

使用.NET项目来发布程序

*

*

了解

2

1.3,3.1

本课程针对主要知识点设计了难度不同的配套实验,由教师在实验课上指导完成。具体实验教学内容与教学要求见表3。

表3 课内实验教学内容与要求

序号

实验项目名称

实验主要内容

实验类型

计划学时

开出要求

实验者类别

每组人数

1

数据类型和基本语法的运用

编写一个C#窗体应用程序,对于输入的正整数n,然后计算1!+2!+3!+…+n!的值并输出。

验证、设计

2

必做

本科生

1

2

类的运用

定义一个大整数类,使得基于此类可以实现对最高有100位的整数进行加、减法运算,以及进行大整数比较(包括相等、大于和小于的比较)

验证、设计

3

必做

本科生

1

3

基本异常处理

编写一个能够进行加、减、乘、除的计算器程序(窗体应用程序),并能够处理可能产生的异常。

验证

2

必做

本科生

1

4

窗体应用程序开发方法

编写一个包含两个ListBox控件的窗体应用程序,要求实现下列功能:(1)通过鼠标可以将一个ListBox控件中的任意一项拖到另一个ListBox控件中,反之亦然;(2)拖动时,鼠标呈手势状,使得拖动操作更具形象化。

验证、设计

3

必做

本科生

2

5

文本文件读写方法

利用本章介绍的文本文件的读写方法,开发一个“记事本”程序,要求能够实现文件的打开、编辑、保存功能,并能够处理可能出现的异常。

验证

2

必做

本科生

1

6

数据库应用程序开发

创建一个数据库应用程序,使它能够对表teacher进行简单的数据浏览、插入、更新和删除操作。

验证、设计

3

必做

本科生

1

7

Web数据库应用程序开发

创建一个Web服务程序,它针对指定的数据表提供共享的DataSet对象;同时创建一个窗体应用程序,它通过利用由Web服务共享的DataSet对象来实现数据浏览功能。

验证、设计

3

必做

本科生

2

8

制作安装程序

利用InstallShield Limited Edition,制作程序PictureBrowse(见例14.1)的安装程序。

验证

1

必做

本科生

1

注:提供了总共19个学时的实验列表,教师可根据需要从中选择12学时的实验方案。

五、课程教学方法

1.课堂讲授

课堂讲授是知识传授的主要方式。在课堂教学中,通常采用PPT展示并讲解的方式进行教学,有时候也用粉笔进行推导和说明;根据需要还进行专题学习和讨论、课堂即时测验等,就重点、难点问题进行分析和学习;此外,根据实际需要,还通过实时操作等方法进行演示,还通过视频、动画等方式进行展示。总之,通过多种方式,积极调动大家的积极性,进行引导,以传授C#、.Net编程知识,同时强调知识点的衔接、知识结构的贯通,在传授知识的同时,注意培养学生的批判性思维。

2.实验教学

实验教学是C#编程技能训练的一种主要教学环节,主要包括验证性实验和设计性综合实验两种。

3.作业练习

作业练习是对知识重复训练的一种能力培养方式。任课教师根据教学进度安排适量的作业,此外还安排问题解答时间、安排习题课等,点评普遍性与重要性的问题。

4.大作业或专题报告

针对重要的问题或涉及的复杂应用系统的工程问题,教师根据学生掌握的情况适当安排大作业、专题报告,通过分组讨论、答辩、提交报告等方式帮助学生培养解决复杂工程问题的能力。

六、课程考核

课程总成绩=期末考试(50%)+课程实验(15%)+大作业或专题报告(15%)+平时作业(10%)+平时表现及出勤率(10%)。

七、本课程与其它课程的联系与分工

1.先修课程

本课程的先修课是《数据结构》、《离散数学》、《程序设计基础》、《Java程序设计》。

2.后续课程

本课程的后续课程是《面向对象程序设计(Java)》、《基于.net的软件开发》和《软件开发实践》等。

八、建议教材与教学参考书

蒙祖强编著. C#程序设计教程(第2版). 北京:清华大学出版社,2019年9月.

  • C#程序设计教程(第2版)

  • ISBN:9787302529996

  • 出版日期:2019.09

本书特色

基础知识点精讲,注重实战案例分析与演练。83个知识点案例,条理清楚、代码简洁、操作简便,配套资源丰富。

配套资源

教学课件、教学大纲、程序源码、习题答案、安装软件

【完整版教学大纲获取方式】

关注“书圈”公众号,进行高校教师注册,成功后回复书号后6位:

529996

即可获取。

高校教师

免费在线申请教材

(关注书圈,注册即可)

c#面向对象与程序设计第三版第三章例题代码_C#程序设计教程 | 教与学(教学大纲)...相关推荐

  1. 何钦铭c语言第三版第9章答案,c语言程序设计第3版何钦铭 颜 晖 第9章 结构.pdf...

    第 9 章 结构 [练习9-1]定义一个能够表示复数的结构类型,一个复数包括实数与虚数两个 部分. 解答: struct complex{ float real; float imaginary; } ...

  2. java第二版课后题答案_Java语言程序设计第2版第16章 课后习题答案

    <Java语言程序设计第2版第16章 课后习题答案>由会员分享,可在线阅读,更多相关<Java语言程序设计第2版第16章 课后习题答案(62页珍藏版)>请在人人文库网上搜索. ...

  3. c语言函数的程序设计,C语言程序设计第3版,第6章函数程序设计.ppt

    C语言程序设计第3版,第6章函数程序设计 C语言程序设计 第6章 函数程序设计 第6章 数组程序设计 6.1 函数概述 6.2 自定义函数示例 6.3 函数定义及调用 6.4 函数嵌套和递归函数 6. ...

  4. 算法导论第三版第十一章11.1-4

    算法导论第三版第十一章11.1-4 我们希望在一个非常大的数组上,通过利用直接寻址的方式来实现一个字典.开始时,该数组中可能包含一些无用信息,但要堆整个数组进行初始化时不太实际的,因为该数组的规模太大 ...

  5. 【slam十四讲第二版】【课本例题代码向】【第七讲~视觉里程计Ⅱ】【使用LK光流(cv)】【高斯牛顿法实现单层光流和多层光流】【实现单层直接法和多层直接法】

    [slam十四讲第二版][课本例题代码向][第七讲~视觉里程计Ⅱ][使用LK光流(cv)][高斯牛顿法实现单层光流和多层光流][实现单层直接法和多层直接法] 0 前言 1 使用LK光流(cv) 1.1 ...

  6. 【slam十四讲第二版】【课本例题代码向】【第九讲~后端Ⅰ】【安装Meshlab】【BAL数据集格式】【ceres求解BA】【g2o求解BA】

    [slam十四讲第二版][课本例题代码向][第九讲~后端Ⅰ][安装Meshlab][BAL数据集格式][ceres求解BA][g2o求解BA] 0 前言 1 安装Meshlab: 三维几何网格处理 2 ...

  7. java程序设计基础_陈国君版第五版_第九章例题

    java程序设计基础_陈国君版第五版_第九章例题 /*** 本测例会产生一个数组越界异常* @author Richard**/ public class Main9_1 {public static ...

  8. c语言程序设计第三版宁爱军答案,C语言程序设计(第3版)

    C语言程序设计(第3版) 出版时间:2021年04月 定 价:64.00 I S B N :9787115554864 所属分类: 大中专教材  >  高职高专教材 &nbsp 标 签: ...

  9. python基础教程第三版-《Python基础教程第三版》原版中英文PDF+代码+袁国忠(译)...

    <Python基础教程第3版>整本书的结构安排还是比较明显的.先是基础知识和python的基本数据类型和语言特性介绍,然后是面向对象的编程.之后介绍python的标准库以及相关主题的编程( ...

最新文章

  1. 谈谈你期望的大学暑期实践或你亲身体验的
  2. hashCode到底有什么用?
  3. linux文件属性之用户和组基础知识
  4. 在PHP服务器上使用JavaScript进行缓慢的Loris攻击[及其预防措施!]
  5. 前端基础-html-文本格式化标签
  6. Leetcode算法题(C语言)4--旋转数组
  7. 【算法设计】最大子段和问题解析(对应算法第三题)
  8. 京东末位淘汰 10% 高管:稳定不是常态,淘汰才是
  9. 解析php变量,php使用parse_str实现查询字符串解析到变量中的方法
  10. winpcap的使用
  11. Neo4j下载安装及使用
  12. JS实现轮播图(超详细代码注释)
  13. php开源个人网站,PHP开源软件《个人管理系统》
  14. 知识驱动的主动式开放域对话系统 by 车万翔 2020/4/11
  15. python制作qq机器人
  16. java单击按钮实现窗口隐藏
  17. 为梦想--不抛弃,不放弃!!!
  18. 系统主数据管理之物料(Item)四 Item的单位(UOM)
  19. Apache Velocity 模板语言 特殊字符${ $!{ 原样输出问题 转义符 # ! 无效
  20. web前端html+css实现立体旋转相册(表白可用)

热门文章

  1. MariaDB-5.5.56 主主复制+keepalived高可用
  2. redis数据库操作(3)
  3. day1:作业 编写登录接口并画出相应的流程图
  4. [学习笔记]Javascript可选的分号
  5. java error:编码gbk的不可映射字符
  6. 大道至简阅读笔记06
  7. ThinkPHP 3.1.2 控制器的模块和操作
  8. 《三层架构之抽象工厂加反射》纠错
  9. Oracle全备增量备份脚本,ORACLE-RMAN:备份脚本(全库,增量)
  10. python 绘制柱状图