UNCW Home UNCW Home
   CSC 331 Object-Oriented Programming and Design
 

Syllabus - Fall 2019

Schedule

Section 001 TR 1:00 - 2:15 pm CI 2055

INSTRUCTOR
Jack Tompkins
E-mail: tompkinsj@uncw.edu
Office CI 2034, Hours*: 9:00 am - 10:00 am MTWR
*Students are welcome to ask questions any time my door is open and may schedule appointments outside office hours.

COURSE DESCRIPTION
CSC 331 - Object-Oriented Programming and Design (3) Prerequisite: CSC 231. Object-oriented programming with a focus on software modeling of objects, classes, methods, inheritance, interfaces, and polymorphism. Completion of a team software project is required. A grade of ‘C’ (2.00) or better is required for taking courses for which CSC 331 is a prerequisite. 

REQUIRED TEXTBOOK

Weisfeld
  OBJECT-ORIENTED THOUGHT PROCESS | Edition: 5TH
 Author: WEISFELD
 ISBN: 9780135181966
 Publisher: Addison-Wesley
 

RECOMMENDED TEXTBOOK      

Horstmann
 JAVA CONCEPTS: EARLY OBJECTS (LOOSE) | Edition: 8TH
 Author: HORSTMANN
 ISBN: 9781119056454
 Publisher: WILEY
  Student Companion Site
  Chapter Goals


GRADED WORK

POLICIES
UNCW practices a zero-tolerance policy for violence and harassment of any kind.  For emergencies contact UNCW CARE at 962-2273, Campus Police at 962-3184 or 962-2222, or Wilmington Police at 911.

ACADEMIC HONOR CODE
It is the responsibility of every student to uphold and maintain the UNCW Academic Honor Code. You violate the honor code when you represent someone else's work as your own. Programming projects may be discussed at a conceptual level with other students but details and coding must be your own. Copying and team collaboration is prohibited. You will have to deal with challenging and time-consuming (but cool) projects. In many cases, you may wish to discuss these projects with others. At that point, you will find yourself walking a fine line between cooperation, which we encourage,  and cheating, which we prosecute.

Cooperation versus cheating: You can discuss the homework problem with other students. You can read together code from the lecture notes, from the course site, or from the textbook, and think together how to attack the problem. However, at some point the consultation must end, and from this point onward you are on your own. Each student should write the code or solve the problem separately, without further consultation.

The minute you start working on a computer together, you are cheating. The minute you start sharing pieces of code or solution steps, or use solutions of other people, obviously you are cheating. You are allowed to share all your work within the pair, if you are working within a pair.

What to do when you get stuck: Most students cheat because they struggle with difficult problems under time pressure. When the problem that you are working on goes nowhere, it is tempting to cut corners. What can you do instead? There are at least two alternatives. First, you can seek help from your professor or TA. Second, you can always submit any program or partial solution for grading, even if the program is not working or the solution is not perfect.

STUDENTS WITH DISABILITIES
If you have a disability and need reasonable accommodation in this course, you should inform the instructor of this fact in writing within the first week of class or as soon as possible. If you have not already done so, you must register with the Office of Disability Services in Depaulo Hall and obtain a copy of your Accommodation Letter. You should then meet with your instructor to make mutually agreeable arrangements based on the recommendations of the Accommodation Letter.

STUDENT LEARNING OUTCOMES

  1. Students develop their understanding of basic object-oriented concepts like classes, methods, and objects and refine their knowledge one and two-dimensional arrays, and basic program control.
  2. Students develop an understanding of more advanced object-oriented concepts (e.g., interfaces, polymorphism, inheritance, user interfaces, event handling, file I/O, exceptions, encapsulation, cohesion, coupling).
  3.  Students develop the ability to recognize and apply object-oriented approaches to analysis and design of algorithms.
  4. Students learn to work in small teams (2-3 students) to develop a sizable projects.
  5. Students learn to present their work in front of their peers.
  6. Students develop skills in documenting their code using a tool such as javadoc.
  7. Students learn to use software development tools like Eclipse and software development processes like refactoring.     

back


 
  by J. A. Tompkins
 
       Valid CSS!    Valid HTML 5