MOOC简介——基于Java的面向对象编程范式
本课程完成了编程思维、结构化编程范式、面向对象编程方式的介绍,并且着重强调了面向对象编程中封装、协作和可修改性三个重要概念。通过客观题和6道编程题的训练,进一步加深对面向对象编程范式的理解,初步领略面向对象编程范式的风采。
—— 课程团队
授课教师:南京大学刘钦
授课时间:2022年05月02日 ~ 2022年06月19日
课程简介:
这,
不是21天速成Java课程;
不是Java语法细节讲解课程;
是一门讲编程基础思想的课程;
是一门讲面向对象思想的课程;
是一门讲编程最佳实践的课程;
需要动手写代码的课程;
第一周增加了一些基础Java训练,测试大家Java基本水平;
之后每周一道;
会带着大家一起做,一起讲解;
希望大家学完之后能够有恍然大悟的感觉。
重点章节大纲
第一章:编程之前
1-01-科学思维vs工程思维
1-02-数学建模
1-03-计算机建模 1
1-04-计算机建模 2
1-05-软件工程建模
1-06-软件开发生命周期模型
1-07-分解与抽象
1-08-层次性
1-09-HelloWorld
1-10-代码是用来读的
1-11-有代码就得有测试
1-12-用例来给需求建模
第一单元 单元测试

(图片来源:中国大学MOOC)
第二章:结构化编程范式
2-01-结构化编程思想
2-02-数据流图
2-03-结构图
2-04-数据流图向结构图的转变
2-05-顺序、循环、分支
2-06-MatrixCalculation
2-07-避免重复
2-08-测试分支和循环
第二单元 单元测试
第三章:面向对象编程范式
3-01-变更时不可以避免的
3-02-大范围的修改vs有限范围
3-03-面向对象的世界观
3-04-类和对象
3-05-BadMatrix
3-06-重用
3-07-测试单个类
第三单元 单元测试

(图片来源:中国大学MOOC)
第四章:类的封装
4-01-在一起
4-02-封装
4-03-MyMatrix
4-04-寻找类和对象
4-05-用类图表达类的职责
4-06-防御式编程
4-07-静态变量和静态方法
4-08-简单类的初始化
第四单元 单元测试
第五章:类的协作
5-01-职责
5-02-协作
5-03-类之间的关系
5-04-TicTacToe
5-05-用顺序图表达类的协作
5-06-用Mock Object来辅助测试协作
第五单元 单元测验
第六章:类的可重用和可修改
6-01-可修改性
6-02-继承
6-03-多态
6-04-抽象类和抽象方法
6-05-接口
6-06-NewTicTacToe
6-07-继承和组合
6-08-按接口编程
6-09-实现可修改性
6-10-复杂类的初始化
第六单元 单元测试
1.科学的思维是指在很少或者几乎没有限制条件的情况下,把一个未解决的问题转化为一个解决的问题,从而获得理论上的最优解。
A.√
B.×
正确答案:A
解析:科学的思维是指在很少或者几乎没有限制条件的情况下,把一个未解决的问题转化为一个解决的问题,从而获得理论上的最优解。
2.请选择正确的软件工程的思维演化顺序:a.数学建模 b.计算机建模 c.软件工程建模
A.abc
B.bac
C.acb
D.bca
正确答案:D
解析:b.计算机建模 c.软件工程建模a.数学建模
3.冯诺依曼架构是指内存,控制单元,运算单元和
A.输入输出
B.电源
C.主板
D.机箱
正确答案:A
解析:冯诺依曼架构是指内存,控制单元,运算单元和输入输出
师生课程体会
本课程旨在使学生学习编程思维、结构化编程范式、面向对象编程方式的介绍,并且着重强调了面向对象编程中封装、协作和可修改性三个重要概念。课程内容对实践的指导非常有效。而且课程考核内容以主观性作业为主,作业量很大,虽有压力但是如果按时按量完成,对个人的提升也是很明显的。
这个课程真的很好,老师的课堂教学有和学生的互动,让人有上课的真实感。教学内容安排紧凑合理,有课件ppt还有学生的作业样板。我相信这门优秀老师教授的课程值得更多的人学习。

(图片来源:中国大学MOOC)