University of Colorado Boulder
Object-Oriented Analysis and Design: Patterns and Principles
University of Colorado Boulder

Object-Oriented Analysis and Design: Patterns and Principles

包含在 Coursera Plus

深入了解一个主题并学习基础知识。
中级 等级

推荐体验

3 周 完成
在 10 小时 一周
灵活的计划
自行安排学习进度
攻读学位
深入了解一个主题并学习基础知识。
中级 等级

推荐体验

3 周 完成
在 10 小时 一周
灵活的计划
自行安排学习进度
攻读学位

您将学到什么

  • Recognize design challenges in creating maintainable object-oriented systems

  • Apply appropriate standard design patterns to solve typical object-oriented design issues

  • Understand the principles behind the patterns applied to solve object-oriented development problems

要了解的详细信息

可分享的证书

添加到您的领英档案

作业

4 项作业

授课语言:英语(English)

了解顶级公司的员工如何掌握热门技能

Petrobras, TATA, Danone, Capgemini, P&G 和 L'Oreal 的徽标

积累特定领域的专业知识

本课程是 Object-Oriented Analysis & Design 专项课程 专项课程的一部分
在注册此课程时,您还会同时注册此专项课程。
  • 向行业专家学习新概念
  • 获得对主题或工具的基础理解
  • 通过实践项目培养工作相关技能
  • 获得可共享的职业证书

该课程共有5个模块

Continuing examinations of the benefits and challenges of applying design patterns and related principles in Object-Oriented Analysis and Design (OOAD). The overall specialization and the instructor are introduced here. Topic lectures introduce the origins and intent behind Object-Oriented (OO) pattern definitions, and then examine two common OO patterns - Strategy and Observer - for their purpose, structure, supporting principles, and typical applications in the design and development of OO applications. Students should have some background in OO foundational elements, Java, JUnit, and UML (all covered in the prior OOAD foundations & concepts course). These topics are prerequisites to gaining the most benefit from lectures and performing design and development assignments, so students may want to consider appropriate tutorial study as needed.

涵盖的内容

8个视频6篇阅读材料1个作业1次同伴评审2个讨论话题1个非评分实验室

This module focuses on structural OO patterns - patterns that help with object composition or making complex designs more efficient and flexible. Included here are discussions of Decorator, Facade, Adapter, Proxy, Composite, Flyweight, and Bridge. Supporting OO principles will also be discussed, as well as design topics such as multiple inheritance use guidelines and tradeoffs between the principles and implementation approaches. The project assignment (using Decorator for this module) will be the first design and development effort for an application that will be extended and refactored in each follow-on module.

涵盖的内容

7个视频1篇阅读材料1个作业1个编程作业1次同伴评审

We continue the examination and assessment of OO design patterns by looking at creational patterns here. Creational patterns provide alternative approaches for creating and instantiating objects, strengthening designs by separating the logic for object creation from object use. Supporting principles (e.g. Dependency Inversion), concepts (deep and shallow copies), and example applications will be provided. OO patterns reviewed here include Factory, Abstract Factory, Singleton, Object Pool, Prototype, and Builder. The project assignment (using Abstract Factory for this module) will be another step in extending and refactoring the class-long application design and development effort.

涵盖的内容

6个视频1篇阅读材料1个作业1个编程作业1次同伴评审

The final full module of OO design pattern reviews focuses on the behavioral OO patterns, the largest category of patterns that help provide structure for object interactions and responsibilities. The lectures look in detail at Command, State, and Template patterns, with a somewhat briefer review of Iterator, Mediator, Memento, Interpreter, Chain of Responsibility, and Visitor. Supporting principles, pattern structures, and examples of use and implementation are also reviewed. The project assignment continues the build of the class-long application design and development effort, adding the Command pattern to support additional functionality.

涵盖的内容

6个视频1篇阅读材料1个作业1个编程作业1次同伴评审

In this last class module, we take a look at building patterns from other patterns - creating compound patterns - by examining the most commonly encountered compound pattern, Model/View/Controller (MVC). We also look at a development approach called Thinking in Patterns that encourages pattern use in the analysis and design process. (Both MVC and Thinking in Patterns will be revisited in the final OOAD course.) The capstone project provided here is the last step in the class-long design and development effort, integrating State, Singleton, and Observer patterns for extending and finalizing the application functionality.

涵盖的内容

5个视频1篇阅读材料1个编程作业1次同伴评审

获得职业证书

将此证书添加到您的 LinkedIn 个人资料、简历或履历中。在社交媒体和绩效考核中分享。

攻读学位

课程 是 University of Colorado Boulder提供的以下学位课程的一部分。如果您被录取并注册,您已完成的课程可计入您的学位学习,您的学习进度也可随之转移。

 

位教师

Bruce Montgomery, PhD, PMP
University of Colorado Boulder
6 门课程15,865 名学生

提供方

从 Software Development 浏览更多内容

人们为什么选择 Coursera 来帮助自己实现职业发展

Felipe M.
自 2018开始学习的学生
''能够按照自己的速度和节奏学习课程是一次很棒的经历。只要符合自己的时间表和心情,我就可以学习。'
Jennifer J.
自 2020开始学习的学生
''我直接将从课程中学到的概念和技能应用到一个令人兴奋的新工作项目中。'
Larry W.
自 2021开始学习的学生
''如果我的大学不提供我需要的主题课程,Coursera 便是最好的去处之一。'
Chaitanya A.
''学习不仅仅是在工作中做的更好:它远不止于此。Coursera 让我无限制地学习。'
Coursera Plus

通过 Coursera Plus 开启新生涯

无限制访问 10,000+ 世界一流的课程、实践项目和就业就绪证书课程 - 所有这些都包含在您的订阅中

通过在线学位推动您的职业生涯

获取世界一流大学的学位 - 100% 在线

加入超过 3400 家选择 Coursera for Business 的全球公司

提升员工的技能,使其在数字经济中脱颖而出

常见问题