General course information- Syllabus Spring 2008

Mandatory Text:

Introduction to Java Programming: Fundamentals First (7th Edition)
Note: If you already own the 6th Edition you can use it for this course
Note: You do not need the comprehensive edition
By Y Daniel Liang
Published by Prentice Hall, 2008

Optional Text:

Java How to Program (7th Edition)
By Deitel and Deitel
Published by Prentice Hall, 2008

* Reference (free for NYU students via Safari):

Java in a Nutshell, 5th Edition
by David Flanagan
Publisher: O'Reilly
Pub Date: March 2005
ISBN: 0-596-00773-6

About the Course:

In this course, we will study the fundamentals of computer programming ... one of the towering intellectual achievements of the 20th century. We will design, code, and debug programs using Java as we explore these concepts.

Help: Whenever you have a question about the course material, please feel free to drop by during my office hours or write me an email message. If at any time you feel that you are falling behind or are overwhelmed by the material, let me know: I will be very happy to help you.

E-mail Accounts: All students are required to have e-mail addresses, and e-mail will be used extensively for communication with the course tutors, and for submitting the homework assignments. Your e-mail headers and mailing list subscription information must clearly display your name. Do not use an alias instead.

Class mailing list: It is an absolute requirement of this class to join the class mailing list. all important announcements will be sent to the class mailing list.

Grading & Homework

There will be two midterms and a final. Your grade will be 40 percent midterms plus 40 percent final plus 20 percent homework. If you plan to continue with computer science courses, you *MUST* get a grade of C or better in this course. No exceptions will be made.

The homework will consist of programming assignments. Style counts (that includes using meaningful names and providing sufficient comments in the body of the programs).

  • Students who spend little time on the homework invariably do poorly on exams and end up with a poor final grade.

    Cooperation, Acknowledgments and Cheating: You are expected to do your own work. It is fine, in fact often very helpful, to work cooperatively with other students, but the work you submit should be your own. If you get an idea from another student, or from a tutor, that you use in your work, this is OK, but you must acknowledge that person in the program comments. When you turn in an assignment, you are saying that you have done this work yourself. The Computer Science Department's Academic Integrity definition can be found on the web. Do not violate the rules. Disciplinary action will be taken.

    E-tutors and Computer Assignments: Our class has been assigned an e-tutor. The e-tutors are upper-level undergraduate students with exceptional academic records. They are available by e-mail to help you with questions about the computer assignments, to evaluate your submissions, and to steer you in the right direction when help is needed. Five or six programming assignments will be given. Solutions must be submitted by e-mail, on or before the due date. Your e-tutor will send you an e-mail giving a numerical grade for your program. The e-tutor will run the final program on various inputs, so it is important that the program work correctly for any choice of input.

    Remember that although the e-tutor is there to help you, she is also helping many other students, so limit your e-mail communication to a reasonable amount. If you are have much difficulty with the programs, you should ask your instructor for assistance.



    Introduction Chapter 1
    JCreator or Netbeans basics Chapter 2
    Java Primitive Types and Operations Chapter 2

    Selection Statements: if/else and switch

    Chapter 3

    Loops: while, do-while, for

    Chapter 4
    Methods Chapter 5
    Math class & Random method Chapter 5
    Arrays Chapter 6
    Strings Chapter 8
    Applets Chapter 16

    Supplemental Course Materials