Master object-oriented design for software development. Learn to design systems using principles like encapsulation, inheritance, and polymorphism.
The language used throughout the course, in both instruction and assessments.

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

Northeastern University
Skills you'll gain: Java, Object Oriented Programming (OOP), Data Structures, Object Oriented Design, Event-Driven Programming, Computer Programming, Application Design, Programming Principles, Application Development, User Interface (UI), User Interface (UI) Design, Integrated Development Environments, Software Development
Intermediate · Course · 1 - 4 Weeks

University of Colorado System
Skills you'll gain: Object Oriented Design, Unity Engine, Game Design, Software Design Patterns, Data Structures, C# (Programming Language), Video Game Development, Graph Theory, Software Architecture, Algorithms, Debugging
Intermediate · Course · 1 - 4 Weeks

Northeastern University
Skills you'll gain: Software Architecture, Java Programming, User Interface (UI), Object Oriented Programming (OOP), Data-Driven Decision-Making, Business Modeling, Test Data, Software Development, Application Development, Artificial Intelligence, Data Structures
Mixed · Course · 1 - 3 Months

Skills you'll gain: Java Programming, Object Oriented Design, Software Design, Records Management, Programming Principles
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: Embedded Software, Embedded Systems, C++ (Programming Language), Object Oriented Programming (OOP), System Programming, C (Programming Language), Development Environment, Verification And Validation, Software Testing, Peripheral Devices, Debugging
Intermediate · Course · 1 - 3 Months

Skills you'll gain: C and C++, Object Oriented Programming (OOP), C++ (Programming Language), Data Validation, Object Oriented Design, Computer Programming, Programming Principles, Computer Science
Intermediate · Course · 1 - 4 Weeks

Skills you'll gain: Object Oriented Programming (OOP), Computer Programming, Programming Principles, Python Programming, File Management, Computer Science
Intermediate · Course · 1 - 4 Weeks

Skills you'll gain: PHP (Scripting Language), Object Oriented Programming (OOP), Object Oriented Design, Software Design Patterns, Web Development, Maintainability, Software Engineering
Intermediate · Guided Project · Less Than 2 Hours

The Hong Kong University of Science and Technology
Skills you'll gain: Software Design Patterns, Systems Development Life Cycle, Software Architecture, Software Development Life Cycle, Software Quality Assurance, Software Design, Process Driven Development, Software Engineering, Quality Assurance, Systems Analysis, Object Oriented Design, Systems Design, Program Development, Project Management, Project Planning, Unified Modeling Language
Intermediate · Course · 1 - 3 Months

Duke University
Skills you'll gain: Object Oriented Programming (OOP), Java, Java Programming, Software Engineering, Programming Principles, Computer Programming, Software Design, Predictive Modeling, Algorithms, Data Structures, Performance Tuning, Performance Testing, Debugging, Application Programming Interface (API), Development Testing
Beginner · Course · 1 - 3 Months