Introduction to Computer Science II (saylor.org)

Offered by Saylor.org,
Introduction to Computer Science II (saylor.org)

This course is a continuation of the first-semester course titled CS101: Introduction to Computer Science I. It will introduce you to a number of more advanced Computer Science topics, laying a strong foundation for future academic study in the discipline. We will begin with a comparison between Java—the programming language utilized last semester—and C++, another popular, industry-standard programming language.

This course is a continuation of the first-semester course titled CS101: Introduction to Computer Science I. It will introduce you to a number of more advanced Computer Science topics, laying a strong foundation for future academic study in the discipline. We will begin with a comparison between Java—the programming language utilized last semester—and C++, another popular, industry-standard programming language. We will then discuss the fundamental building blocks of Object-Oriented Programming, reviewing what we learned last semester and familiarizing ourselves with some more advanced programming concepts. The remaining course units will be devoted to various advanced topics, including the Standard Template Library, Exceptions, Recursion, Searching and Sorting, and Template Classes. By the end of the class, you will have a solid understanding of Java and C++ programming, as well as a familiarity with the major issues that programmers routinely address in a professional setting.

Upon successful completion of this course, the student will be able to:

  • Demonstrate an understanding of the concepts of Java and C++ and how they are used in Object-Oriented Programming.
  • Demonstrate an understanding of the history and development of Object-Oriented Programming
  • Explain the importance of the C++ Standard Template Library and how basic components are used.
  • Demonstrate a basic understanding of the importance of run-time analysis in programming.
  • Demonstrate an understanding of important sorting and search routines in programming.
  • Demonstrate a detailed understanding of generic programming and principles in the standard template library.
  • Demonstrate an understanding of various types used within the standard template library in C++.
  • Demonstrate an understanding of the generic usage of templates in programming for C++ and Java.
  • Compare and contrast the features of Java and C++.
Go to Class
MOOC List is learner-supported. When you buy through links on our site, we may earn an affiliate commission.

Related Courses

Linear Algebra II (saylor.org) Saylor Academy
Saylor.org

Linear Algebra II (saylor.org)

Linear algebra is the study of vector spaces and linear mappings between them. In this course, we will begin by reviewing topics you learned in Linear Algebra I, starting with linear equations, followed by a review of vectors and matrices in the context of linear equations.

Legacy Course
Self-Paced
Mobile Applications Development (saylor.org) Saylor Academy
Saylor.org

Mobile Applications Development (saylor.org)

Technology continues to evolve and provide us with increasingly powerful mobile devices. As a result, applications that can run on a browser must also be written such that they are compatible with mobile devices, the majority of which are now web-enabled. Meanwhile, there is an increasing demand for native applications that can be downloaded to and run on mobile devices. This course will address these trends, teaching you to think about the unique design and deployment issues that must be taken into consideration when developing applications for mobile devices.

Self Paced
Self-Paced
Calculus I (saylor.org) Saylor Academy
Saylor.org

Calculus I (saylor.org)

Calculus can be thought of as the mathematics of CHANGE. Because everything in the world is changing, calculus helps us track those changes. Calculus is among the most important and useful developments of human thought.

Self Paced
Self-Paced
Introduction à la théorie de Galois (Coursera) Coursera
École normale supérieure

Introduction à la théorie de Galois (Coursera)

Le cours expose la théorie de Galois, du classique critère de non-résolubilité des équations polynomiales aux méthodes plus avancées de calcul de groupes de Galois par réduction modulo un nombre premier. Le thème général de cette théorie est l'étude des racines d'un polynôme et concerne en particulier la possibilité de les exprimer à partir des coefficients de ce polynôme. Evariste Galois considère les symétries de ces racines et associe ainsi à ce polynôme un groupe de permutations de ses racines, que l'on appelle maintenant son groupe de Galois.

Nov 23rd 2026
5-12 Weeks
Multivariable Calculus (saylor.org) Saylor Academy
Saylor.org

Multivariable Calculus (saylor.org)

Multivariable Calculus is an expansion of Single-Variable Calculus in that it extends single variable calculus to higher dimensions. You may find that these courses share many of the same basic concepts, and that Multivariable Calculus will simply extend your knowledge of functions to functions of several variables.

Legacy Course
Self-Paced
Programming Mobile Applications for Android Handheld Systems: Part 2 (Coursera) Coursera
University of Maryland, College Park

Programming Mobile Applications for Android Handheld Systems: Part 2 (Coursera)

This course introduces you to the design and implementation of Android applications for mobile devices. You will build upon concepts from the prior course, including handling notifications, using multimedia and graphics and incorporating touch and gestures into your apps.

Nov 23rd 2026
5-12 Weeks