UofA - Design Patterns
- Offered byCoursera
Design Patterns at Coursera Overview
Duration | 15 hours |
Start from | Start Now |
Total fee | Free |
Mode of learning | Online |
Difficulty level | Intermediate |
Official Website | Explore Free Course |
Credential | Certificate |
Design Patterns at Coursera Highlights
- This Course Plus the Full Specialization.
- Self-Paced Learning Option.
- Graded Programming Assignments.
Design Patterns at Coursera Course details
- 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.
Design Patterns at Coursera Curriculum
Introduction to Design Patterns: Creational & Structural Patterns
2.1.1 ? What is a Design Pattern?
2.1.2 ? Creational, Structural, and Behavioural Patterns
2.1.3 ? Singleton Pattern
2.1.4 ? Factory Method Pattern
2.1.5 ? Facade Pattern
2.1.6 ? Adapter Pattern
2.1.7 ? Composite Pattern
2.1.8 ? Proxy Pattern
2.1.9 ? Decorator Pattern
Meet Your Presenter ? Sam Jeffery
Meet Your Facilitator? Cecilia Xiang
Discussion: Introduce Yourself
Discussion: Design Pattern Examples
Design Patterns Course Notes
Design Patterns Glossary
Ungraded Assignment - Adapter Pattern (Solution)
Ungraded Assignment - Composite Pattern (Solution)
Module 1 Review
Behavioural Design Patterns
2.2.1 ? Template Method Pattern
2.2.2 ? Chain of Responsibility Pattern
2.2.3 ? State Pattern
2.2.4 ? Command Pattern
2.2.5 ? Observer Pattern
Discussion: Undo/Redo As a Pattern
Mediator Pattern
Peer Review Request Forum
Capstone Assignment 2.1 - Implement the Command Pattern (Solution)
Ungraded Assignment - Observer Pattern (Solution)
Module 2 Review
Working with Design Patterns & Anti-patterns
2.3.1 ? MVC Pattern
2.3.2 ? Open/Closed Principle
2.3.3 ? Dependency Inversion Principle
2.3.4 ? Composing Objects Principle
2.3.5 ? Interface Segregation Principle
2.3.6 ? Principle of Least Knowledge
2.3.7 ? Part 1 - Code Smells
2.3.7 ? Part 2 - Code Smells
Ungraded Assignment - MVC Pattern (Solution)
Capstone Assignment 2.2 - Implement MVC Pattern (Solution)
Liskov Substitution Principle
Discussion: Stories of Bad Coding
Module 3 Review
Capstone Challenge
Capstone Assignment 2.3 - Identify and Fix Code Smells (Solution)
Discussion: Last Word ? Design Patterns
Acknowledgements
Credits
Final Exam