Course Syllabus

Welcome to CS102: Introduction to Computer Science II

Specific information about this course and its requirements can be found below. For more general information about taking Saylor Academy courses, including information about Community and Academic Codes of Conduct, please read the Student Handbook.

 

Course Description

Explore this detailed survey of computing and programming, with an emphasis on understanding object-orientation and the Java and C++ computer programming languages. We will use history, theory, and practice to deliver lessons that prepare you for a career in computer science.

 

Course Introduction

This course is a continuation of 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 study and achievement in the discipline. We will begin with a comparison between Java, the programming language used in the previous course, and C++, another popular, industry-standard programming language. We will then discuss the fundamental building blocks of Object-Oriented Programming, reviewing what we have already learned, while familiarizing ourselves with more advanced programming concepts. The remaining course units will be devoted to various topics, including the Standard Template Library, Containers, Exceptions, Recursion, Searching and Sorting, and generic programming. 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.

This course includes the following units:

  • Unit 1: The Building Blocks of Object-Oriented Programming
  • Unit 2: C++ and Java Differences
  • Unit 3: C++ Standard Template Library
  • Unit 4: Java Container Library
  • Unit 5: Exceptions
  • Unit 6: Recursion
  • Unit 7: Searching and Sorting

 

Course Learning Outcomes

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

  • explain the common computational elements for creating algorithms;
  • compare and contrast the features of Java and C++;
  • explain the importance of Java Containers and how their basic components are used;
  • explain the importance of the C++ Standard Template Library and how its basic components are used;
  • understand important common algorithms, such as sorting and search;
  • evaluate programs using run-time analysis;
  • explain the drawbacks and benefits of recursion; and
  • solve simple problems by applying computational elements, algorithms, containers, and templates in a programming process, including problem statement, algorithm design, program construction, and solution analysis.

Throughout this course, you will also see learning outcomes in each unit. You can use those learning outcomes to help organize your studies and gauge your progress.

 

Course Materials

This course's primary learning materials are articles, lectures, and videos.

All course materials are free to access and can be found in each unit of the course. Pay close attention to the notes that accompany these course materials, as they will tell you what to focus on in each resource, and will help you to understand how the learning materials fit into the course as a whole. You can also see a list of all the learning materials in this course by clicking on Resources in the navigation bar.

 

Evaluation and Minimum Passing Score

Only the final exam is considered when awarding you a grade for this course. To pass this course, you will need to earn a 70% or higher on the final exam. Your score on the exam will be calculated as soon as you complete it. If you do not pass the exam on your first try, you may take it again as many times as you want, with a 7-day waiting period between each attempt. Once you have successfully passed the final exam you will be awarded a free Course Completion Certificate.

There are also end-of-unit assessments in this course. These are designed to help you study, and do not factor into your final course grade. You can take these as many times as you want until you understand the concepts and material covered. You can see all of these assessments by clicking on Quizzes in the course's navigation bar.

 

Tips for Success

CS102: Introduction to Computer Science II is a self-paced course, which means that you can decide when you will start and when you will complete the course. There is no instructor or an assigned schedule to follow. We estimate that the "average" student will take 51 hours to complete this course. We recommend that you work through the course at a comfortable pace that allows you to make regular progress. It's also a good idea to schedule your study time in advance and try to stick to that schedule as best as you can.

Learning new material can be challenging, so we've compiled a few study strategies to help you succeed:

  • Take notes on the various terms, practices, and theories that you come across. This can help you put each concept into context and will create a refresher that you can use as you study later on.
  • As you work through the materials, take some time to test yourself on what you remember and how well you understand the concepts. Reflecting on what you've learned is important for your long-term memory and will make you more likely to retain information over time.

 

Suggested Prerequisites

To take this course, you should:

 

Technical Requirements

This course is delivered entirely online. You will be required to have access to a computer or web-capable mobile device and have consistent access to the internet to either view or download the necessary course resources and attempt any auto-graded course assessments and the final exam.

  • To access the full course including assessments and the final exam, you will need to be logged into your Saylor Academy account and enrolled in the course. If you do not already have an account, you may create one for free here. Although you can access some of the course without logging in to your account, you should log in to maximize your course experience. For example, you cannot take assessments or track your progress unless you are logged in.

For additional guidance, check out Saylor Academy's FAQ.

 

Fees

This course is entirely free to enroll in and to access. Everything linked in the course, including textbooks, videos, webpages, and activities, is available for no charge. This course also contains a free final exam and course completion certificate.

Last modified: Wednesday, January 3, 2024, 3:32 PM