George Mason University
Department of Computer Science

SWE 510 - Object-Oriented Programming in Java - Fall 2008
Section 001: Thu. 7:20-10:00, Science and Technology II 9


Dr. Moataz A. Ahmed, Adjunct Professor
Office: ST2-435 – Hours: Mon. 6:30--7:00, Thu. 6:30-7:00, and by appointment
email: mahmed5@gmu.edu


TA: Deshan A Cooray <dcooray@gmu.edu>
Office: ST2-468 – Hours: Tue. 2.30-4.30


Objective:

SWE 510 gives an introduction to principles and concepts of object-oriented programming. The course covers problem solving in an object-oriented manner, basics of program design using object-oriented principles, designing and implementation of simple GUI applications, and writing simple multithreaded applications.  By the end of the course, student will be able to apply object oriented concepts, such as inheritance, polymorphism, abstract classes and interfaces, container/collection classes, and packages in program design. Moreover, students will also be able to describe the program design using a notation that is based on Unified Modeling Language (UML).


Catalog Description:

SWE 510 Object-Oriented Programming in Java (3:3:0). Prerequisite: Undergraduate courses or equivalent knowledge in programming in a high-level language. This course introduces students to programming in the Java language. Topics include problem-solving methods and algorithm development, program structures, abstract data types, simple data and file structures, and program development in a modular, object-oriented manner. Introductory use of OO language features, including data hiding, inheritance, polymorphism, and exception handling. Goals include design and development of Java classes and class type hierarchies. An introduction to Java servlets and applets is included. Emphasis on program development is reinforced through several programming projects. Credit cannot be applied to any graduate degree in IT&E or the BS degree in computer science.


Required Textbook:

Savitch, Walter, Absolute Java, 3rd Edition, Addison Wesley, 2007, ISBN: 978032148792.

Other References:

Grady Booch, James Rumbaugh, and Ivar Jacobson, The Unified Modeling Language Users Guide, 2nd Edition, Addison-Wesley, 2005.


Grading Policy:

 

 

Assignments

50%

 

 

Midterm Exam

20%

(October 16, tentative)

 

Final Exam

30%

(December 11)

Class attendance and participation is required and will be factored into the final course grade. The absence factor will be discussed during the first lecture.


Topics to be covered*:

 

 

Topic

# Lectures

1.    

Introduction

1

2.    

Basics of Object Orientation

3

3.    

Flow of Control

1

4.    

Arrays

1

5.    

Inheritance

2

6.    

Polymorphism, Abstract Classes, and Interfaces

2

7.    

Exception Handling

1

8.    

File I/O

1

9.    

Recursion

*

10.              

Collections and Iterators

*

* As time permits.  The schedule in general is subject to changes to best serve the needs of the class


Ethics:

Code of Ethics. Please Read. IEEE and ACM codes of ethics are at these URLs:

http://www.ieee.org/about/whatis/code.html
http://www.acm.org/serving/se/code.htm

The link to the GMU Honor Code has become:

http://jiju.gmu.edu/catalog/apolicies/honor.html


2008 by Dr. Moataz Ahmed, Department of Computer Science, George Mason University