Udel CISC370-010 2001J OOP, Java, and the WWW Syllabus

UDel CISC370-010 2001J Info

Class Time:MW 5:00-7:00pm , Place:303 Gore Hall
Instructor TA
Ben Miller Seth Morecraft
Office:122 Evans Hall 113 Evans Hall
Mail Box:140 Evans Hall
Email:bmiller@eecis.udel.edu morecraf@eecis.udel.edu
Web: http://www.eecis.udel.edu/~bmiller http://www.eecis.udel.edu/~morecraf
Office Hours: by appointment TR 10-11am

Objective: We will study object-oriented programming with Java and look at both the WWW and other realistic applications. Special attention will be paid to the networking capabilities and GUI features of Java.

Prerequisites: CISC220 -- Data Structures, and a good knowledge of C++.

Textbooks
Java Version: We will be using JDK 1.3.1. Add the following line to your .cshrc file to use that version of java on the composers (strauss and mahler):
   setenv PATH "/usr/jdk1.3/bin:${PATH}"
Then after a 'source .cshrc', or the next time you login, java -version should include java version "1.3.1" in the output.

You can also download it yourself from http://java.sun.com/j2se/1.3/ for other platforms you may use.

Course Outline: Items to be covered each day will be available on the web at http://www.eecis.udel.edu/~bmiller/cis370/.   And at the end of this document.

Grading: There will be six programming assignments, a short report and presentation on a web/java technology, and a final exam.

Grade Weightings Grade Distribution
Item Percentage Letter Grade Percentage
Programming Projects 60 A >= 90
report and presentation 10 B 80 - 89
Final Exam 25 C 70 - 79
Class Participation 5 D 60 - 69
F < 60
+/- grades will also be given, the above is just an approximation. Factors, such as, class participation and punctual completion of homework can help raise a borderline grade. Some of the items may also have extra credit possible.

Assignments are due at the start of the class specified on the assignment. Part of college is learning time management. You should start assignments early enough, take care of questions early on and plan on finishing by the due date. Late assignments will be penalized 20% for one day late (including submissions after class the day the assignment is due), 50% for two days late, and 100% for three or more days late. Submission time will be determined by the time handed in to the instructor or TA. Late submissions may be emailed to the TA, days are counted at midnight (except the first day late, which is counted at the beginning of class), but a hard copy will also need to be turned in to be graded. If you suspect an error in grading either see the instructor or TA within one week of receiving your graded assignment.

The final exam will be closed book, closed notes. It is a test of what you have learned, not how well you can look things up. If you miss an exam you will receive a ZERO, no makeup unless previously excused due to illness, etc. No early exam will be given unless arranged at least 3 weeks ahead of time for a very good reason.

Programming assignments will require a hard copy of the code, sample output and any sample data to be turned in. It is expected that students will turn in well structured code with well chosen variable names and appropriate documentation. Failure to do this will result in points being deducted. What you turn in will be graded (i.e. files left out cannot/will not be graded). In some cases the TA or instructor may ask the student to email part or all of the project or to put part of the assignment on a webpage. Note: your actual source code should not go on a webpage.

All assignments should be turned in neat and stapled with no blue print header sheets. Names should be clearly visable on the first sheet and any extra credit done should be clearly indicated.

Academic Dishonesty: While working on a program, you may consult with the instructor, TA, classmates, friends, etc., but the actual programming that you hand in MUST be your OWN work. You may discuss in GENERAL terms the GENERAL approach to solving a programming problem. Once the discussion gets down to specific programming issues such as names and types of variables to use, control structures such as loops, if-then-else statements, you must end any collaboration.

Specifically, you may NOT:

Any evidence of performing any form of academic misconduct will be appropriately handled as stated in the Official Student Handbook of the University of Delaware. If you are in doubt whether or not a behavior is permitted, then ask me beforehand.

Religious Holidays: The University does not cancel classes on religious holidays. Students are encouraged to exercise their own judgment pertaining to attendance on these days. Absence on religious holidays is recognized as an excused absence. Students will not be penalized for excused absences. Students are fully responsible for all material presented during their absence. Students are urged to remind the instructor of their intention to be absent on a particular upcoming holiday.


UDel CISC370-010 2001J daily material
CISC370-010 2001J Tentative Schedule
Week Date Topics Readings Assignments
1 Jun 4 Intro to Java, command-line args Vol I: Ch. 1, 3, App. I Hello World!
Jun 6 OOP, javadoc, start Inheritance Vol I: Ch. 4, 5, App. II Proj1 Assigned
2 Jun 11 Inheritance, Interfaces, Exceptions, jar files Vol I: Ch. 5, 6, 11
Jun 13 URLs, Streams Vol I: Ch. 12 Proj1 Due, Proj2 Assigned
3 Jun 18 Finish Streams Vol I: Ch. 12
Jun 20 GUI design, Event Handling Vol I: Ch. 7, 8 Proj2 Due, Proj3 Assigned
4 Jun 25 layout managers, Swing components and more Swing Vol I: Ch. 9
Jun 27 Applets Vol I: Ch. 10 Proj3 Due, Proj4 Assigned
5 Jul 2 Threads Vol II: Ch. 1
Jul 4 Independence Day No Class
6 Jul 9 review Threads, start Networking Vol II: Ch. 3 Proj4 Due, Proj 5 Assigned
Jul 11 more Networking Vol II: Ch. 3
7 Jul 16 CGI and Collections Vol II: Ch. 2 Proj5 Due, Proj6 Assigned
Jul 18 Remote Objects (RMI) Vol II: Ch. 5
8 Jul 23 Database Connectivity: JDBC Vol II: Ch. 4
Jul 25 Presentation Day 1 Report Due
9 Jul 30 Presentation Day 2
Aug 1 Presentation Day 3 Proj6 Due
10 Aug 6 Presentation Day 4, final review
Aug 8 Final Exam?