CMSC 220: Java Programming
Instructor: Dr. R. P. Webber
Office location and hours: East Ruffner 332. Hours MF, 2:00 - 3:00; T 1:30 3:00; and by appointment or coincidence. I am not normally on campus on Thursdays.
Telephone: 395-2192
Email: webberrp@longwood.edu
Course description and prerequisite: This class develops the skills for programming using the Java programming language. This is an advanced programming course and it is assumed that the student has the required programming skills acquired from previous C and C++ programming courses. Prequisite: CMSC 160 or permission of instructor. 3 credits.
Text: Cohoon and Davidson, Java 5.0 Program Design. McGraw Hill, 2004. ISBN 0-07-296113-9.
Course objectives:
Course requirements and grading:
Two tests . ... ..12% each
Assignments ...60%
Exam . .. .16%
90-100 A; 80-90 B; 70-80 C; 60-70 D; below 60 F. Plus and minus grades will ordinarily be given for grades in the upper and lower 2 points, respectively, of each range.
Assignments: Unless otherwise specified, assignments are to be done individually. You may help each other debug work, but each person is to key in his or her own program, and each person must submit each assignment individually. For programs, hand in
- a printed copy of the program and output (unless the teacher specifies otherwise)
- a listing of any input used
- external documentation as appropriate, including pseudocode and an account of testing
Non-programming assignments may be done in small groups, depending on the teachers instructions. The tests and exam will be taken individually and are closed book.
Each assignment will have a due date. It is due by the beginning of class on that date. Failure to hand it in on time will result in a penalty of 25% for each class day it is late. No assignment will be accepted after the scheduled exam period for this course for any reason. Click here to see the rubric for grading programs.
Tentative Schedule:
|
Week 1 Aug 22 26 |
Ch.1, 2: Introduction, history of Java, basic syntax |
|
Week 2 Aug 29 Sep 2 |
Ch. 3, 4: Objects, classes |
|
September 5 Labor
Day no classes |
|
|
Week 3 Sep 7 9 |
Ch. 5,6: Decisions, iteration |
|
Week 4 Sep 12 16 |
|
|
Week 5 Sep 19 23 |
GUI Interlude 1 |
|
Week 6 Sep 26 - 30 |
|
|
Week 7 Oct 3 - 7 |
|
|
Fall break October
10 - 11 |
|
|
Week 8 Oct 12 - 14 |
Catch up, review, TEST |
|
Week 9 Oct 17 21 |
|
|
Week 10 Oct 24 28 |
Ch. 10, 11: Exception handling |
|
Week 11 Oct 31 Nov 4 |
Ch. 11: Recursion |
|
Week 12 Nov 7 11 |
Ch. 12: Threads |
|
Week 13 Nov 14 18 |
Ch. 12: Threads; review, TEST |
|
Week 14 Nov 21 |
Appendix D: Applets |
|
Thanksgiving break
November 23 - 25 |
|
|
Week 15 Nov 28 Dec 2 |
Appendix D: Applets; review |
|
Friday, December 9, 8 10:30 a.m. |
FINAL EXAM |
Attendance Policy: Your attendance is expected at all classes. Makeup tests will be given reluctantly, and then only upon presentation of a doctors excuse. Makeup tests are always more difficult than regular tests, regardless of the reason of absences.
Honor Code: The teacher subscribes to the Longwood University Honor System, which, among other things, assumes you do not cheat and that you take responsibility to see that others do not. Infractions will be dealt with harshly. A student who is convicted of an Honor Code offense involving this class will receive a course grade of F, in addition to penalties imposed by the Honor Board.
Computer: Each student in the class will be assigned an account on Longwoods LINUX system. You may do your programs on this system. You may want to get a copy of Java on your PC. I recommend Sun Java. It is free, and instructions for downloading it will be distributed in class. You may use other versions of Java if you wish, but you will not be able to get help from me in implementing them. Programs must run correctly on Longwoods LINUX Java or on Sun Java to be acceptable for this class.