CMPT 318 / 99-1
Instructor: Andrew Walenstein |
STUDENT RESOURCES | ||
Lectures Online | Assignments | Mailing List Archives |
CS Dept. Outline | Web Resources | Course References |
Lecture Location | AQ 3182 | |
Lecture Times | Mondays 17:30-20:20 (5:30PM-8:20PM) | |
Office Hours | Wednesdays 17:30-19:30 (5:30PM-7:30PM) | |
Office Location | ASB 10867 | |
Teaching Assistant | Anthony Tung Benjamin Lewis | |
TA Office Hours | in ASB 9943 (as demand warrants it) | |
Final Exam | Wed Apr 14, 19:00-22:00 | |
See also the CS Department Outline. |
Some of the above information is subject to change.
Marks for the course are broken down as follows:
Assignments | 30% |
Midterm | 20% |
Final | 50% |
Students must attain an overall passing grade on the weighted average of exams in the course in order to obtain a clear pass (C or better).
Students are expected to behave according to SFU's
Code of Student Conduct, including the department's
own policy of
Academic Honesty All students should be familiar and understand all of the department's Policies, including those concerning grading and academic dishonesty. |
CMPT 212 is strongly recommended.The course quickly covers many object-oriented programming concepts, so students would benefit from having prior object-oriented programming experience. However CMPT 212 is not required: being computing majors, students will be expected to be able to read and cover necessary details of Java and object-oriented programming that are not explicitly covered in class.
There are no lab resources given to the course.
Many Java resources are available from the Internet and World-Wide-Web so having convenient access to these may be required.
In order to do assignments students will need access to a computer with the appropriate Java development tools.There are several types of Java development tools and resources, and several versions of these Java resource. Students must ensure they have access to at least the basic development requirements. These include, but are not limited to:
All of these can be obtained free of charge through the Internet. Good places to start looking include the course's web resources page, as well as Sun's Java pages.
If you're going to do any development of Java, it would be worthwhile to know about the different Java implementations and platform availability, so even if you already have your favourite environment set up, you may want to browse through the descriptions of the various implementations that are available.
Required Text |
"Thinking in Java", Bruce Eckel, Prentice Hall, 1996. Official online version |
Note: Depending upon your preferences and experience with Java and object-oriented programming, you find that having the text online is good enough and may not need to purchase the text. | |
Recommended |
"Design Patterns: Elements of Reusable Object-Oriented Software",
Erich Gamma, Richard Helm, Ralph Johnson, John Vlissides,
Addison-Wesley, 1995. AW Entry Amazon.COM Entry SFU Library |
Note: This is quite a popular text for object-oriented designers and has the nickname of the "Gang of Four" book (GoF). There is enough design pattern material available for the course without buying this book. For instance, the "Thinking in Java" book in Chapter 16 covers design patterns and there is much online information. However you may find it beneficial in general to get this recommended text. It appears almost never to be in the library---I apparently cannot put a copy of it on reserve. | |
References |
"The Java Programming Language", 2nd ed.,
Ken Arnold and James Gosling,
Addison-Wesley, 1998. "Core Java", 2nd ed, Gary Cornell and Cay S. Horstmann, Prentice-Hall, 1997. "Java Language Reference", 2nd ed., Mark Grand, O'Reilly, 1997
|
Note: These are additional reference works. Essentially all information you require about the Java language and its libraries is available in online, however many of these books have added values that may make them worthwhile for you to purchase. For instance, some may package the information better, some may explain concepts better, and also simply having a printed version is sometimes more convenient. |