CIS 180 - Object-Oriented Programming I
Fall 2011

Instructor Dr. Paul Bergstein
Office 302B Dion
Phone (508) 999-9184
Mon. 3:00PM - 4:00PM
Wed. 3:00PM - 4:00PM
Fri. 10:00AM - 11:00AM,
  3:00PM - 4:00PM

Tutoring Hours
Monday1:00PM - 2:00PMDion 303Wes
Tuesday2:00PM - 4:00PMDion 303Wes
Wednesday10:00AM - 1:00PMDion 311Neelima
Thursday2:00PM - 4:00PMDion 303Wes
Friday9:00AM - 1:00PMDion 303Neelima

Mentoring Hours
Tuesday2:00 - 3:00PMDion 303Jacob
Wednesday3:00 - 4:00PMDion 303Jacob
Thursday3:30 - 4:30PMDion 303Jacob

Sign up to receive announcements and reminders on twitter:
Follow @CIS_180

Course Objectives

After completing the course students should be able to:

Course Description

Basic concepts in programming, and introduction to the object paradigm. The course introduces the concept of the object paradigm and teaches how to design and implement simple programs in an object-oriented language. The course also covers the basics of how to use a computer and basic software tools in the process of developing programs.


Programming Tools

We will be using the Eclipse IDE for Java Devleopers in the Department's computer laboratories. You can download the software for free for your own computer.
  1. First, download and install Java Platform (JDK) 7. The Windows x86 version is for 32-bit systems and the Windows x64 version is for 64-bit systems. Macintosh users can skip this step since Mac systems have JDK pre-installed.
  2. Next, download and install Eclipse IDE for Java Developers. You do not need the version for Java EE developers.

On-line Resources

Other Resources



The letter grades will be assigned based on the weighted numerical average using the following approximate scale:
90 ≤ Avg ≤ 100A-, A, A+
80 ≤ Avg < 90B-, B, B+
70 ≤ Avg < 80C-, C, C+
60 ≤ Avg < 70D-, D, D+
0 ≤ Avg < 60F

Academic Integrity

Academic dishonesty is a serious issue with serious consequences. Students should familiarize themselves with the UMass Dartmouth Student Academic Integrity Policy.

Student Responsibilities

  1. To attend class regularly and on time. If a class is missed, find out from another student, and/or the professor, what transpired.
  2. To participate regularly and intelligently in class.
  3. To come to class prepared. Bring whatever materials are required for participation and note taking. Complete assignments, including reading, in advance.
  4. To seek clarification of unclear points or assignments in class by asking questions about them as soon as the difficulty occurs.
  5. To seek extra help during office hours as soon as it is needed.
  6. To complete all required work on time. In the event that an exam must be missed, or required work cannot be completed on time, due to illness or other serious and unavoidable circumstance, to notify the professor as far in advance as possible by phone or email.
  7. To take responsibility for your own learning. The university and the CIS Department offer tutoring and other forms of assistance, but the student must take the initiative.
  8. To deal courteously with the professor, teaching assistants, and other students.
  9. To behave responsibly and ethically. Not to cheat, sabotage other students, or maliciously disrupt the learning process in any way.
  10. Not to suffer in silence, but to bring any grievance to the professor promptly.


Course Outline

Week Of Topics Reading Homework Lab Notes
9/5 - 9/9 Intro to Computer Science, Software Lifecycle Ch. 0 HW #1 No lab. First class is Wednesday.
9/12 - 9/16 Object-Oriented Programming, UML Ch. 0 HW #2 Lab #1  
9/19 - 9/23 Program Design, Java Basics Ch. 1 HW #3 Lab #2  
9/26 - 9/30 Working with Objects Ch. 2   Lab #3  
10/3 - 10/7 User Interface Design
Midterm Exam 1 (Friday)
Practice Exam (solutions)
Ch. 4   Lab #4  
10/10 - 10/14 GUI's, Inheritance, Interfaces Ch. 13, 8.2, 8.3 HW #4 Lab #5 Monday classes meet on Tuesday.
(Columbus Day).
10/17 - 10/21 Variable and parameter details, reference types, scope rules Ch. 3 HW #5 Lab #6  
10/24 - 10/28 Data types and Operators Ch. 5 HW #6 Lab #7  
10/31 - 11/4 Conditionals Ch. 3.6, 6.10 HW #7 Lab #8  
11/7 - 11/11 Review
Midterm Exam 2 (Wednesday)
Practice Exam
Ch. 6   No new handout.
Catch up time.
No classes on Friday (Veterans Day). Fri. classes meet Wed.
11/14 - 11/18 Strings, Vectors Ch. 7, 9.10 HW #8 Lab #9  
11/21 - 11/25 Loops Ch. 11   Lab #10 No Friday classes. (Thanksgiving).
11/28 - 12/2 Arrays, 2D Arrays Ch. 9.1 - 9.4, 9.7 HW #9 Lab #11  
12/5 - 12/9 Searching and Sorting Ch. 9.5, 9.6 HW #10 Lab #12  
12/12 - 12/16 Efficiency, Big-Oh Notation     Project Demos No Friday class.
(Wednesday is last class).
Mon. Dec. 19 Final Exam, 8:00AM - 11:00AM
Practice Exam