Object Oriented Design
The focus of this course is to:
Design Reusable and Extensible software
Explore some of the Design Patterns of the “Gang of Four” (GoF) - Classic design patterns Software Engineers should be familiar with:
Creational
Structural
Behavioral
Think in terms of Objects and learn the art of designing Object-Oriented Software
Software Architectural Patterns
Software Development Methods
UML
Software Development Documents, Tools, and Techniques
Object-Oriented Programming (OOP) design patterns are reusable solutions to common software design problems that occur in object-oriented programming. These patterns provide guidelines and templates for designing classes, objects, and interactions, promoting code reuse, maintainability, and scalability. There are several categories of OOP design patterns, including creational, structural, and behavioral patterns
Software Architectural Patterns
Software architectural patterns are high-level structures that define the organization and interaction of various components within a software system. They provide a blueprint for designing and implementing scalable, maintainable, and robust applications.
Software Development Methods
Software development methods, also known as software development methodologies or software development processes, are systematic approaches used to plan, design, build, and deliver software projects. These methods provide guidelines, best practices, and frameworks to manage the software development lifecycle efficiently.
UML
Unified Modeling Language (UML) is a standardized visual modeling language used to represent, visualize, and document software systems, particularly object-oriented systems. UML provides a set of graphical notations and a common vocabulary for describing the structure, behavior, and interactions of software components.
Software Development Documents, Tools, and Techniques
In software development, various documents are essential for effective communication, documentation, and project management.