Introduction to Computer Science I (saylor.org)

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

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.

This course will introduce you to the field of computer science and the fundamentals of computer programming. This course has been specifically designed for students with no prior programming experience, and taking this course does not require a background in Computer Science. We will begin with an overview of the topics we will cover this semester and a brief history of software development. This course will cover basic object-oriented programming terminology and concepts such as objects, classes, inheritance, and polymorphism in addition to discussing fundamentals of Java, its primitive data types, relational operators, control statements, exception handling and Java I/O.
Upon successful completion of this course, the student will be able to:
-Discuss the history of computing as well as fundamental hardware and software concepts.

  • Explain the programming life cycle.
  • 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.
  • Discuss and use primitive data types in Java.
  • Discuss 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 in his or her programs.
  • Use Java input/output class hierarchy to read and write data to and from external files.
Go to Class
MOOC List is learner-supported. When you buy through links on our site, we may earn an affiliate commission.

Related Courses

Programming with Scratch (Coursera) Coursera
The Hong Kong University of Science and Technology - HKUST

Programming with Scratch (Coursera)

Learning coding is not only about understanding the programming language being used, but also developing important computational thinking skills, which are useful for problem solving across many disciplinary areas. In this course, students will learn basic programming skills by creating interactive storybooks, animations, and games with Scratch, which is a block-based visual programming language for anyone new to coding.

Nov 23rd 2026
5-12 Weeks
Approximation Algorithms Part I (Coursera) Coursera
École normale supérieure

Approximation Algorithms Part I (Coursera)

How efficiently can you pack objects into a minimum number of boxes? How well can you cluster nodes so as to cheaply separate a network into components around a few centers? These are examples of NP-hard combinatorial optimization problems. It is most likely impossible to solve such problems efficiently, so our aim is to give an approximate solution that can be computed in polynomial time and that at the same time has provable guarantees on its cost relative to the optimum.

Nov 23rd 2026
5-12 Weeks
Orientação a Objetos com Java (Coursera) Coursera
Instituto Tecnológico de Aeronáutica

Orientação a Objetos com Java (Coursera)

Neste curso, assumimos que você já sabe desenvolver programas pequenos em Java, mas você talvez não se sinta ainda confortável em projetar programas mais complexos com método e organização. O objetivo deste curso é fazer você compreender os princípios de orientação a objetos por meio da linguagem Java e saber como eficientemente aplicar esses princípios na prática quando projetando e desenvolvendo software de maneira ágil. Os conceitos discutidos e experimentados por você neste curso serão a base para você poder compreender os novos conceitos apresentados nos cursos seguintes desta especialização.

Nov 23rd 2026
5-12 Weeks
Learn TypeScript (Coursera) Coursera
Scrimba

Learn TypeScript (Coursera)

Are you a proficient developer in HTML, CSS, and JavaScript, looking to elevate your technical skillset? Have you observed an increasing demand for TypeScript in the professional job market and are keen to explore its significance? Are you in search of a programming language that offers ease in readability and debugging? If the answer to any of these questions is affirmative, then you have arrived at the optimal course to advance your career.

Nov 23rd 2026
4 Weeks
Code Yourself! An Introduction to Programming (Coursera) Coursera
University of Edinburgh,Universidad ORT Uruguay

Code Yourself! An Introduction to Programming (Coursera)

Have you ever wished you knew how to program, but had no idea where to start from? This course will teach you how to program in Scratch, an easy to use visual programming language. More importantly, it will introduce you to the fundamental principles of computing and it will help you think like a software engineer.

Nov 23rd 2026
5-12 Weeks
International Cyber Conflicts (Coursera) Coursera
The State University of New York

International Cyber Conflicts (Coursera)

By nature, cyber conflicts are an international issue that span across nation-state borders. By the end of the course, you will be able to apply the knowledge gained for analysis and management of international cyber incidents and conflicts including for activities such as development of policy related to cybercrime and cyberwarfare. Management of cyber incidents and conflicts requires an interdisciplinary perspective including an understanding of: 1) characteristics of the cyber threats and conflicts themselves, 2) international efforts to reduce and improve cyber security, and 3) psychological and sociopolitical factors.

Nov 23rd 2026
5-12 Weeks
Approximation Algorithms Part II (Coursera) Coursera
École normale supérieure

Approximation Algorithms Part II (Coursera)

This is the continuation of Approximation algorithms, Part 1. Here you will learn linear programming duality applied to the design of some approximation algorithms, and semidefinite programming applied to Maxcut. By taking the two parts of this course, you will be exposed to a range of problems at the foundations of theoretical computer science, and to powerful design and analysis techniques.

Nov 23rd 2026
4 Weeks