课程

中国大学MOOC,为你提供一流的大学教育

hi,小mooc
期末考试会员
SPOC学校专有课程
面向对象程序设计
第1次开课
开课时间: 2020年12月27日 ~ 2021年02月28日
学时安排: 4-6小时每周
当前开课已结束 已有 304 人参加
老师已关闭该学期,无法查看
spContent=面向对象程序设计范式具有封装、继承、多态等优点,能显著提高程序的可重用性和可扩展性,是现代开发大型应用软件的主要技术。支持面向对象程序设计范式的程序设计语言有很多,如C++、Java、C#等。C#是一种简单、现代、通用、完全面向对象的程序设计语言。它从C/C++发展而来,汲取了C/C++、Delphi、Java等多种语言的精华,具有语法简洁、与Internet紧密结合、安全高效、灵活兼容等优点。从C#入手,可以更容易体验和感悟现代化程序设计方法和技术,掌握可重用面向对象软件的开发方法,大幅度提高复杂软件系统的生产率和质量。本课程按程序设计基础、面向对象概念、实用化编程、综合应用开发等四个阶段逐层递进,从程序知识源头梳理核心概念、从应用程序架构解析实用技术,用C#语言阐述机理,基于.NET框架实现功能,概念与实用齐步,严谨与趣味同在,助力有编程梦想的同学进行进阶式学习。
面向对象程序设计范式具有封装、继承、多态等优点,能显著提高程序的可重用性和可扩展性,是现代开发大型应用软件的主要技术。支持面向对象程序设计范式的程序设计语言有很多,如C++、Java、C#等。C#是一种简单、现代、通用、完全面向对象的程序设计语言。它从C/C++发展而来,汲取了C/C++、Delphi、Java等多种语言的精华,具有语法简洁、与Internet紧密结合、安全高效、灵活兼容等优点。从C#入手,可以更容易体验和感悟现代化程序设计方法和技术,掌握可重用面向对象软件的开发方法,大幅度提高复杂软件系统的生产率和质量。本课程按程序设计基础、面向对象概念、实用化编程、综合应用开发等四个阶段逐层递进,从程序知识源头梳理核心概念、从应用程序架构解析实用技术,用C#语言阐述机理,基于.NET框架实现功能,概念与实用齐步,严谨与趣味同在,助力有编程梦想的同学进行进阶式学习。
—— 课程团队
课程概述

1、为什么要学习这门课?

面向对象程序设计范式具有封装、继承、多态等优点,能显著提高程序的可重用性和可扩展性,是现代开发大型应用软件的主要技术。支持面向对象程序设计范式的程序设计语言有很多,如C++、Java、C#等。C#是一种简单、现代、通用、完全面向对象的程序设计语言。它从C/C++发展而来,汲取了C/C++、Delphi、Java等多种语言的精华,具有语法简洁、与Internet紧密结合、安全高效、灵活兼容等优点。从C#入手,可以更容易体验和感悟现代化程序设计方法和技术,掌握可重用面向对象软件的开发方法,大幅度提高复杂软件系统的生产率和质量。


2、这门课的主题是关于什么?

本课程从C#语言的角度介绍面向对象程序设计范式,内容包括面向对象技术的发展背景和程序设计的四个层次。第一个层次是以变量和过程为设计元素的数据表示及其操作、操作流程控制等基础程序设计;第二个层次是以类为设计工具的对象、继承、多态、接口等面向对象程序设计;第三个层次是基于现成类库的实用化程序设计,包括科学计算、文字处理、图形、文件、数据库,以及泛型、集合、事件驱动等;第四个层次是涉及桌面应用开发的综合应用程序设计。课程涉及主题包括:

    第一章 概述

    第二章 程序设计基础

    第三章 面向对象基础

    第四章 程序设计范式

    第五章 实用化程序设计

    第六章 可视化程序设计

    第七章 数据存储

    第八章 图形绘制技术

    第九章 综合应用


3、学习这门课可以获得什么?

