Skip to content

This repository for learning Object Oriented Design through the Coursera course "Object Oriented Design by University of Alberta"

License

Notifications You must be signed in to change notification settings

m7moudGadallah/Learning-Object-Oriented-Design-Coursera-UOA

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

8 Commits
 
 
 
 
 
 

Repository files navigation

Learning Object Oriented Design - Coursera UOA

Description

Welcome to my personal repository for learning Object Oriented Design through the Coursera course Object-Oriented Design. Within this repository, I am organizing a collection of my notes, assignment solutions and projects.

Course Topics

Course Overview

  • Introduction to the course and its objectives.

Module 1: Object-oriented analysis and design

  • Object-Oriented Thinking
  • Design in the Software Process
  • Requirements
  • Design
  • Compromise in Requirements and Design
  • Design for Quality Attributes
  • Trade-offs
  • Context and Consequences
  • Satisfying Qualities
  • Compromise
  • Class Responsibility Collaborator (CRC) Cards
  • Prototyping and Simulation

Module 2: Object-Oriented Modelling

  • Creating Models in Design
  • Evolution of Programming Languages
  • Four Design Principles
    • Abstraction
    • Encapsulation
    • Decomposition
    • Generalization
  • Design Structure in Java and UML Class Diagrams
    • Abstraction
    • Encapsulation
    • Decomposition
    • Generalization

Module 3: Design Principles

  • Evaluating Design Complexity
  • Coupling
  • Cohesion
  • Separation of Concerns
  • Information Hiding
  • Conceptual Integrity
  • Generalization Principles
  • Specialized UML class diagrams
  • UML Sequence Diagrams
  • UML State Diagrams
  • Model Checking

↑top

Materials

↑top

Getting Started

To get started with this repository, follow these steps:

  1. Clone this repository to your local machine using:

    git clone https://github.com/your-username/Learning-Object-Oriented-Design-Coursera-UOA.git

  2. Navigate to specific directories for notes, assignments, and projects.

↑top

License

This repository is licensed under the MIT License. Feel free to use, modify, and distribute the contents of this repository for educational purposes.

↑top

Acknowledgements

We would like to express our gratitude to the instructors, course creators, and Coursera for providing this valuable learning opportunity.

Happy learning!

↑top

About

This repository for learning Object Oriented Design through the Coursera course "Object Oriented Design by University of Alberta"

Topics

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published