* Object-Oriented Intermediate Programming: Comsc102, Fall 2009*

 

 

*Course Description: *

 

This class will introduce you to intermediate-level programming concepts.  You will practice and apply these concepts by developing programs in JAVA. We will focus on understanding how to design classes well, how to implement classes in Java, and how to ensure correctness via reasoning and testing.  In addition, we will learn about some common data structures such as stacks and queues. 

 

*Prerequisites*

 

Introduction to Problem Solving and Object Oriented Programming (Comsc101)

 

 

*Textbook*:

 

Java: An Eventful Approach,  Kim Bruce, Andrea Danyluk and Thomas Murtagh. (JAEA)

 

Supplemental readings on reserve:

 

Java Software Solutions, Lewis & Loftus. (L&L)

 

 

*Course Meeting Times:*

 

    Lectures: T,Th 11-12:15 in Clapp 401.

 

    Fourth Hour: W, 3:15-4:05, Clapp 401

 

*Instructor:*

 


Professor Lisa Ballesteros

Office:  220 Clapp

Office Hours

Email: lballest@mtholyoke.edu

 

If at any time, you have any problems, concerns, or issues you would like to discuss, come to office hours or contact me via email to make an appointment.  I check email regularly.   I am always available during office hours and am happy to schedule appointments outside those times when necessary.

 


 

*Course Structure*

 

There will be 1 mid-term exam, 1 final exam, weekly lab assignments, mini-problem problem sets, and 2 test programs.

 

The 4th hour will be used for short introductions to labs or as additional time to ask questions.  It will be treated as a regularly scheduled class or lab period, so  attendance is expected.  Bring a USB memory stick with you to the laboratory in order to save project files.  This protects you in the event that the network goes down and your home directory cannot be accessed. Inability to access your account is not an acceptable excuse for not finishing a programming assignment.

 

Test programs will be similar to lab assignments, but their primary purpose is to evaluate how well you have learned the material in previous classes and labs.  For this reason, test programs will be treated as take-home exams and are to be done individually.

 

One’s participation grade includes attendance, engagement in class discussions, asking questions, and answering questions.  Answers need not be correct, but should be based on thoughtful consideration of the problem.

 

Grading:

 

Attendance:

 

Announcements made during normal class meetings are official communications for this course.  Although I may not take attendance daily, regular attendance is expected.  Consequently, absence is no excuse for failure to act in accordance with class announcements.  If you miss class, talk with your classmates to find out what you missed.  The course website is also a good location to get course materials as it contains an updated version of the syllabus as well as links to lecture notes, labs, and handouts.

 

Deadlines

 

Because it is extremely important to keep up with the material in this class, all assignments are due on the dates specified.  Late labs will not be accepted unless some other arrangement has been made with me in advance, so plan ahead.  If extenuating circumstances arise which will make it difficult to meet a deadline, come talk to me and I will work with you to find a solution. 

 

*It is extremely important to keep up to date in this class.*  The lectures and labs are integral parts of this course.  In order to understand the material covered in a given day, it is important that you understand the material and concepts covered on previous days.  The most successful approach to this course is to work regularly on readings and assignments.  Don’t put things off until you feel pressured by a deadline, as problem solving typically takes longer than expected.  I am happy to answer any questions and to give feedback in class and during office hours.  There are NO silly questions.  If you are unsure about a concept we are discussing or about an assignment, do not wait to ask questions.   If you get behind, don’t wait to get help.  Ask questions in class, come to office hours, and attend TA sessions.

 

Comments about working together:

 

Discussion is an important aspect of learning.  I encourage you to form study groups to discuss concepts related to course materials.  However, there is a fine line between discussing a concept and solving a problem together.  *It is not O.K. to write programs together and it is not O.K. to solve assignments together unless it is specified as a group assignment.*  You may discuss assignments at a high level, but the actual solution and the write-up or coding of that solution must be done independently.  All of your resources for solving homework or programming problems *must be cited*.  This means that if you use other books or reference materials to solve a problem, you must indicate the name of the reference used and the page on which the solution was found.  If you work in a study group, the names of your study partners must be included on all assignments.  Failing to appropriately cite any and all resources used to complete an assignment is a violation of the honor code*.

 

 

*More about Academic Honesty*