CS 201 Introduction to Object-Oriented Programming

Course Syllabus Summer 2010

Course Instructor

Dr. Chengcui Zhang
Email: zhang@cis.uab.edu
Web: http://www.cis.uab.edu/zhang
Office: CH 127
Phone: (205)-934-8606
Office Hours: Monday 10am-12noon or by appointments.

Teaching Assistants

Richa Tiwari (rtiwari@cis.uab.edu), Jason Britt (jrbritt@cis.uab.edu)

Course Session

Tuesday and Thursday   03:00 PM - 05:05 PM    Room CH 430

Lab Sections

Lab    Tuesday  5:30pm-8:20pm CH 435

Course Homepage

http://www.cis.uab.edu/cs201/summer2010/

Lab Homepage

http://www.cis.uab.edu/cs201/summer2010/lab/

Prerequisite

MA 106 Pre-Calculus Trigonometry

Description

Introductory problem solving and computer programming using object-oriented techniques. Fundamental concepts of object-oriented programming. Syntax and semantics of Java, an object-oriented programming language. Principles of program design and algorithm development strategies. Classes, abstract data types, arrays, flow control, methods, overloading, exception handling, debugging, I/O applets. Laboratory component in context of object-oriented programming language. Two hours per lecture. Three hours per laboratory.

Objectives

1.   To introduce principles and practice of software development using object-oriented programming.
2.     To develop the problem solving skills necessary to develop software solutions to problems.
3.     To develop knowledge of the data and control structures available in the object-oriented programming paradigm and their appropriate uses.

Textbook

Java Software Solutions: Foundations of Program Design, 6th Edition by John Lewis and William Loftus, Addison-Wesley, 2008.
URL for Book Resources: http://jss.villanova.edu/

Grading Policy

Tests (2)                   10% each
Lab Assignments     10%
Homework                20% overall
Attendance               5%
Quizzes                     5%
Lab Exams (2)         10% each
Final Exam               20%

All tests, lab exams and final exam are mandatory.

Late Submission

1.      All assignments are due at the beginning of class on the due date. Any assignment turned in after this deadline is considered late. Late assignments will lose 10% for every 24-hour period, up to a maximum of 50% (weekends and holidays count as one 24-hour period).
2.      All assignments must be turned in even if they are late. Failure to submit any assignments will result in a grade of F.

Lab Policy

1.       The lab class will start meeting on June 1st, 2010.
2.       Attendance is mandatory for the lab.
3.      Students must attend the lab during lab exams. There will be NO make-up lab exams.
4.       The laboratory instructor will provide the laboratory policy and procedures.
5.       A separate web page with laboratory syllabus and example programs will be provided on the lab web page.

Class Conduct

1.      Students are expected to conduct themselves in a professional manner.
2.      Laptops will be allowed only for the purpose of the class.
3.      During a lecture, students may not log into a machine and do work that is not directly related to the topic of the current lecture.
4.      Students must turn their cell phones/pagers OFF during the class.

Class Attendance

1.      Attendance is mandatory for the lecture portion of this course. If you know you will be absent for a legitimate reason, let the instructor know. If you are sick, bring a doctors excuse or a written university excuse to resolve the absences. An absence has to be resolved as soon as possible - otherwise it will be treated as an unexcused absence. Students will receive a penalty of two percentage points on the final grade for each unexcused absence beyond the second absence (excused or unexcused).
2.      Students must attend the lab during lab exams.
3.      Students auditing this course are expected to attend the lectures. Auditing students with more than three unexcused absences will receive a failing grade.
4.      There will be NO make-ups for tests or quizzes. If you miss a test for a legitimate reason, your final exam grade will replace that test grade. If the absence is unexcused, you will be assigned 0 for the test. A student anticipating an excused absence for the final exam should make arrangements in advance to take the exam at another time.


Academic Honesty

Students who plagiarize a computer program (or parts of a program), get others to write a program (or parts of a program), or are found cheating on a quiz/exam, will be reported for academic dishonesty. Anyone who is caught cheating will receive a 0 on a given test or assignment. If a second offense occurs, the student will receive an F in the class. This includes both the provider of the information as well as the receiver of the information. Any student who violates the university's academic honesty policy will be reported for academic discipline. All university and department policies related to students are included here by implication.

Add/Drop Policy

1.      A student can add the course through June 8, 2009
2.      A student can drop the course without paying full tuition by June 8, 2009.
3.      A student can withdraw with a W by July 6, 2009.
4.      For more details about add/drop policies check with Registration/Academic Records.

E-mail

Every student will be required to use his/her official email address (that is, blazerid@uab.edu). New students must login and configure their email addresses. For more details on obtaining a blazerid and configuring email, please see: http://www.uab.edu/blazerid. All email communications will be made using this address. Additional instructions or announcements will be sent by e-mail, so check your mail often at least twice a day (once in the morning and once at night). Also, check the course webpage for up-to-date information and announcements. The instructor will check email frequently; e-mail is often the best way to contact the instructor.


Tentative Schedule for Lectures
(Lab Schedule Separate)

Date

Topics

Comments

June 1
June 3

Chapter 1 Introduction

 

June 8
June 10

Chapter 2 Data and Expressions

 

June 15
June 17

Chapter 5 Conditionals and Loops

Assign Homework 1

June 22
June 24

Chapter 3 Using Classes and Objects

Class Review

 

June 29

Test 1 (75 minutes)

Chapters 1, 2, 3, 5

July 1
July 6

Test 1 Review
Chapter 4 Writing Classes

Assign Homework 2

July 8

Chapter 7 Arrays

JButtonEvents.java, JButtonEvents2.java

July 13

Test 2 (75 minutes)
Chapter 7 Arrays (continued)

Chapters 4, 5, 7

July 15
July 20

Chapter 8 Inheritance (Chapter 6 subset)

 

July 22

Test 2 Review
Chapter 9 Polymorphism)

Assign Homework 3

Assign Bonus Project

July 27

Remaining topics

 

July 29

Remaining topics (time permitting)
Class review

 Last day of class

Aug 3
4:15pm-6:45pm

Final exam

Chapters 1-8 (comprehensive)