|
所在平台: Coursera |
课程主页: https://www.coursera.org/learn/design-patterns
课程评论:没有评论
课程名称:设计模式 概述:本课程通过引入设计模式来扩展面向对象的分析与设计,以创建交互式应用程序。通过对已建立设计模式的调查,您将获得更复杂软件应用程序的基础。最后,您将通过参考代码异味目录来识别有问题的软件设计。在最终项目中,您将面临挑战,重新设计一个基于Java的Android应用程序,以实施多种设计模式。此外,您还将批判给定的Java代码库,识别代码异味。 完成本课程后,您将能够: - 演示如何使用设计模式解决用户界面设计问题。 - 确定适合解决特定应用设计问题的设计模式。 - 应用设计原则(如开放-关闭原则、依赖倒置原则、最少知识原则)。 - 通过识别和重构反模式来批判代码。 - 应用模型-视图-控制器(MVC)架构模式。 大纲: 1. 设计模式简介:创建型与结构型模式 - 描述:学习设计模式以解决面向对象软件中的常见设计问题。这个模块将介绍创建型和结构型设计模式。您将继续学习并实践用UML表达设计,并在Java中编写这些模式。 2. 行为设计模式 - 描述:继续学习实用的设计模式,并将其加入工具箱。本模块将教授行为模式,包括用UML进行交流和在Java中编写这些模式。 3. 设计模式与反模式 - 描述:学习非常适合用户界面的设计模式:模型-视图-控制器(MVC)。然后学习设计模式背后的原则,以创建灵活、可重用和可维护的软件。最后,了解一些糟糕设计的症状,即代码异味或反模式。 4. 顶点挑战 - 描述:在之前的模块中,您已被介绍到多种设计模式,并将其中两个应用于示例Android代码库。现在,在课程的最后模块中,您将识别并修复此代码库中的特定代码异味。完成这些任务后,您将准备好参加最终考试。
Name:Introduction to Design Patterns: Creational & Structural Patterns
Description:Design patterns help to solve common design issues in object-oriented software. You will learn what they are and how they can be applied. In this module you will learn the creational and structural design patterns. You will continue to learn and practice expressing designs in UML, and code some of these patterns in Java.
Name:Behavioural Design Patterns
Description:You will continue learning useful design patterns and add them to your toolbox. In this module, you will learn the behavioural patterns. This will include communicating them in UML and coding them in Java!
Name:Working with Design Patterns & Anti-patterns
Description:You will learn a design pattern that is very useful for user interfaces: model-view-controller, or MVC. Then you will learn some principles underlying the design patterns, to create software that is flexible, reusable, and maintainable. Finally, you will learn some of the symptoms of bad design, which we call code smells or antipatterns.
Name:Capstone Challenge
Description:In the previous modules, you were introduced to a variety of design patterns, and applied two of these to the example Android code base. Now, in the final module of the course, you will identify and fix specific code smells in this code base. After completing these tasks, you will be ready to complete the final exam.
This course extends object-oriented analysis and design by incorporating design patterns to create interactive applications. Through a survey of established design patterns, you will gain a foundation for more complex software applications. Finally, you will identify problematic software designs by referencing a catalog of code smells. You will be challenged in the Capstone Project to redesign an existing Java-based Android application to implement a combination of design patterns. You will also critique a given Java codebase for code smells. After completing this course, you will be able to: • Demonstrate how to use design patterns to address user interface design issues. • Identify the most suitable design pattern to address a given application design problem. • Apply design principles (e.g., open-closed, dependency inversion, least knowledge). • Critique code by identifying and refactoring anti-patterns. • Apply the model-view-controller architectural pattern.