Advanced Programming CS 204
Instructor
|
Nouf ghanimi
|
Phone
|
02-6400000 (63263)
|
Office
|
Building 7, Office 71
|
E-mail
|
nghanimi@hotmail.com
|
Office Hours
|
Su 1-2:30
Tu 1-2:30
by appointment
|
Course Group
|
http://tech.groups.yahoo.com/group/CS204
| Course Information
Course name: Advanced Programming
Course meeting times& places: S.M 10 – 11:20 Building 7, Room 2164
Description
This course covers programming concepts using concept of object-oriented programming design and implementation, problem solving methods, and algorithms development. The covered topics include control structures, iteration statements, methods, parameters passing, API library, arrays, networks, database, multithreading and Applet. Implementations and programs developments will be done using java programming language.
Goals -
Learning advanced techniques of programming and problem solving using Object oriented programming language.
-
Learning the syntax and semantics of the java language and how to implement problem solution in java.
-
Developing programs in java gain practical programming experience.
-
Recognizing common java designing and coding errors.
-
Developing programs using GUI programming experience.
-
Running programming using Java Applet.
-
Programming with Java threads, sockets, datagrams and database connectivity.
Requirements
CS 203
Resources -
Text book: Deitel&Deitel, Java How to Program, sixth Edition.
-
Other references: Lecture Notes + Programming Exercises
-
Required software:
-
java Development Kit (JDK 5.5)
Download from web site http://java.sun.com/j2se/5.0/download/jsp
-
Java editor Jcreator v 3.50 downloads from web site http://www.jcreator.com/download.htm
Grading Policy
Grade will be based on the following breakdown:
20% Midterm Exam
15% Project
15% Lab Quizzes
20% programming Assignment
30% Final Exam
------------------------------------------------------------
100 total
Attendance Policy
The student is expected to attend all lectures and labs. New material will be presented in both lecture and lab. The student is responsible for any material missed because of absence or lateness. The absence of 25% of the total lectures will prevent the student from attending the final exam.
No make-up exams will be given Late assignments will not be accepted without documentary evidence.
Course Schedule
Class
|
Date
|
Topic
|
Chapter
|
1
|
|
Course introduction. Overview of Java advantages and disadvantages. Review of Java built-in types, applications, applets. Traditional object-oriented features in Java: classes and methods, parameter passing, promotion and casting, memory management, overloading. Review of Java control flow.
|
Ch 1 – Ch 6
|
2
|
|
More on object-oriented features in Java: arrays as aggregation tools, program modules, control access to members, using constructors. Overloading. Class composition. Static members. Java packages.
|
Ch 7 & Ch 8
|
3
|
|
Introduction to Java inheritance, initialization, and constructor order dependencies. Implementation of Java polymorphism: abstract classes and interfaces.
|
Ch 9 & Ch 10
|
4
|
|
Java Abstract Window Toolkit and Swing. Techniques for capturing events. Text fields, buttons, checkboxes and lists.
|
Ch 11
|
5
|
|
Key and mouse events. Layout managers.
|
Ch 11
|
6
|
|
Controlling colors and fonts. Drawing shapes.
|
Ch 12
|
7
|
|
Java exceptions and their use for error handling and recovery.
|
Ch 13
|
8
|
|
Files and streams. Text files, random access files.
|
Ch 14
|
9
|
|
Applets.
|
Ch 20 & Ch 21
|
10
|
|
Menus and frames.
|
Ch 22
|
11
|
|
Java threads and their use for parallel computations. Lost updates, thread synchronization.
|
Ch 23
|
12
|
|
Introduction to Java networking
|
Ch 24
|
13
|
|
Accessing Databases with JDBC
|
Ch 25
|
Honesty Policy
Students are expected to design, code and debug their programs individually. Under no circumstances may a students share a copy of their program with another student. A student who shares their program with another student or copies a program from another student will receive a zero for that particular instances assignment. Any student who cheats on an exam or quiz will be prevented from completing that exam and may receive a zero for that particular instance.
Assessment Policy
-
Exam test student understanding of programming behavior and concepts and properties of data structures and algorithms.
-
Lab work and programming assignments provide students with opportunities to demonstrate an understanding of the application and implementation.
Page
Share with your friends: |