Instructor: Prof. Megan Owen
E-mail: megan.owen@lehman.cuny.edu
Phone: 718-960-7423
Office hours: TBD Course time: Tuesdays and Thursdays 11:00am - 12:40pm

Installing Java 8 and the Eclipse IDE

  1. Download and install the Java Development Kit (JDK) from Oracle for Java 8. Make sure you download the Java Development Kit (JDK), not the Java Runtime Environment (JRE).
  2. Download and run the Eclipse Installer here. Select "Eclipse IDE for Java Developers" during the installation.
Java and Eclipse are also available on certain computers in the Academic IT Center and the math lab.

Link to extra help resources, practice problems, and old quizzes and exams

Textbook:

Programming in Java by Roman Lysecky, Adrian Lizarraga, Frank Vahid, and Amy McGorven (ZyBooks)
To access and purchase this textbook:
1. Sign up at https://zybooks.zyante.com
2. Enter zyBook code LehmanCMP326Spring2016
3. Click Subscribe

Homework:

All problem sets should be submitted on Mimir.
To join the course on Mimir:
1. Go to mimirplatform.io
2. Click on the Login button (upper right corner) and create an account.
3. Once you are logged in, click on "Join a course" and enter the course code: 111d04d377

Grading:

Homework 25%
Project 15%
Quizzes 10%
Midterm 20%
Final 30%
You must pass the final to pass the course.

Syllabus

Academic Integrity Policy

Outline:

Date: Topics: Textbook sections:
#1
Tues 2 February
Review of campus computer policy and academic integrity code.
Overview of Eclipse. Begin programming in Java! Functions, types, basic math, if-else, I/O
1.3, 1.4, 2.1, 3.1, 6.1, 6.2
#2
Thurs 4 February
boolean in Java, intro to recursion 2.9, 3.4, 6.3, 8.1, 8.2
Tues 9 February Classes follow a Friday schedule
#3
Thurs 11 February
More math recursion (Fib, factorial), Strings (indexOf, charAt,substring,using with Scanner) 2.12, 3.8, 8.4, 8.5
#4
Tues 16 February
Intro to classes (using a class, instantiating default constructor, defining non-static methods), Strings cont'd 2.17, 3.9, 7.1, 7.2
#5
Thurs 18 February
Recursion with print statements, classes continued (getters and setters, toString)Quiz 1 7.3, 8.6
#6
Tues 23 February
Classes continued (constructors), while loop 4.1, 4.2, 7.4, 7.5
#7
Thurs 25 February
Debugging, for loops 2.17, 4.4, 4.5, 7.6
#8
Tues 1 March
More classes (referencing and this)Quiz 2 7.7 (objects and references), 7.8 (this), 7.10 (primitves and references), 7.16 (parameters of references)
#9
Thurs 3 March
Loop practice 4.6 (counting), 4.7 (for loops)
#10
Tues 8 March
Arrays 7.2 (Arrays), 7.3, 7.4 (iterating through arrays)
#11
Thurs 10 March
Quiz 3
#12
Tues 15 March
#13
Thurs 17 March
#14
Tues 22 March
Quiz 4
#15
Thurs 24 March
Review for midterm
#16
Tues 29 March
Midterm
#17
Thurs 31 March
Midterm recap, intro to project, intro to inheritance
#18
Tues 5 April
Inheritance
#19
Thurs 7 April
Abstract classes Quiz 5
#20
Tues 12 April
Interfaces
#21
Thurs 14 April
File I/O
#22
Tues 19 April
Recursion review Quiz 6
#23
Thurs 21 April
Recursion and objects
22-30 April Spring recess: no classes
#24
Tues 2 May
Exceptions
#25
Thurs 4 May
Searching and sorting: selection sort, binary search Quiz 7
#26
Tues 10 May
Searching and sorting: insertion sort, merge sort
#27
Thurs 12 May
Project in-class code review, review for final exam
#28
Tues 17 May
Review for final exam, Project in-class code reviews
Thurs 26 May Final exam 11am - 1pm