CSE 160: Computer Science A: Honors

(Procedural and object-oriented programming)

Spring 2025

Schedule and Lecture Notes

Instructor: Dr. Paul Fodor

http://www.cs.stonybrook.edu/~cse160


Course Description

First part of a two-semester sequence, CSE 160 and CSE 260. An introduction to procedural and object-oriented programming methodology and basic data structures. Topics include program structure, conditional and iterative programming, procedures, arrays, object classes, encapsulation, information hiding, inheritance, polymorphism, file I/O, exceptions and simple data structures, such as lists, queues and stacks. (https://www.cs.stonybrook.edu/students/Undergraduate-Studies/courses/CSE160)

See Syllabus here (or in the above menu).


YouTube channel for past semesters: https://www.youtube.com/playlist?list=PLRvJ_2dlxL9F4AR-FIOt5hWLoeI4PEfa7 (from Spring 2021), https://www.youtube.com/playlist?list=PLRvJ_2dlxL9ECXq1DQyABaCjHOUlpXl00 (from Summer 2018), https://youtube.com/@stonybrookcs , https://www.youtube.com/@stonybrookcs/playlists (other courses that I taught).

Staff

Instructor: Dr. Paul Fodor
New Computer Science Department, room 214, Stony Brook University, 100 Nicolls Rd, NY 11733
Office hours: Mondays and Wednesdays 11am-12:30pm in my office or on Google Meet: https://meet.google.com/xyu-jhqc-bdx
Email: paul.fodor@stonybrook.edu
Phone: (631) 632-9820


Class Time and Place

  • CSE 160: Computer Science A: Honors (Lecture): MoWe 9:30-10:50am, Computer Science 2120.
  • CSE 161: Laboratory for Computer Science A: Honors: MoWe 11:00am-12:20pm, Computer Science 2120.

Lecture Notes and Reading Assignments

The following schedule is tentative and subject to change. The homework assignments, labs and exams are posted on Brightspace: http://Brightspace.stonybrook.edu

Week Date Lecture Topics/Notes Readings
1 Mo. 1/27 Administrative (course information) n/a
We. 1/29 Introduction to Computers, Programs, and Java Read Liang ch. 1
2 Mo. 2/3 Introduction to Computers, Programs, and Java (cont.) n/a
We. 2/5 Elementary Programming Read Liang ch. 2
3 Mo. 2/10 Elementary Programming (cont.) n/a
We. 2/12 Selections Read Liang ch. 3
4 Mo. 2/17 Mathematical Functions, Characters, and Strings Read Liang ch. 4
We. 2/19 Loops Read Liang ch.5
5 Mo. 2/24 Methods Read Liang ch. 6
We. 2/26 Arrays Read Liang ch. 7
6 Mo. 3/3 Arrays (cont.) n/a
We. 3/5 Multidimensional Arrays Read Liang ch. 8
7 Mo. 3/10 Midterm 1 review n/a
We. 3/12 MIDTERM EXAM 1: closed book in-person exam, in classroom, during class time (80 minutes) n/a
8 Mo. 3/17 Spring recess (no class) n/a
9 Mo. 3/24 Objects and Classes Read Liang ch. 9
We. 3/26 Object and Classes (cont.) n/a
10 Mo. 3/31 Object-Oriented Thinking Read Liang ch. 10
We. 4/2 Inheritance and Polymorphism Read Liang ch. 11
11 Mo. 4/7 Inheritance and Polymorphism (cont.) n/a
We. 4/9 Exception Handling and Text I/O Read Liang ch. 1
12 Mo. 4/14 Abstract Classes and Interfaces Read Liang ch. 13
We. 4/16 Midterm 2 review n/a
13 Mo. 4/21 MIDTERM EXAM 2: closed book in-person exam, in classroom, during class time (80 minutes) n/a
We. 4/23 Abstract Classes and Interfaces (cont.) n/a
14 Mo. 4/28 Abstract Classes and Interfaces (cont.) n/a
We. 4/30 Recursion Read Liang ch. 18
15 Mo. 5/5 Recursion (cont.) n/a
We. 5/7 Final review. Optional (if time permits): JavaFX Basics, Event-Driven Programming, JavaFX UI Controls and Multimedia, Binary IO Read Liang chs. 14, 15, 16 and 17
Final exam   FINAL EXAM: Wednesday, May 14, 2025, 11:15am-1:15pm (120 minutes), closed book in-person exam, in classroom n/a

Page maintained by Paul Fodor