Learn the basics of in-demand skills like programming, information technology, software engineering, systems architecture and management, and networking. You can earn a free certificate of completion for any of these online Computer Science courses, or use many of them to earn credit in leading computer science, information technology, and cybersecurity college programs. 

In our Computer Science courses, you will learn to:

  • write programs using Object-Oriented Programming concepts such as objects, classes, inheritance and polymorphism;
  • apply the object-oriented methodology in software engineering to create UML artifacts for software analysis, requirements, design, and testing; and
  • learn project management concepts in a software engineering environment to manage projects, people, and products.

  • Time: 52 hours
  • Free Certificate
Explore the basic concepts, nomenclature, and historical perspective of computers and computing, and principles of software development and Object-Oriented Programming.

  • Time: 42 hours
  • Free Certificate
Survey the world of computers, computing, and programming, with a detailed emphasis on Object-Oriented Programming and an exploration of different programming languages.

  • Time: 40 hours
  • Free Certificate
Learn the C++ computer programming language, with a focus on syntax for primitive types, control structures, vectors, strings, structs, classes, functions, file I/O, exceptions, and other programming constructs.

  • Time: 38 hours
  • Free Certificate
Survey basic abstract data types, their associated algorithms, and how they are implemented. Topics discussed include the structures of stacks, queues, lists, sorting and selection, searching, graphs, and hashing; performance tradeoffs of different implementations; and asymptotic analysis of running time and memory usage.

  • Time: 44 hours
  • Free Certificate
Learn discrete mathematics in a way that combines theory with practicality. Major topics include single-membership sets, mathematical logic, induction, proofs, counting theory, probability, recursion, graphs, trees, and finite-state machines.

  • Time: 48 hours
  • Free Certificate
Explore hardware/software components, assembly language, and the functional architecture and design of computers, with a focus on topics like instruction sets, processor arithmetic and control, Von Neumann architecture, pipelining, memory management, storage, and input/output.

  • Time: 45 hours
  • Free Certificate
Learn how to apply an engineering approach to computer software design and development by focusing on topics like life cycle models, software requirements, specification, conceptual model design, detailed design, validation and verification, design quality assurance, software design/development environments, and project management.

  • Time: 120 hours
  • Free Certificate
Examine how operating systems and design have evolved as changes in hardware and software led to contemporary operating systems. Topics include basic OS concepts, methods of OS design and construction, process coordination, management, and algorithms for CPU scheduling, memory, and general resource allocation.

  • Time: 60 hours
  • Free Certificate
Explore the hardware, software, and architectural components involved in computer communications in local area networks. Topics include the basics of computer networks, switching, routing, protocols, and security.

  • Time: 42 hours
  • Free Certificate
Learn about database architecture and implementation by exploring Structured Query Language (SQL), including topics like file structures and access methods; database modeling, design, and user interface; the components of database management systems; and information storage and retrieval.