COMP 310
Fall 2014

Course Information 

Home  Info  Owlspace   Java Resources  Eclipse Resources  Piazza

TIME AND LOCATION:

Class will be held every Monday, Wednesday and Friday  from 1:00 PM - 1:50 PM in Duncan Hall Room 1064.

Labs will be held in the OEDK Computer Lab at

Sign up for OEDK card access

INSTRUCTORS:

Dr. Stephen Wong -- See home page for contact and office hour information.

Teaching Assistants e-mail (at rice.edu) Office Hours (all are 2 hr blocks)  & Location  (Subject to change, so check often!)
Kyle Adams kyle.w.adams Sun. 8:00 PM  Weiss Commons
Xin Chen xin.chen Wed. 1:00 PM and Tues. 3:30 PM Duncan Hall 2nd floor atrium lounge  (east side usually)
     
Max Payton max.s.payton Mon. 7:00 PM in Weiss Commons
Kyle Kurihara khk1 Thurs. 3:00 PM  in Sid Richardson Commons
Yijie Li yl68 Mon. 7:00 PM DH3092
Terry Tang terry.tang Mon 3:00 DH 3113
Martha Witick mw36 Tues. 4:00 PM  DH 3052
     
     
 

All Comp310 staff are also available by appointment!

E-Mail:

Entire class (including staff, replace the " at " with "@"): comp310f14 at owlspace-ccm.rice.edu  

IMPORTANT:  In order to send a message to the above address, the e-mail address in your Owlspace address MUST MATCH YOUR RETURN ADDRESS EXACTLY.    Generally, this means that you must send from that same account but even that can fail if you use a different alias as the return address.

Just the staff comp310 at rice.edu   (replace the " at " with "@")

Please do not send e-mail directly to the instructor or any specific staff member, as doing so will only delay the response.

 Please DO start your subject line with "Comp310: " so that your message can be easily identified as being class-related!

TEXT BOOKS:

Though none of the existing text books truly meet our needs and requirements, we like the following book and highly recommend it for the course.

We also have a few other recommendations.

COURSE PREREQUISITE:

 COMP 215 or equivalent: students should already be familiar with the full Java syntax and have experience writing procedural programs and algorithms in Java including the basic usage of classes, objects and inheritance as well as simple generics.

COURSE DESCRIPTION:

Object-oriented programming is the major software paradigm used in large systems today.   This includes most desktop applications such a office productivity software, data management applications and even the main frameworks of many games.  But object-oriented programming and design (OOP/D) absolutely rules in the enterprise-class arena, the globe-spanning, mission-critical systems that, via the Internet, tie together international corporations from one end of the Earth to the other.  In Comp310, we will discover how to use state-of-the-art object-oriented programming and design techniques to create flexible and scalable software systems that can interact with eachother from anywhere in the world.  We will learn about software design patterns and how they are used in multiple programming paradigms.   Through a combination of theory and coding, the class will explore how highly decoupled systems with dynamically configurable behaviors are designed and implemented.   The class will learn how to use design patterns as both a means of expressing fundamental computer science concepts as well as the building blocks in an abstract decomposition of a complex problem.  In addition, the class will learn to use industry standard tools and technologies such as the Eclipse integrated development environment, Subversion source control and round-trip engineering design tools. 

The course format will be that of lectures covering the theoretical, engineering and technological aspects of object-oriented programming and design that will be implemented in the project-like homework assignments.   These homework projects will build upon each other as much as possible, culminating in a networked application.

 

Tentative Topic List
(in no particular order, not all topics may be covered due to time constraints)

Theory

Highly decoupled systems:

Design patterns:

Technologies

 

COURSE SCHEDULE:

Please follow the navigation link to the Home page above to see the topical schedule for lectures and labs.

Homework turn-in:

The turn-in mechanism will be the student's individual Comp310 Subversion repository on CLE@R, using the Subclipse version control plug-in in Eclipse.   Please see

 

GRADING:  

The course grade will be based on:   TENTATIVE

Assignments’ due dates and rules will be clearly stated at the time they are given.

No make-up work will be given unless there is a legitimate excuse such as proof of medical emergency. All permissions must be requested and approved in writing (hard copy or e-mail) BEFORE the due date!

We reserve the right to modify the above weightings at any time.

LATE POLICY:

 

Technical and Development Resources:

 

Related Course Materials:

Principles of Object Oriented Programming courses:

 

HONOR SYSTEM:

Rice University has a student-run academic honor system. Each student has personal responsibility for honesty in their own academic conduct. Each student has the responsibility to report any suspected problems to the Honor Council in a timely fashion. During any Rice exam, the student is expected to write the honor pledge on the outside of the exam:

On my honor, I have neither given nor received aid on this examination.

The Computer Science Department takes the Rice Honor System very seriously and handles all violations accordingly. General rules of conduct concerning collaboration will be spelled out before assignments or exams are distributed (see for instance, above). When in doubt, contact an instructor before proceeding.

For this class, the following additional restrictions MUST be observed:

You may not look at solutions to assignments from past semesters or from other students. Furthermore, attempting to take credit for someone else’s work by turning it in as your own constitutes plagiarism, as defined by the Rice Honor Code.
You may not make your work in the class available to others in any form during or after the class.  In particular, you may not place your code anywhere on the Internet that is viewable by others.

For example, posting one's code to a publicly viewable GitHub or other sort of repository or web page would be in violation of the above restrictions.

For more information concerning the Rice Honor System, see:

ADA:

Any student with a documented disability needing academic adjustments or accommodations is requested to speak with us during the first two weeks of class. All discussions will remain confidential. Students with disabilities should also contact Disability Support Services in the Ley Student Center.


Previous Offerings of Comp310:



Staff SharePoint Site (login req'd)

Staff Notes (login req'd)

 


© 2014 by Stephen Wong