Object Oriented Design courses can help you learn principles like encapsulation, inheritance, and polymorphism, along with design patterns such as Singleton and Factory. You can build skills in creating reusable code, improving software maintainability, and designing systems that are easier to understand and extend. Many courses introduce tools like UML for modeling, as well as programming languages such as Java and Python, which are commonly used to implement object-oriented concepts in real-world applications.

Skills you'll gain: Animation and Game Design, Android (Operating System), Unity Engine, Video Game Development, Mobile Development, C# (Programming Language), Game Design, Scripting, Object Oriented Programming (OOP)
Intermediate · Course · 1 - 3 Months

The Museum of Modern Art
Skills you'll gain: Art History, Liberal Arts, Aesthetics, Creativity, Photography, Storytelling, Social Impact, Design, Multimedia
Beginner · Course · 1 - 3 Months
Coursera
Skills you'll gain: Layout Design, Typography, Logo Design, Graphic Design, Graphic and Visual Design Software, Design Software, Digital Design, Color Theory, Branding, Vector Databases, File Management
Beginner · Course · 1 - 4 Weeks

Skills you'll gain: Object Oriented Programming (OOP), Data Visualization, Seaborn, Flask (Web Framework), Computer Programming, Web Applications, Statistical Methods, Data Analysis Software, Pandas (Python Package), Probability & Statistics, Data Manipulation, Data Structures, UI Components
Intermediate · Course · 1 - 3 Months

JetBrains
Skills you'll gain: Video Game Development, Generative AI Agents, Prompt Engineering, Game Design, Code Review, 3D Assets, Animation and Game Design, 3D Modeling, Integrated Development Environments, Artificial Intelligence, Generative AI, Project Planning, Javascript, Software Development, Product Development, Web Development, Product Design, Animations, Visual Design, Interactive Data Visualization
Beginner · Course · 1 - 4 Weeks
University of Toronto
Skills you'll gain: Data Structures, Test Automation, Object Oriented Programming (OOP), Unit Testing, Python Programming, Program Development, Algorithms, Test Case, Software Testing, Debugging, Computational Thinking
Mixed · Course · 1 - 3 Months

Skills you'll gain: Software Development Life Cycle, Object Oriented Programming (OOP), Java Programming, Java, Program Development, Software Development, Development Environment, Integrated Development Environments, Programming Principles
Beginner · Course · 1 - 4 Weeks

University of Colorado Boulder
Skills you'll gain: Teamwork, Business Writing, Constructive Feedback, Conflict Management, Collaboration, Team Building, Diversity Awareness, Business Correspondence, Business Communication, Recognizing Others, Decision Making, Writing, Organizational Skills, Interpersonal Communications, Social Skills, Team Motivation, Tactfulness, Performance Management, Staff Management, Grammar
Beginner · Specialization · 3 - 6 Months

Skills you'll gain: iOS Development, Data Persistence, Application Design, Application Programming Interface (API), JSON, Typography
Intermediate · Course · 1 - 3 Months

Skills you'll gain: Hypertext Markup Language (HTML), Interactive Design
Beginner · Course · 1 - 4 Weeks

Skills you'll gain: Augmented Reality, TikTok, Animations, Scripting, Debugging, Interaction Design, User Interface (UI), Creativity
Intermediate · Course · 1 - 4 Weeks

University of California, Irvine
Skills you'll gain: Go (Programming Language), Object Oriented Programming (OOP), Data Management, File I/O, Algorithms, Functional Design, Data Structures, Network Protocols, System Programming, Software Design, Operating Systems, Debugging, Computer Architecture
Intermediate · Specialization · 3 - 6 Months