Fall 2016 CS101 Section 3

(Monday. Wednesday. 11:00 12:15pm @ WWH 102)

Weekly schedule

 

Course Name: Introduction to Computer Science --- Click here for course syllabus

Instructor: Anasse Bari, Ph.D.

Class Number and Section: CS101 Section 3

(M. W. 11:00 12:15am @ WWH 102)

Tutors office hours: Click here for a detailed schedule

Instructor office hours: Monday 12:30 to 2pm and Tues. 11:00am to 12:30pm @WWH 425

Important Dates:

Midterm Exam#1 will be on Monday October 10th 2016

Midterm Exam#2 will be on Monday November 14th, 2016

Tentative Date for Final Exam

Tuesday, 13th of December 2016 or the week of the 19th of December 2016 (TBA)

 

 

 

Date

Topics Covered, handouts and Resources

Assignments

Wed Sept 7

 

Welcome to CS101

 

Motivation Behind Learning Computer Programming

 

Syllabus and Course Policies Discussion

 

Chapter#1 Intro to Computer Science, Programming and Java.

 

Python to Java Guide

 

Read Chapter#1 from the book.

 

Read about Eclipse and try to install it (Installation Guide is mentioned in Chapter#2 lecture notes)

Monday Sept 12

Continuation of Chapter#1

 

Chapter#2 Your First Java Program Using Eclipse

 

Read Chapter#1 and Chapter#2 from the book.

 

Install Eclipse (you will find detailed instructions and videos on Chapter#2 ppt)

 

HW#1 posted on NYU Classes. Due Date Thurs 15th of September @ 5:00pm

 

QUIZ on Wed. 14th

 

 

Wed. Sept 14

Chapter#3 Expressions, Variables, Input output using Scanner, Introduction to Strings in Java

 

Programs: Detailed Program with Comments on Adding Two Numbers in Java

 

Sample Program 1

Sample Program 2

 

Python to Java Guide

 

 

Read Chapter#1 and Chapter#2 from the book.

Start Reading Chapter#3 from the book

Review the lecture notes and the programs we did in class.

Re-do practice zero (you do not to submit it or return it back)

Quiz

HW#2 is posted on NYU classes. Due Date Thus. the 22nd @ 5pm

I need you to bring to class at 11am on Monday the 19th a one-page summary (in your own words)

hand-written of Chapter 3 from the book. (NO extension)

 

Monday Sept 19

Practice One

Review of Chapter#3

Chapter#4: Words and Numbers in Java

 

Conditional Statements

 

Chapter#5: Control Statements

 

 

 

Read Chapter#1,2 and 3 from the book

Complete Practice One (you do not need to submit it or return it back), we will continue the corrections next session.

 

Wed. Sept 21th

Continuation of Chapter#5 and #4

Chapter#6: Looping Statements

Read chapter#4 and #5 from the book.

 

Mon. Sept 26rd

Chapter#6 Looping Statements

In class Practice Two on Loops

Bring a hand-written summary of chapter 5 in no more than one page (one side) NO extension and it is optional. Due in class Mon. 26th of Sept.

Start on Practice Two

HW#3 is posted on NYU classes. Due Date is Oct 3rd @12noon

Wed. 26th

Finishing Practice Two

 

 

Mon. 3rd Oct

Chapter#7 Methods in Java

Bring a hand-written summary of chapter 6 in no more than one page (one side) NO extension and it is optional. Due in class Mon. 3th of Oct.

Homework 4 is due Oct 11th at midnight

Practice Set Three

 

Wed 12th

Chapter#8 Arrays in Java

HW#5 Due Monday 17th at 11:59pm

Wed 12th - Mon

Chapter#8 Arrays in Java & Practice Set Four

Practice Set Four

Mon 17th

Review and Intro to OOP

 

Wed.19th

Exam#1

HW#6 Due on Nov 7th  at 11:59pm (No Extension will be offered. Late Penalty will be strictly applied. Please Start now)

Mon. 24th Wed 26th

Practice Five: Intro to Object Oriented Programming

 

Lecture Notes: Chapter nine Introduction to Object Oriented Programming Paradigm

 

In Class Programming and Introduction (Important to program the code mentioned in the practice)

 

Quiz on M Nov 2st

 

Read Chapter 9 (Optional summary due M  Nov 2nd)

Nov 1st Nov 14th

Chapter 10 Working with Objects and Classes

 

 

Chapter 11 Main Pillars of OOP

 

Additional Notes

 

 

 

Read Chapter 10 and 11 and Chapter 13. Make sure you go over the code in the book and you code it on Eclipse.

 

Homework 7 Due on 23rd (This Homework will prepare for Exam Two) Start now.

 

 

Exam 2 on Nov 21nd

Topics include and NOT limited to: Arrays, Methods, OOP, Inheritance, Polymorphism, Interfaces, Abstract Class, Stack, Method Overriding (etc)

Practice 6 and solutions by Nicholas Cheung (Credits)

Nov 26th – Dec 9th

Chapter 12 Processing and Graphical User Interfaces

 

You must go over the site: https://processing.org/

 

Practice Examples

Installation Guide

 

Homework 8 Due Dec 10th

 

Extra Exercises (as preparation for the final)

 

In class review.

Until the rest of semester

Code Examples of Abstract Classes, Sorting and Compare To…

 

 

 

 

Exceptions in Java

 

Array Lists in Java

 

Enum Types in Java

 

Take home quiz and review

 

Final Exam Topics are and NOT LIMITED TO: OOP, Interfaces, Abstract Classes, Protected, Private, Public, Array and 2D Arrays, Tracing Code (understanding sorting), Binary Search, Exception in Java (what is an exception and how to handle it (try… catch code)), Basics of Processing (PApplet inheritance and method overriding), pass by reference and pass by value, immutable objects, reference types, dynamic biding, Arraylists, CompareTo, Comparable, Sorting Objects and Enum Types (what are they and examples Enum Types in Java