|





| |
Announcements
This Week
(4 / 23 / 2007)
 |
Code examples of the "Network
Programming" lecture are available in the Lectures section.
|
Previous Week
(4 / 16 / 2007)
 |
Handouts for the second
part of the "Network
Programming" lecture are available in the Lectures section.
|
 |
Handouts for the third
part of the "Network
Programming" lecture are available in the Lectures section.
|
General
 |
Homework assignment #2 is
available in the Assignments section. This homework is due on
Feb 22, 2007. |
 |
Project assignment #1 is
available in the Projects section. This project
is your mid-term exam. The project is due on March 15, 2007. |
 |
Project assignment #2 is
available in the Projects section. This project
is your final exam. The project is due on April
30, 2007. |

|
Class
Information
 |
Semester: Spring 2007 |
 |
Location: McMahon Hall 007 |
 |
Lecture time: Tue and Thu 1:35 pm - 2:50 pm
|
 |
Office Hours: Thu. 3:00 - 5:00 pm or by appointment
|
 |
Class Number: 1788
|

Class
Instructor
Dr. Sameh M.
Elsharkawy
Office: Pangborn Hall
311
Phone: (202) 319-4620
Email:
Elsharkawy@cua.edu 
Course Syllabus
Course (catalog) Description
This class covers an in-depth study of
object-oriented programming and software development using Java. The
class emphasizes the following concepts:
-
object-oriented programming (OOP)
-
abstract data type (ADT)
-
data structures using collection framework.
Prerequisites
CSC 123 – Computer science I or
Permission of instructor.
Textbook
Book
name: Java Software Solutions: Foundations of Program Design
(5th Edition) Author: J. Lewis & W. Loftus
Publisher: Addison-Wesley ISBN: 0-321-40949-3
Click
HERE for complete class syllabus
available.

Lecture Handouts
|
Lecture |
Date |
Subject |
|
1 |
Jan 9, 2007 |
Introduction |
|
2 |
Jan 11, 2007 |
Object-Oriented
Design Model |
|
3 |
Jan 18, 2007 |
Inheritance
|
|
4 |
Jan 23, 2007 |
Inheritance
|
|
5 |
Jan 25, 2007 |
Polymorphism |
|
6 |
Jan 30, 2007 |
Exceptions |
|
7 |
Feb 1, 2007 |
Exceptions
Keyboard
I/O class code |
|
8 |
Feb 6, 2007 |
Recursion |
|
9 |
Feb 8, 2007 |
Graphical
User Interface (GUI) |
|
10 |
Feb 13, 2007 |
Lecture cancelled |
|
11 |
Feb 15, 2007 |
Graphical
User Interface (GUI-2) |
|
12 |
Feb 20, 2007 |
Graphical
User Interface (GUI-3) |
|
13 |
Feb 22, 2007 |
GUI
Demo and Jukebox
projects |
|
14 |
Feb 27, 2007 |
Lecture cancelled - Spring break |
|
15 |
Mar 1, 2007 |
Lecture cancelled - Spring break |
|
16 |
Mar 6, 2007 |
Abstract
Data Types (ADT) |
|
17 |
Mar 8, 2007 |
Linked
Lists |
|
18 |
Mar 13, 2007 |
Linked
Lists |
|
19 |
Mar 15, 2007 |
Linked
Lists |
|
20 |
Mar 20, 2007 |
Stacks |
|
21 |
Mar 22, 2007 |
Queues and
Lists
(Collections) |
|
22 |
Mar 27, 2007 |
Trees |
|
23 |
Apr 3, 2007 |
Multi-Threaded
Programming
Multi-Threaded
Programming Examples |
|
24 |
Apr 10, 2007 |
Trees
(Cont.) |
|
25 |
Apr 12, 2007 |
Network
Programming |
|
26 |
Apr 17, 2007 |
Network
Programming (2) |
|
27 |
Apr 19, 2007 |
Network
Programming (3) |
|
28 |
Apr 24, 2007 |
Network
Programming
Examples |
| |
|
|

Assignments


Projects
Project #1:
 | Design and implement an applet that simulates the functionality
of a TV and Remote control. |
 | Detailed project description is included in the following
LINK. |
 | This project is your mid-term exam. |
 | This project is due on Mar 15, 2007. |
Project #2:
 | Enhance the functionality of the
Elevator program (Deitel
& Deitel’s book, “Java: How to program”, Prentice Hall, 2002) so
that it would support multiple people waiting in each floor. |
 | An optional enhancement for the program to support two (2)
elevators is encouraged and would qualify the student for
extra-credit grades. |
 | Detailed project description is included through the following
LINK. |
 | Elevator project code is available through the following
LINK. |
 | This project is your final exam. |
 | This project is due on April 30, 2007. |

Useful Links
 |
TBD |
|
| |

|
|