Master object-oriented design for software development. Learn to design systems using principles like encapsulation, inheritance, and polymorphism.

Skills you'll gain: Unified Modeling Language, Software Design Patterns, C++ (Programming Language), Software Architecture, Object Oriented Design, Software Design, Object Oriented Programming (OOP), Maintainability, Programming Principles
Intermediate · Course · 1 - 3 Months

Skills you'll gain: Version Control, Debugging, Software Design Patterns, Object Oriented Design, Object Oriented Programming (OOP), Software Development, Git (Version Control System), Programming Principles, Software Design, Computer Programming, Software Engineering, Integrated Development Environments, Command-Line Interface
Beginner · Course · 1 - 4 Weeks

Skills you'll gain: Object Oriented Programming (OOP), Java, Object Oriented Design, Data Structures, Computer Programming, Debugging
Intermediate · Course · 1 - 4 Weeks

Skills you'll gain: C++ (Programming Language), Object Oriented Programming (OOP), Object Oriented Design, Programming Principles, Computer Programming, Data Structures, Algorithms, Debugging
Beginner · Course · 1 - 4 Weeks

Skills you'll gain: Java Programming, Java, Object Oriented Programming (OOP), Computer Programming, Virtual Machines, Package and Software Management
Beginner · Course · 1 - 4 Weeks

Skills you'll gain: Object Oriented Programming (OOP), Java, Java Programming, Software Design, Software Testing, Application Development
Intermediate · Guided Project · Less Than 2 Hours

Skills you'll gain: C++ (Programming Language), Object Oriented Programming (OOP), Software Design Patterns, Data Structures, File Systems, Algorithms, Maintainability, Debugging
Intermediate · Course · 1 - 3 Months

Northeastern University
Skills you'll gain: Object Oriented Design, Java, Software Architecture, Object Oriented Programming (OOP), Data Structures, Software Design, Computer Programming, Programming Principles, Application Development, Unified Modeling Language, UI Components
Mixed · Course · 1 - 3 Months

Skills you'll gain: Object Oriented Programming (OOP), Java, Java Programming, Object Oriented Design, Computer Programming, Programming Principles, Data Structures, Debugging
Beginner · Course · 1 - 3 Months

University of Alberta
Skills you'll gain: Software Architecture, Unified Modeling Language, Systems Architecture, Software Design, Software Design Documents, Software Visualization, Solution Architecture, Software Development, Software Documentation, Software Design Patterns, Enterprise Architecture, Maintainability, Scalability, Databases
Intermediate · Course · 1 - 4 Weeks

Coursera
Skills you'll gain: Cloud Computing Architecture, Cloud Infrastructure, Scalability, Cloud Computing, Cloud Platforms, Software Architecture, Cloud Services, Cloud Applications, Cloud Security, Infrastructure As A Service (IaaS), Load Balancing, Serverless Computing, Software Design Patterns, Microservices, Event-Driven Programming
Beginner · Course · 1 - 4 Weeks

University of California, Irvine
Skills you'll gain: Extract, Transform, Load, Decision Support Systems, Data Warehousing, Data Mining, Database Design, Business Intelligence, Dashboard, Star Schema, Relational Databases, Database Management, Data Visualization Software, Snowflake Schema, Data Visualization, Business Reporting, Database Management Systems, SAS (Software), Data Modeling, Interactive Data Visualization, SQL, Data Mart
Beginner · Specialization · 1 - 3 Months