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.

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
★ 4.8 (23K) · 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
★ 4.6 (453) · Beginner · Specialization · 3 - 6 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
★ 3 (212) · 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, Numerical Analysis
★ 4.5 (255) · 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, Data Structures, Other Programming Languages, System Programming, Computer Programming, Python Programming, Numerical Analysis
★ 4.5 (102) · 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
★ 4.6 (181) · 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
★ 4.6 (7.5K) · Beginner · Specialization · 3 - 6 Months

Johns Hopkins University
Skills you'll gain: R (Software), Statistical Analysis, R Programming, Statistical Programming, Statistical Methods, Data Analysis, Debugging, Simulations, Program Development, Programming Principles, Software Installation, Data Structures, Performance Tuning, Data Import/Export
★ 4.5 (22K) · Intermediate · Course · 1 - 4 Weeks

Microsoft
Skills you'll gain: Microsoft Visual Studio, R (Software), Debugging, R Programming, Data Structures, Microsoft Development Tools, Software Documentation, Programming Principles, Statistical Programming, Program Development, Code Reusability, Development Environment, Data Manipulation, Computational Logic, Software Installation
★ 5 (6) · Beginner · Course · 1 - 4 Weeks

Microsoft
Skills you'll gain: Debugging, Development Environment, Computer Programming Tools, Pseudocode, C++ (Programming Language), Program Development, Programming Principles, C and C++, Application Development, Maintainability, Command-Line Interface, Software Development Tools, Computational Thinking, Application Design, Integrated Development Environments, Software Documentation, Build Tools, Computer Programming, Algorithms, Computational Logic
★ 4.4 (36) · Beginner · Course · 1 - 3 Months

University of Pennsylvania
Skills you'll gain: File I/O, Data Structures, Programming Principles, Computer Programming Tools, Python Programming, Computer Programming, Computational Thinking, Software Development Tools, Development Environment, Data Storage, Functional Design, Integrated Development Environments, Software Documentation, Code Reusability, Data Import/Export, Jupyter
★ 4.6 (1.3K) · Beginner · Course · 1 - 4 Weeks
Duke University
Skills you'll gain: File I/O, UI Components, Object Oriented Design, Java Programming, Software Design, Maintainability, Debugging, Web Design and Development, Software Engineering, Code Reusability, Hypertext Markup Language (HTML), Computer Programming, Program Development, Event-Driven Programming, Bioinformatics, Encryption, Javascript, Algorithms, Data Analysis, Cascading Style Sheets (CSS)
★ 4.6 (22K) · Beginner · Specialization · 3 - 6 Months