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: Object Oriented Programming (OOP), Computer Programming, Programming Principles, Python Programming, File Management, Computer Science
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

University of London
Skills you'll gain: C++ (Programming Language), Object Oriented Programming (OOP), C and C++, Object Oriented Design, Programming Principles, Data Structures, Data Modeling, Data Management
Build toward a degree
Intermediate · Course · 1 - 4 Weeks

LearnQuest
Skills you'll gain: Java Programming, Java, Object Oriented Programming (OOP), Object Oriented Design, Software Design
Intermediate · Course · 1 - 3 Months

Northeastern University
Skills you'll gain: Systems Thinking, Software Visualization, Software Engineering, Object Oriented Programming (OOP), Application Design, Software Development Life Cycle, Software Design, Systems Development, Software Development, Business Architecture, Business Risk Management, User Centered Design, Process Design
Beginner · Course · 1 - 4 Weeks

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: Database Design, Software Design, Usability Testing, User Interface and User Experience (UI/UX) Design, Software Architecture, Software Design Patterns, Database Management, Systems Design, Application Security, Design Strategies, Operating Systems
Intermediate · Course · 1 - 3 Months

University of Colorado System
Skills you'll gain: Software Design, Software Development Life Cycle, Application Security, Technical Design, Software Architecture, Software Development Methodologies, Conceptual Design, Requirements Analysis
Mixed · Course · 1 - 3 Months

Skills you'll gain: Object Oriented Programming (OOP), Java Programming, Java, Computer Programming, Data Validation, Maintainability, Computer Science
Intermediate · Course · 1 - 4 Weeks

Universidad Nacional Autónoma de México
Skills you'll gain: Data Mining, Database Design, Scalability, Database Systems, Relational Databases, Unstructured Data, Transaction Processing, Databases, Systems Design, Big Data, Data Architecture, NoSQL, Data Processing, Maintainability, Software Design, SQL, Apache Hadoop
Intermediate · Course · 1 - 4 Weeks

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, Java Programming, Maintainability, Software Design, Data Storage Technologies, Program Development, Application Development, Data Structures, File Management
Intermediate · Course · 1 - 4 Weeks