Bilkent University*
COMPUTER ENGINEERING DEPARTMENT

CS112: Introduction to Object-Oriented Programming/Sections 1 & 2
Spring 2008
Section 1 (Dr. Schaal): Monday: 13:40-15:30, Wednesday 15::40-17:30, Place: BZ05
                                   Lab: Thursday 13:40-17:30, Place: B302

Section 2 (Dr. Can): Tuesday: 13:40-15:30, Thursday 15::40-17:30, Place: BZ03
                                 Lab: Friday 13:40-17:30, Place: F207


INSTRUCTORS
Dr. FAZLI CAN
Office : Engineering Building EA505, Phone: 290-2613, e-mail: canf [at] cs.bilkent.edu.tr
Office Hours (Spring Semester 2008): Tuesday 10:40 – 11:30, Thursday 10:40 – 11:30, or by appointment.

Dr. MARKUS SCHAAL
Office : Engineering Building EA403B, Phone: 290-3440, e-mail: schaal [at] cs.bilkent.edu.tr
Office Hours (Spring Semester 2008): Friday 10:40 - 12:30, or by appointment (please send email)

ASSISTANTS:
ÖZGÜR BAĞLIOĞLU, SÜLEYMAN KARDAŞ


COURSE OBJECTIVES
Object-oriented programming with Java. Writing and enhancing classes, arrays, inheritance and polymorphism, abstract classes and interfaces, graphical user interface, I/O streams, exceptions.


TENTATIVE COURSE SCHEDULE
The following program is subject to change throughout the semester.

Week No./Date


Topic
(Textbook Chapter No.)

1/Feb. 11 Array (6)
2/Feb. 18 Objects and Classes (7)
3/Feb. 25 Objects and Classes (7)
4/Mar. 3 Strings and Text I/O (8)
5/Mar. 10 Strings and Text I/O (8), Inheritance and Polymorphism (9)
6/Mar. 17 Inheritance and Polymorphism (9)
7/Mar. 24 Inheritance and Polymorphism (9), Abstract Classes and Interfaces (10)
8/Mar. 31 Abstract Classes and Interfaces (10)
9/Apr. 7 Abstract Classes and Interfaces (10), Object-Oriented Design (11)
10/Apr. 14 Exception Handling (17)
11/Apr. 21 I/O Streams (18)
12/Apr. 28 GUI / Swing (12)
13/May 5 GUI / Graphics (13)
14/May 12 GUI / Event-Driven Programming (14)
15/May 19 No CS112 Class, Final Exams Begin on May 21

PREREQUISITE
CS 101 (Algorithms and Programmin I) or CS 111 (Introduction to Computing in Engineering and Science).


TEXTBOOK AND REFERENCES
Liang Y. D. Introduction to Java Programming: Comprehensive Version, 6th ed . Pearson Prentice Hall, Upper Saddle River, NJ, 2007.


LABS, ASSIGNMENTS & OTHER COURSE MATERIAL
   
Labs
   Lecture Notes (by your classmates)
   Lecture Slides of 2007 (by Dr. Cengiz Celik)

Assignments
        Assignment No.1:  Library

   Quizzes
        Quiz No.3: Rectangle Class, Rectangle array
        Quiz No. 2: Person Class
        Quiz No. 1: Programming Concepts (find max of 3 numbers, find sum of even numbers)

Example Programs
        Hangman: March 11, 2008

Example Study Guides
        Midterm Study Guide: March 24, 2008
        Final Exam Study Guide: May 27, 2008


IMPORTANT DATES
Last day of Adding/Dropping Courses                  : February 25, Monday
Last day of classes (follow Wednesday schedule) : May 20, Tuesday
Final exams: May 27, Tuesday


EXAM DATES
Midterm Exam                     : March 26, Wednesday, 17:40 - 19:30 (Place: BZ02, BZ03)
Final exam (comprehensive) :
To be announced.


GRADING POLICY
Quizzes/HWs                         : 15%
 
Lab                                        : 25% 
Midterm exam                        : 25%              
Final exam (comprehensive)   : 35%

-----------------------------------------
Total                                       : 100 %

Letter grades will be determined according to the following table.

90 - 100 %: A
80 - 89 %: B
70 - 79 %: C
60 - 69 %: D
0 - 59 %: F
We keep the right of giving + / – grades.
If needed grades will be curved.
Students with low grades at the final and midterm may receive an F even if their other course works are fine.


GENERAL POLICIES

Your homeworks must be turned in on the due dates. No late homework will be accepted.

If individual review is needed due to a question on the grade (including exams) this must be no later than one week after receiving your graded work. This time limit is for consistency in grading.

You are expected to do your work alone. Group working will be considered as cheating. You may discuss your ideas and approaches, but do not walk the line. Exceptions and group projects (if any) will be specified explicitly.

Your programs will be graded according to their correctness, algorithm design, readability, and neatness of presentation.

If you need to supply written documentation with your assignments provide a neat presentation using a word-processor. This is a rule and exceptions will be specified explicitly.

To the exams you can bring a "handwritten" cheat sheet (dosya kagidi).


OFFICE HOUR POLICIES
In case I am not able to be in my office during any office hour period, I will announce alternate hours to make up for them. Please do not assume that I am available to answer your questions any time you may barge into my office. During office hours, you are welcome to stop by and discuss your questions with me. If you cannot make it during my hours, you are further welcome to contact me and make an appointment for a more suitable time.


ANNOUNCEMENT


Date of last update: May 22, 2008; 5:22 pm

Send comments to the author: canf at cs dot bilkent dot edu dot tr

* The announcements section may change every day throughout the semester. There can be some errors on this page and I keep the right of making corrections without any notice.

For the course material of Section 1 please refer to the Bilkent
Moodle system. For Section 2 the course home page (this page) provides the relevant resources.