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: Dashboard, Data Warehousing, Extract, Transform, Load, Data Storytelling, SQL, Data Visualization, Dashboard Creation, Database Design, Data Security, Data Migration, Data Governance, Data Presentation, Descriptive Statistics, Data Store, Data Management, Relational Databases, Databases, Data Architecture, Excel Formulas, Business Intelligence
Beginner · Professional Certificate · 3 - 6 Months

University of Pennsylvania
Skills you'll gain: File I/O, Matplotlib, Object Oriented Design, Java, Object Oriented Programming (OOP), Data Analysis, Unit Testing, Pandas (Python Package), Java Programming, Eclipse (Software), Application Development, Data Visualization, Data Structures, Data Science, Data Cleansing, Debugging, Programming Principles, Computer Programming Tools, Python Programming, Computer Programming
Beginner · Specialization · 3 - 6 Months
University of California, Santa Cruz
Skills you'll gain: Go (Programming Language), File I/O, Data Structures, Programming Principles, Object Oriented Design, Object Oriented Programming (OOP), Debugging, Computer Programming, Unit Testing, C (Programming Language), Program Development, Computer Science, Software Testing, Algorithms, Code Reusability, Graph Theory, C and C++, Computational Logic, Memory Management, Software Design
Intermediate · Specialization · 3 - 6 Months

École Polytechnique Fédérale de Lausanne
Skills you'll gain: Scala Programming, Apache Spark, Apache Hadoop, Application Design, User Interface (UI), Distributed Computing, Programming Principles, Leaflet (Software), Big Data, Data Processing, Data Structures, Software Design Patterns, Functional Design, Object Oriented Design, Data Manipulation, Object Oriented Programming (OOP), Interactive Data Visualization, Scientific Visualization, Computer Programming, Algorithms
Intermediate · Specialization · 3 - 6 Months

Skills you'll gain: Software Development Life Cycle, Cloud-Native Computing, Software Architecture, Hibernate (Java), Database Design, Responsive Web Design, Docker (Software), Containerization, Git (Version Control System), GitHub, Object Oriented Programming (OOP), CI/CD, Restful API, Data Ethics, Java Programming, Model Deployment, Version Control, Database Management, Software Development, Software Design
Beginner · Professional Certificate · 3 - 6 Months

Skills you'll gain: User Research, Cascading Style Sheets (CSS), User Experience Design, Design Research, Linux Commands, Unix, Usability, Debugging, User Interface (UI), Software Visualization, Web Content Accessibility Guidelines, Pseudocode, Hypertext Markup Language (HTML), User Interface and User Experience (UI/UX) Design, Javascript, UI Components, Unit Testing, JavaScript Frameworks, Code Reusability, Application Development
Build toward a degree
Beginner · Professional Certificate · 3 - 6 Months

University of California, Santa Cruz
Skills you'll gain: C++ (Programming Language), C and C++, Object Oriented Programming (OOP), Object Oriented Design, Programming Principles, Software Design Patterns, Computer Programming, Algorithms, C (Programming Language), Software Design, Program Development, Graph Theory, Code Reusability, Computational Logic, Artificial Intelligence, Data Structures, Memory Management, File I/O, Simulations
Beginner · Specialization · 3 - 6 Months

Skills you'll gain: Object Oriented Programming (OOP), File I/O, Data Persistence, Object Oriented Design, Java, Java Programming, File Management, Memory Management, Application Development, File Systems, Maintainability, Computer Programming, Data Store, Software Design, Development Environment, Program Development, Programming Principles, Computer Programming Tools, Data Structures, Integrated Development Environments
Beginner · Specialization · 3 - 6 Months

University of California, Santa Cruz
Skills you'll gain: C++ (Programming Language), C and C++, Object Oriented Programming (OOP), Object Oriented Design, Algorithms, C (Programming Language), Programming Principles, Computer Programming, Graph Theory, Code Reusability, Memory Management, Data Structures, File I/O
Intermediate · Course · 1 - 3 Months

Skills you'll gain: Vibe coding, Prompt Patterns, AI powered creativity, Brainstorming, Planning, AI literacy, Visual Storytelling, Responsible AI, Prompt Engineering Tools, Generative AI, Data Wrangling, Data Analysis, Content Creation, Artificial Intelligence, Presentations, Business Communication, Data Visualization, Research, Project Management, Machine Learning
Beginner · Professional Certificate · 3 - 6 Months

DeepLearning.AI
Skills you'll gain: Convolutional Neural Networks, Recurrent Neural Networks (RNNs), Computer Vision, Transfer Learning, Deep Learning, Image Analysis, Model Optimization, Hugging Face, Natural Language Processing, Artificial Neural Networks, Artificial Intelligence and Machine Learning (AI/ML), Tensorflow, Applied Machine Learning, Model Training, Fine-tuning, Generative AI, Embeddings, Supervised Learning, Large Language Modeling, Artificial Intelligence
Build toward a degree
Intermediate · Specialization · 3 - 6 Months
Skills you'll gain: Data Storytelling, Performance Measurement, Digital Media Strategy, Performance Metric, Search Engine Marketing, Conversion Funnel Analysis, Data-Driven Decision-Making, Search Engine Optimization, Branding, Web Analytics and SEO, Digital Marketing, Customer Engagement, Marketing Planning, Marketing Strategies, Marketing, E-Commerce, Email Marketing, Brand Awareness, Marketing Analytics, Performance marketing
Beginner · Course · 1 - 4 Weeks