课程简介

《面向对象技术高级课程》深入、系统、完整地讲解当今主流的面向对象软件开发方法的分析、设计、实现及重构方法,深入讲解UML语言的高级技术细节,以及近年来面向对象方法最新的发展趋势。课程集百家之所言,并结合主讲者最新的研究成果,并通过大量、丰富、完整、不同领域、应用不同技术的案例将其中的关键知识点串联起来,便于理解和应用。 此课程适用人群:面向广大软件开发爱好者,并不局限专业与学历层次。最佳选课者为计算机科学和软件工程专业的大学生和硕士研究生。选课者最好具有一门面向对象的编程语言的基本知识和软件工程的基本知识。

课程大纲

第1周: 绪论:软件开发方法的演化与最新趋势
介绍贯穿于课程始终的基本概念:系统、模型、方法学、方法、语言等,回顾软件开发方法学的历史、现状,并展望未来
第2周: 面向对象技术概论
讲述面向对象方法学中的原则与发展历史以及问题
第3周:面向对象分析与设计引例(空战游戏)
以一个完整的案例示范完整的面向对象的需求分析、系统分析和系统设计的过程和模型。
第4周:面向对象的需求分析:Usecace图
介绍面向对象需求分析模型的语义与建立过程,示例,并讨论其中的深入话题
第5周:面向对象的系统分析:类图
介绍类图的语义与建立过程,示例,并讨论其中的深入话题
第6周:面向对象的系统分析:交互图
介绍交互图的语义与建立过程,示例,并讨论其中的深入话题
第7周:面向对象的系统分析:状态图
介绍状态图的语义与建立过程,示例,并讨论其中的深入话题
第8周:面向对象的系统设计:概述与问题域部分的设计
介绍面向对象设计的范围界定、概要与组成部分,以及其中问题域部分的设计方法与策略
第9周:面向对象的系统设计:控制驱动部分的设计
介绍控制驱动部分的设计方法与策略与案例
第10周:面向对象的系统设计:人机交互部分与数据管理部分的设计
介绍人机交互部分与数据管理部分的设计方法与策略与案例
第11周:面向对象的系统设计:构件与部署的设计
介绍构件与部署分与数据管理部分的设计方法与策略与案例
第12周:面向对象分析与设计完整案例
介绍各种类型的面向对象分析与设计完整案例

课程说明

本课程并不拘限于某一特定的面向对象的编程语言的编程技巧,但却包含了基于当前主流的面向对象编程语言的多项完整案例。本课程引导选课同学从更为抽象和共性的模型角度描述现实世界和软件世界,即构建分析与设计模型,之后再将其落实到软件编程实现。这种工程化的理念对于开发大型、复杂、困难、攸关软件系统是非常必要的,也是作为高级程序员、系统分析师、软件架构师等高级软件技术职位所必需具有的素质。


作为一门面向广大受众的中文MOOC课程,本次课程力求向不同需求和背景的朋友呈现中华文化氛围、生动有趣的案例、跨专业的广阔的视野、以及深入实用的技术综合。同时作为一门传授软件专门知识的MOOC课程,本次课程将为具有编程能力的同学带来有趣的软件开发项目作业,在实际的软件开发中感受学以致用的快乐,体会面向对象方法学的深刻内涵。


本次课程仍将邀请面向对象领域著名学者北京大学信息科学技术学院邵维忠教授和麻志毅副教授讲解某些章节,并对面向对象方法学中的某些关键问题进行讨论。


参考资料

邵维忠、杨芙清,面向对象的分析与设计,清华大学出版社,2013
麻志毅、邵维忠,面向对象方法基本教程, 高等教育出版社,2004
Martin Fowler著,徐家福译,UML精粹(第3版)清华大学出版社, 2005
Grady Booch等著,邵维忠等译, UML用户指南(第2版 )人民邮电出版社, 2006
Joshua Kerievsky著, 杨光等译 重构与模式 人民邮电出版社, 2013.1
Martin Fowler著,陈师(注释), Analysis Patterns: Reusable Object Models ,人民邮电出版社,2007


拓展阅读

其他

本课程有12周的课程组成,每周3~4小时,每周的课程包括若干个视频,每个视频的长度小于15分钟。每个视频包含1~2个集成测试问题。还有单独的作业和测试题,最后是期末测试。

主讲教师

蒋严冰   副教授

一直从事软件工程领域的教学和科研工作,指导学生多次获得全国或国际竞赛奖励,开展创新性的课程教学,并与华为、微软、IBM等公司开展科研教学合作项目。科研工作中将基础研究与面向企业服务相结合。教学过程中坚持多种教学法的综合运用,开发各种教学案例,注重课程的实用性,向学生传授最前沿的知识和技术。

邵维忠   教授

北京大学教授、博士生导师。主要研究领域:软件工程、面向对象方法、软件复用与构件技术等。作为课题负责人或主要参加人承担过多项科技攻关项目如:“DJ-240系列机XCY语言编译系统”、“DJS-200/XT2操作系统”、“软件结构、软件工具的研究及DJS200/XT2的研制”、“大型软件开发环境青鸟系统”等。并多次获得电子工业部、国家教委、国家科委等奖项,并获得国家科学技术进步二等奖。主要著作:《面向对象的分析与设计》、《面向对象技术》。主要译著:《面向对象的分析》、《UML用户指南》。

相关课程推荐

  • 正在进行
    数据结构与算法(上)
    计算机是现代社会中用于解决问题的重要工具。利用计算机解决实际问题需要将问题抽象,并对数据进行操作,最后通过计算机程序求解问题。而本门课程主要内容就是对以上内容进行研究。
  • 正在进行
    需求分析
    需求开发与管理是项目的基础,本课程将对需求定义、需求捕获、需求分析与建模、需求规格化、需求管理提供一套可以实践的解决方案,通过讲解和案例分析指导学员完成一系列练习,使学员对需求分析与需求管理的方法和过程建立较深刻的认识和实际操作的能力。
  • 正在进行
    数据可视化
    随着信息技术的高速发展,信息数据量呈指数增长。对海量的复杂数据的分析和处理迫切需要先进的可视化技术。在本慕课课程中,我们将探讨如何建立包括科学和信息可视化在内的有效的可视化方法。本课程面向有兴趣在自己的学习工作中使用可视化或者有志于从事可视化研究的同学。 慕课课程将主要通过案例和实践,提供丰富在线的案例和可视化代码样本,教授学员对可视化方法和原理的深入理解。

恭喜,报名成功

进入学习中心

恭喜,报名成功

确定

请进入开课界面预览

确定

X

请去您的邮箱验证

还没收到验证邮件?

1. 试试去广告邮件、垃圾邮件目录看看

2. 再次发送验证邮件

对不起,班次容量已满

请报名下一班次

知道了~!

对不起,您没有操作权限

知道了~!