Object Oriented Programming courses can help you learn core concepts like classes, objects, inheritance, and polymorphism. You can build skills in designing robust software architectures, implementing design patterns, and writing reusable code. Many courses introduce tools such as Java, Python, and C++, which are commonly used in software development, enabling you to apply your knowledge in practical coding projects. Additionally, you may explore frameworks that enhance object-oriented principles, further enriching your programming toolkit.

Duke University
Skills you'll gain: Programming Principles, Algorithms, C (Programming Language), Computer Programming, Program Development, Problem Solving, Solution Design, Computational Logic
Beginner · Course · 1 - 4 Weeks

Duke University
Skills you'll gain: Rust (Programming Language), Containerization, Data Pipelines, CI/CD, Docker (Software), Jenkins, Application Deployment, DevOps, LLM Application, Continuous Integration, Hugging Face, Unit Testing, Large Language Modeling, Test Case, Restful API, Serverless Computing, Command-Line Interface, Natural Language Processing, Computer Programming, Cloud Computing
Beginner · Specialization · 3 - 6 Months

The University of Edinburgh
Skills you'll gain: Video Game Development, Game Design, Program Development, Software Engineering, Programming Principles, Animation and Game Design, Software Development, Event-Driven Programming, Computer Programming, Computer Programming Tools, Code Reusability, No-Code Development, Computational Thinking, Algorithms, Animations
Beginner · Course · 1 - 3 Months

University of Michigan
Skills you'll gain: Unified Modeling Language, JSON, Object Oriented Programming (OOP), File I/O, Software Design, Software Design Documents, Debugging, Object Oriented Design, Data Processing, Diagram Design, Unit Testing, Programming Principles, Program Development, Python Programming, Data Import/Export, Data Wrangling, Restful API, Image Analysis, Data Manipulation, Computer Programming
Beginner · Specialization · 3 - 6 Months
Dartmouth College
Skills you'll gain: Memory Management, Command-Line Interface, C (Programming Language), Linux Commands, Linux, Computer Programming Tools, Embedded Systems, File I/O, Embedded Software, Software Visualization, Programming Principles, Computer Engineering, C and C++, Linux Servers, Algorithms, Computer Programming, Software Documentation, Computer Science, Software Engineering, Debugging
Beginner · Specialization · 3 - 6 Months

Microsoft
Skills you'll gain: Version Control, Git (Version Control System), Debugging, GitHub, Unit Testing, Code Reusability, Python Programming, Data Structures, Scripting, Programming Principles, Algorithms, Jupyter
Beginner · Course · 1 - 3 Months

Johns Hopkins University
Skills you'll gain: Artificial Neural Networks, Image Analysis, Event-Driven Programming, Scalability, Applied Machine Learning, Deep Learning, C and C++, Memory Management, Performance Tuning, C++ (Programming Language), Dataflow, Digital Signal Processing, Linear Algebra, Distributed Computing, Hardware Architecture, Programming Principles, Computer Architecture, System Programming, Program Development, Machine Learning
Build toward a degree
Intermediate · Specialization · 3 - 6 Months

University of Michigan
Skills you'll gain: Memory Management, C (Programming Language), C++ (Programming Language), Object Oriented Programming (OOP), Object Oriented Design, C and C++, Programming Principles, Data Structures, Secure Coding, Algorithms, Software Design, Application Security, Other Programming Languages, System Programming, Python Programming, Computer Architecture, Computer Programming, Java, Performance Tuning, Unix
Intermediate · Specialization · 3 - 6 Months

University of Michigan
Skills you'll gain: C (Programming Language), Programming Principles, C and C++, C++ (Programming Language), Algorithms, Memory Management, Other Programming Languages, System Programming, Computer Programming, Python Programming
Intermediate · Course · 1 - 4 Weeks

Skills you'll gain: Java Programming, Java, Memory Management, Development Environment, Programming Principles, Computer Programming Tools, Computer Programming, Integrated Development Environments, Data Structures, Software Installation
Beginner · Course · 1 - 3 Months

Duke University
Skills you'll gain: Debugging, File I/O, Memory Management, Programming Principles, Maintainability, Software Testing, Program Development, C (Programming Language), Algorithms, Test Planning, Simulations, System Programming, Computer Programming, Data Structures, Software Development, C and C++, Software Engineering, Command-Line Interface, Problem Solving, Software Design
Beginner · Specialization · 3 - 6 Months

Skills you'll gain: SAS (Software), Statistical Reporting, Data Import/Export, Data Validation, Data Access, Data Manipulation, Statistical Programming, Exploratory Data Analysis, Data Analysis Software, Data Preprocessing, Data Analysis, Data Transformation, SQL, Data Presentation, Microsoft Excel, Descriptive Statistics
Beginner · Course · 1 - 3 Months