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 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 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 at this link.
Some parts of this course may have been created or reviewed with the support of artificial intelligence (AI). To make sure you receive accurate, high-quality, and academically sound learning materials, all AI-assisted content is carefully checked and approved by Saylor Academy's faculty and subject matter experts.
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 grade of 70% or higher on the final exam.
Your score on the exam will be calculated as soon as you complete it. Be sure to study in between each attempt! If you do not pass the exam, you will not complete this course or receive a certificate of completion. You can attempt the exam as many times as you want.
There are end-of-unit assessments in this course that are designed to help you study and do not factor into your final course grade. You can take them as many times as you want until you understand the concepts they cover.
You can see all of these assessments at this link.
Continuing Education Credits
The certificate earned by passing this self-paced course displays the program hours you completed and continuing education credits (CEUs). CEUs document successful completion of courses that are designed to improve the knowledge and skills of working adults. Many industries value CEUs, and now your certificate reflects them clearly, and they may be used to support career advancement or to meet professional licensing standards. This course contains 5.1 CEUs.
Tips for Success
CS102: Introduction to Computer Science II is a self-paced course, meaning you can decide when to start and complete the course. We estimate the "average" student will take hours to complete. We recommend studying at a comfortable pace and scheduling your study time in advance.
Learning new material can be challenging, so here are a few study strategies to help you succeed:
- Take notes on terms, practices, and theories. This helps you understand each concept in context and provides a refresher for later study.
- Test yourself on what you remember and how well you understand the concepts. Reflecting on what you've learned improves long-term memory retention.
Technical Requirements
This course is delivered entirely online. You will need access to a computer or web-capable mobile device and consistent internet access to view or download resources and complete auto-graded assessments and the final exam.
To access the full course, including assessments and the final exam, log into your Saylor Academy account and enroll in the course. If you don't have an account, you can create one for free here. Note that tracking progress and taking assessments require you to log in.
For more details and guidance, please review our complete Technical Requirements and our student Help Center.
Optional Saylor Academy Mobile App
You can access all course features directly from your mobile browser, but if you have limited internet connectivity, the Saylor Academy mobile app provides an option to download course content for offline use. The app is available for iOS and Android devices.
Fees
This course is entirely free to enroll in and access. All course materials, including textbooks, videos, webpages, and activities, are available at no charge. This course also contains a free final exam and a free course completion certificate.