
EDUCBA
Skills you'll gain: Apple iOS, iOS Development, Model View Controller, Mobile Development, Swift Programming, Software Architecture, Maintainability, Application Design, Memory Management, Application Development, Web Applications, Web Components, Web Services, Real Time Data, Web Design and Development, Web Development, UI Components, Project Implementation, Data Validation, Design
Beginner · Specialization · 1 - 3 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 (253) · Intermediate · Specialization · 3 - 6 Months
Skills you'll gain: Embedded Software, C (Programming Language), Embedded Systems, Debugging, Peripheral Devices, Memory Management, Integrated Development Environments, Computer Programming Tools, Development Environment, System Programming, Software Development Tools, Program Development, Hardware Architecture, Systems Architecture, Eclipse (Software), Data Structures, Build Tools, C and C++, Programming Principles, Microarchitecture
★ 4.4 (298) · Intermediate · Specialization · 3 - 6 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, Test Case, System Programming, Computer Programming, Data Structures, Software Development, C and C++, Software Engineering, Problem Solving, Software Design
★ 4.6 (7.5K) · Beginner · Specialization · 3 - 6 Months

University of California, Santa Cruz
Skills you'll gain: C++ (Programming Language), 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
★ 4.5 (9.6K) · Beginner · Specialization · 3 - 6 Months

University of California, Irvine
Skills you'll gain: Objective-C (Programming Language), iOS Development, Apple iOS, Memory Management, Prototyping, Mobile Development, C and C++, Application Development, C (Programming Language), Object Oriented Programming (OOP), Computer Programming, Programming Principles, Data Structures
★ 4.6 (558) · Mixed · Course · 1 - 4 Weeks

Dartmouth College
Skills you'll gain: Embedded Software, Embedded Systems, C (Programming Language), System Programming, Microarchitecture, Hardware Architecture, Software Design, C and C++, Computer Architecture, Maintainability, Event-Driven Programming, Debugging, Computer Hardware, Memory Management, Code Reusability, Secure Coding, Programming Principles, Data Structures, Peripheral Devices, Data Storage
Intermediate · Course · 1 - 3 Months

Skills you'll gain: Swift Programming, Apple Xcode, iOS Development, Apple iOS, Data Structures, Programming Principles, Mobile Development, Code Reusability, Data Storage, Application Development, Object Oriented Programming (OOP), Development Environment, Computer Programming, Web Development
★ 4.7 (275) · Beginner · Course · 1 - 3 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 (451) · Beginner · 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 (101) · Intermediate · Course · 1 - 4 Weeks

University of California, Irvine
Skills you'll gain: Embedded Software, Embedded Systems, Debugging, C (Programming Language), C and C++, Electronic Components, Computer Hardware, Integrated Development Environments, Programming Principles, Computer Programming, Electronics Engineering, Program Development, Software Installation, Development Environment, Digital Communications, Build Tools
★ 4.7 (7.2K) · Mixed · Course · 1 - 4 Weeks
University of California, Santa Cruz
Skills you'll gain: Programming Principles, Program Development, Computational Logic, Memory Management
★ 4.5 (6.8K) · Beginner · Course · 1 - 3 Months