Object-Oriented Design

This course takes Java beginners to the next level by covering object-oriented analysis and design. You will discover how to create modular, flexible, and reusable software, by applying object-oriented design principles and guidelines. And, you will be able to communicate these designs in a visual notation known as Unified Modelling Language (UML). You will be challenged in the Capstone Project to apply your knowledge of object-oriented design by evolving and documenting the Java codebase for an Android application with corresponding UML documentation. After completing this course, you will be able to: Apply the Class Responsibility Collaborator (CRC) technique to analyze and design the object-oriented model for a problem. Explain and apply object-oriented modeling principles and their purpose (e.g, abstraction, encapsulation, decomposition, generalization). Explain and apply different types of inheritance Explain the difference between association, aggregation, and composition dependencies. Express object-oriented models as Unified Modeling Language (UML) class diagrams. Translate between UML class diagrams and equivalent Java code. Apply design guidelines for modularity, separation of concerns, information hiding, and conceptual integrity to create a flexible, reusable, maintainable design. Explain the tradeoff between cohesion and coupling.

Created by: University of Alberta

Language: English

Find Out More
Share
Facebook
Twitter
Pinterest
Reddit
StumbleUpon
LinkedIn
Email

SU Online Courses

Back to Top

Log In

Contact Us

Upload An Image

Please select an image to upload
Note: must be in .png, .gif or .jpg format
OR
Provide URL where image can be downloaded
Note: must be in .png, .gif or .jpg format

By clicking this button,
you agree to the terms of use

By clicking "Create Alert" I agree to the Uloop Terms of Use.

Image not available.

Add a Photo

Please select a photo to upload
Note: must be in .png, .gif or .jpg format