CS& 141: Computer Science I: Java

Class Program
Distribution
Specified Elective
Credits 5 Lecture Hours 22 Lab Hours 66
An introduction to computer programming using the Java programming language. Students learn algorithm development and computational problem solving while writing Java programs. Language features that are studied include keywords, variables, data types, control structures, arrays, methods, classes, and objects.

Prerequisites

MATH& 141 or concurrent enrollment.
Course Outcomes

Upon successful completion of the course, students should be able to demonstrate the following knowledge or skills:

  1. Identify the relationship between programming, hardware, and software.
  2. Read, write, compile, execute and debug Java programs.
  3. Utilize predefined code libraries (APIs) when building programs.
  4. Define variables and objects use them appropriately in statements and expressions.
  5. Use common data types and the operations that are defined on those types.
  6. Use arithmetic, relational, and logical operators to develop complex expressions.
  7. Apply control structures (sequence, decision, and repetition) to correctly control the flow of a program.
  8. Create methods to modularize a problem into smaller, manageable parts.
  9. Utilize Arrays, ArrayLists and their methods to define and manipulate collections of data.
  10. Implement basic classes with constructors, instance fields, and methods.
Institutional Outcomes
IO1​ Communication: Students will be able to communicate clearly and effectively within a workplace context
IO2 ​Quantitative Reasoning: Analyze and solve computational problems using a modern program language
Course Content Outline
  1. ​Development environment setup and first program
  2. Statements, expressions, data types, variables, values, operations
  3. Program modularization using methods
  4. If statements and conditional expressions
  5. Repetition / iteration using for and while loops
  6. String objects and indexing
  7. Simple data structures using Arrays and ArrayLists
  8. Data abstraction using basic classes and objects