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.

Technical University of Denmark (DTU)
Skills you'll gain: Jupyter, Medical Imaging, 3D Modeling, Image Analysis, Engineering Analysis, Finite Element Methods, Numerical Analysis, Mathematical Modeling, Materials science, Simulation and Simulation Software, Digital Signal Processing, Python Programming, Applied Mathematics
Mixed · Course · 1 - 3 Months

Microsoft
Skills you'll gain: Product Roadmaps, AI Product Strategy, Technology Roadmaps, Product Strategy, User Story, Agile Product Development, Stakeholder Management, Product Requirements, Functional Specification, Responsible AI, Innovation, Change Management, Market Research, Prioritization
Beginner · Course · 1 - 3 Months

Skills you'll gain: Spring Boot, Application Development, API Testing, Application Frameworks, Software Testing, Test Case, Development Environment, Model View Controller, Software Development Tools, Java Platform Enterprise Edition (J2EE), Authentications, Software Design Patterns, SQL, Data Persistence, Mockups, JSON, User Interface (UI), Functional Design, Databases, Dependency Analysis
Intermediate · Specialization · 1 - 3 Months

Johns Hopkins University
Skills you'll gain: Survey Creation, Sampling (Statistics), Quantitative Research, Research Methodologies, Data Analysis, Data Quality, Model Evaluation, Data Transformation, Statistical Analysis, Data Validation, Statistical Methods
Beginner · Course · 1 - 4 Weeks

Skills you'll gain: Collaboration, Educational Materials, Instructional Design, Visualization (Computer Graphics), Laboratory Experience, Learning Strategies, Constructive Feedback, Experimentation, Physics, Scientific Methods, Investigation
Intermediate · Course · 1 - 3 Months

Skills you'll gain: Simulation and Simulation Software, Systems Thinking, Data Sharing, Data Modeling, Systems Design, Mathematical Modeling, Interactive Data Visualization, Biology, Environment, Storytelling
Beginner · Guided Project · Less Than 2 Hours

Skills you'll gain: Model Evaluation, Data Preprocessing, PyTorch (Machine Learning Library), Transfer Learning, Model Deployment, Performance Tuning, Deep Learning, Natural Language Processing, Machine Learning
Intermediate · Guided Project · Less Than 2 Hours

Microsoft
Skills you'll gain: Front-End Web Development, Debugging, Programming Principles, Computational Thinking, GitHub, Pseudocode, Version Control, Git (Version Control System), Integrated Development Environments, Microsoft Copilot, Algorithms, Program Development, Computer Programming, Data Flow Diagrams (DFDs), C# (Programming Language)
Beginner · Course · 1 - 3 Months

Skills you'll gain: Large Language Modeling, Natural Language Processing, LLM Application, Generative AI Agents, Prompt Engineering, Test Case, Agentic systems, User Interface (UI), Artificial Intelligence and Machine Learning (AI/ML), Performance Testing, Debugging, Applied Machine Learning, Artificial Intelligence, Machine Learning Algorithms, Classification Algorithms, Decision Support Systems, Model Evaluation, Performance Tuning
Intermediate · Course · 1 - 3 Months

École normale supérieure
Skills you'll gain: Infographics, Geospatial Mapping, Graphic and Visual Design, Geospatial Information and Technology, Geographic Information Systems, Data Mapping, Graphics Software, World History, Color Theory
Beginner · Course · 1 - 3 Months

Amazon
Skills you'll gain: Git (Version Control System), Software Development Methodologies, Requirements Analysis, Version Control, Application Development, Software Development Life Cycle, Systems Development, Functional Requirement, Software Engineering, User Requirements Documents, Agile Software Development, Application Design, Unified Modeling Language, Software Testing, JUnit, Agile Methodology, Spring Framework, Debugging, Java, Technical Design
Beginner · Course · 1 - 3 Months

University of London
Skills you'll gain: Interactive Design, Computer Graphics, User Interface and User Experience (UI/UX) Design, Mobile Development, Visualization (Computer Graphics), Animation and Game Design, Music, Application Development, Multimedia, Computer Programming, Digital Signal Processing
Mixed · Course · 1 - 3 Months