Computer Science
>
>

CSE 142 Computer Programming I

Course Page

Overview

This course provides an introduction to programming using the Java programming language. We will explore common computational problem-solving techniques useful to computer scientists, but also to anyone who has large data sets, repetitive processes or other needs for computation. No prior programming experience is assumed, although students should know the basics of using a computer (e.g., using a web browser and a text editor) and should be comfortable with math through Algebra 1. Students with significant prior programming experience should consider skipping CSE 142 and taking CSE 143.

Prerequisites

No data.

Learning objectives

CSE 142 is organized around five key learning objectives. At the end of the course, students will be able to do the following:

  1. Functionality/Behavior: Write functionally correct Java programs that meet a provided specification and/or solve a specified problem
  2. Functional Decomposition: Break down problems into subproblems that are modular and reusable, and define methods to represent those subproblems
  3. Control Structures: Select and apply control structures (e.g. methods, loops, conditionals) to manage the flow of control and information in programs
  4. Data Abstraction: Select and apply basic data abstractions (e.g. variables, parameters, arrays, classes) to manage and manipulate data in programs
  5. Documentation and Readability: Define programs that are well-written, readable, maintainable, and conform to established standards

Textbooks and other notes

Other courses in Computer Programming

Courseware availability

Lecture slides available at Calendar

No videos available

Take-home assessments available at Take-home Assessments

Suggested readings available at Code Quality Guide

Covered concepts