Introduction to Computer Science I

Purpose of Course  showclose

This course will introduce you to the field of computer science and the fundamentals of computer programming. Introduction to Computer Science I is specifically designed for students with no prior programming experience, and taking this course does not require a background in Computer Science. This course will touch upon a variety of fundamental topics within the field of Computer Science and will use Java, a high-level, portable, and well-constructed computer programming language developed by Sun Microsystems (now Oracle), to demonstrate those principles. We will begin with an overview of the course topics as well as a brief history of software development. We will cover basic object-oriented programming terminology and concepts such as objects, classes, inheritance, and polymorphism, as well as the fundamentals of Java, its primitive data types, relational operators, control statements, exception handling, and file input /output. By the end of the course, you should have a strong understanding of the fundamentals of Computer Science and the Java programming language. This course will lays groundwork for a strong educational in Computer Science and a successful career devoted to implementing the principles you will learn as you progress through the CS major.

This course provides students the opportunity to earn actual college credit. It has been reviewed and recommended for 3 credit hours by The National College Credit Recommendation Service (NCCRS). While credit is not guaranteed at all schools, we have partnered with a number of schools who have expressed their willingness to accept transfer of credits earned through Saylor. You can read more about our NCCRS program here.

National College Credit Recommendation Service

Course Information  showclose

Welcome to Introduction to Computer Science I. Below you will find some general information on the course and its requirements.

Primary Resources: This course is composed of a range of different free online materials. However, the course makes primary use of the following materials: Requirements for Completion: In order to complete this course, you will need to work through each unit and all of its assigned materials. Pay special attention to Unit 1, as this introduction lays the groundwork for understanding the more advanced, exploratory material presented in latter units. You will also need to complete the Final Exam.
Note that you will only receive an official grade on your Final Exam. However, in order to adequately prepare for this exam, you will need to work through all of the resources in each unit.
In order to pass this course, you will need to earn a 70% or higher on the Final Exam. Your score on the exam will be tabulated as soon as you complete it. If you do not pass the exam, you may take it again.
Time Commitment: Completing this course should take you a total of 94.5 hours. Each unit includes a time advisory that lists the amount of time you are expected to spend on each subunit. These advisories should help you plan your time accordingly. It might be useful to take a look at these time advisories and to determine how much time you have over the next few weeks to complete each unit, and then to set goals for yourself. For example, Unit 1 should take you 16.5 hours. Perhaps you can sit down with your calendar and decide to complete Subunit 1.1 (a total of 3 hours) on Monday; Subunit 1.2.1 (a total of 2 hours and 30 minutes) on Tuesday; Subunits 1.2.2 and 1.2.3 (a total of 4.25 hours) on Wednesday; etc.
Tips/Suggestions: As you read or view resources, take careful notes on a separate sheet of paper. These notes will be useful to use as a study guide when you prepare for the Final Exam. 

Khan Academy  
This course features a number of Khan Academy™ videos. Khan Academy™ has a library of over 3,000 videos covering a range of topics (math, physics, chemistry, finance, history and more), plus over 300 practice exercises. All Khan Academy™ materials are available for free at

A version of this course is also available in iTunes U.
Preview the course in your browser or view all our iTunes U courses.  

Learning Outcomes  showclose

Upon successful completion of this course, the student will be able to:
  • describe the history of computing;
  • describe fundamental hardware and software concepts;
  • explain how the JVM translates Java code into executable code;
  • explain Object-Oriented Programming concepts such as objects, classes, inheritance and polymorphism;
  • write simple programs using basic Java concepts;
  • describe and use primitive data types in Java;
  • describe and use logical and relational operators and compare Boolean expressions;
  • explain and use various control structures such as methods, decision statements, and loops;
  • use exception handling mechanism; and
  • use Java input/output class hierarchy to read and write data to and from external files. 

Course Requirements  showclose

In order to take this course, you must:

√    have access to a computer;

√    have continuous broadband Internet access;

√    have the ability/permission to install plug-ins or software (e.g. Adobe Reader or Flash);

√    have the ability to download and save files and documents to a computer; 

√    have the ability to open Microsoft files and documents (.doc, .ppt, .xls, etc.);

√    have competency in the English language; and

√    have read the Saylor Student Handbook.

Unit Outline show close