本课程是我校《面向对象程序设计(C#)》精品资源共享课程,适用于对实用编程技术感兴趣的学生。课程以C#语言中的面向对象机制为主,结合面向对象的可视化程序设计语言 Visual C#讲解面向对象中类的定义、类的封装、继承、多态性等概念以及C#语言提供的面向对象类型的使用,旨在帮助学生学习编程基本理论,掌握面向对象程序设计的基本知识和基本技能,有能力利用.NET技术和C#语言进行实用化编程。学习本课程,可以:

(1)掌握Visual Studio .NET开发环境的配置和使用方法,能够利用该平台开发基于控制台、Windows窗体等各种类型的应用程序。

(2)理解面向过程、结构化、面向对象、组件式、并发等编程泛型及各种编程的应用场合并掌握面向对象基础编程技术。

(3)掌握字符串、集合、泛型、绘图、文件、数据库等常见类的使用方法,理解委托和事件机理,能够综合利用相关技术解决实际问题。


4、这门课有什么特色和亮点。

(1)概念探源:大部分核心概念从维基(英文)指出出处并给予解释,特别是一些容易引起混淆的概念,都针对原文进行了详细解析,为基于互联网跟踪新版本和学习先进技术指引方向;

(2)分层递进:从基础级的变量与过程到对象级的封装、继承与多态,从模式级的委托与事件到实用级的集合与泛型,从应用级的图形处理、文件存储、数据库访问到企业级的复杂软件项目开发等,逐层递进学习;

(3)案例驱动:主要概念都以完整的案例加以说明,避免了技术的枯燥性,在增强其实用性的同时指明各种机制的优缺点及其适用场合;

(4)教学视频:除了提供全部可编译运行的源码外,还提供了两套授课视频,包括基于课件的精讲版和遵循教学规律的全程板书实况录播版,可根据自身喜好选择视频听课。


授课目标
  • 掌握Visual Studio .NET开发环境的配置和使用方法,能够利用该平台开发基于控制台、Windows窗体等各种类型的应用程序。

  • 理解面向过程、结构化、面向对象、组件式、并发等编程泛型及各种编程的应用场合并掌握面向对象基础编程技术。

  • 掌握字符串、集合、泛型、绘图、文件、数据库等常见类的使用方法,理解委托和事件机理,能够综合利用相关技术解决实际问题。

成绩 要求

A

课程大纲

第一章 概述

1.4 Visual Studio集成开发环境

1.1 面向对象探源

1.3 C#程序设计语言

1.2 .NET框架

单元测验1

第二章 程序设计基础

2.3 数据运算与运算过程

2.4 数据与代码的组织

2.1 程序设计与编程

2.2 数据存储

单元测验2

第4章  程序设计范式

4.4  反射机制

4.3  组件导向式程序设计

4.1  程序设计范式的概念

4.2  程序设计范式的应用

单元测验4

第3章  面向对象基础

3.1  对象与类

3.2  C#类与对象

3.3  类的继承与多态

3.4  抽象类与接口

单元测验3

第6章  可视化程序设计

6.4  业务模块窗口的实现

6.2  项目案例:我的百宝箱

6.1  工具箱的使用

6.3  飞溅屏的实现

单元测验6

第5章  实用化程序设计

5.5  语言集成查询

5.6  程序的容错能力

5.2  .NET框架中的常用类

5.4  事件驱动

5.1  程序设计环境

5.3  数据结构类

单元测验5

第7章  数据存储

7.2  “我的百宝箱”中的文件处理

7.4  “我的百宝箱”中的数据库处理

7.1  文件概念和文件类

7.3  数据库和数据库设计

单元测验7

第8章  图形绘制技术

8.3  图形类的应用

8.1  图形处理基础

8.2  工欲善其事,必先利其器

单元测验8

第9章  综合应用

9.2  需求分析与设计

9.1  应用软件开发

9.3  程序实现

单元测验9

展开全部
预备知识

具有一定的计算机基础知识。

参考资料

廖浩德等. 面向对象程序设计(C#) [M]. 北京:清华大学出版社,2018 

常见问题

1、谁适合学习这门课程?

面临一个全新的学科或课程,你首先想问的可能是“我可以学这个吗?”那么,你想了解面向对象程序设计思想吗?你想学习一门全新的程序设计语言吗?你对C#语言和.NET框架技术感兴趣吗?你想做一个有思想的软件缔造者吗?如果你想让计算机按你的要求做事,就可以学习这门课!本课程按分层递进模式进行教学,适合不同级别的人学习。初学者可以从头学起(基础级的变量和过程);有编程基础的(例如已经学习过C等语言),可以从直接进入面向对象世界(对象级的封装、继承与多态);有面向对象基础的(例如学习过C++、Java等语言),可以立即进入实用化软件开发领域(模式级的委托与事件、集合与泛型等);最后是应用级的图形处理、文件存储、数据库访问,以及企业级的复杂软件项目开发等。


2、当前有那么多支持面向对象程序设计的语言,这门课为什么选择C#语言来描述面向对象方法?

《面向对象程序设计》是一种程序设计范式之一。从哲学和科学的角度来看,范式是指应用于某个领域的一套明确的概念或思维模式,包括理论、研究方法、假设和标准。本课程旨在介绍面向对象哲学观和思维方式,顺便学习一种程序设计语言。支持面向对象程序设计范式的语言有很多,例如C++、Java、C #、Python、PHP、Ruby、Perl、Object Pascal、Objective-C、Dart、Swift、Scala、Common Lisp、Smalltalk,为什么选择C#来介绍面向对象程序设计思想和方法呢?语言没有优劣之分,但有适用场合之别,每种语言都有自己的哲学观和思维模式,形成了自身独具特色的优势。从当前最常用的C++、Java、C#等语言的发展历史来看,C++在C语言的基础上发展而来,Java源自C++(吸收了C++的各种优点,摒弃了C++难以理解的多继承、指针等概念),C#借鉴了C++、Java等,所包含的思想越来越完善,现在被其它语言借鉴。因此从学习角度考虑,我们推荐并使用C#来描述面向对象思想和机制。

源课程

该SPOC课程部分内容来自以上源课程,在源基础上老师进一步增加了新的课程内容

西南石油大学
1 位授课老师
廖浩德

廖浩德

教授

下载
下载

下载App