GBIS 710 – INTRODUCTION TO PROGRAMMING
COURSE OUTLINE

Course Objective

This course covers object oriented programming (OOP) concepts and principles such as objects, polymorphism, inheritance, encapsulation, etc. A few design patterns and best programming practices in solving real-world challenges will also be covered using an OOP approach. The language used to demonstrate those principles will be Java. This course will also serve as an introduction to Java including some advanced concepts such as exceptions, I/O, threads, developing Swing/GUI applications, etc. The emphasis will be on the concepts of those technologies rather than covering them in depth. You will, however, be writing a lot of code in this class. We will be covering the newest version of Java [1.6 (6.0)].

Instructor

Jim Miller, Fine Arts 200
jmiller@dom.edu
The best way to contact instructor is through email

Prerequisites

No prior experience in OOP or Java is needed.

Text Books

There is one required textbook. You need the book and the software that comes with it on the first day of class.

Attendance

Class attendance is highly recommended. It will help you with your projects and assignments.

Grading

2 Projects 20% each 60 points each, 120 points total
10 Homework Assignments 6% each 18 points each, 180 points total
Class Attendance and Participation Highly recommended  

Absence from class is NOT a valid reason for late assignments.  Assignments received after the due date and time are considered late, regardless of absence, in fairness to the other students in the class.Late assignments will be accepted, but penalized according to the following schedule:

Time Late Grade Reduction Multiply Base Grade by:
1 minute through 24 hours late 4% off
.96
Up to 2 days late 8% off
.92
Up to 3 days late 12% off
.88
Up to 4 days late 16% off
.84
Up to 5 days late 20% off
.80
Up to 6 days late 24% off
.76
Up to 7 days late 28% off
.72
Up to 8 days late 32% off
.68
Up to 9 days late 36% off
.64
Up to 10 days late 40% off
.60
Up to 11 days late 44% off
.56
Up to 12 days late 48% off
.52
Up to 13 days late 52% off
.48
More than 13 days late 100% off - No Credit 0


All assignments and projects must be submitted in the appropriate Blackboard assignment before the deadline.

All assignments must be done individually, unless otherwise specified. Working together on non-group assignments is not allowed. If you work together on a non-group assignment, both students will be given a zero. Unauthorized group work is also considered cheating and will be reported to the Dean of the School of Business.

You may use code that you find in the required text in your assignments and projects.

However, you may use outside code (from web or any other book) for assignments and projects IF and ONLY IF you ask for permission from the instructor ahead of time. Otherwise, you will be given a zero on that assignment or project.

Schedule

The course meets every Tuesday September 1 and December 15. Class starts at 6:30 PM and ends at 9:30 PM. The schedule below is approximate. Topics and assignment dates may change and the change will be announced in class. Changes will also appear on the schedule in Blackboard.

Date Description Read these Chapters before classs Homework Assigned Homework Due
@ 6:24:59 PM
(Blackboard Time)
Sep 1 Introduction to Java Programming.
This intro will cover programming essentials and environment setup.
  Hw1
Java essentials.
 
Set 8 Introduction to OOP.
This lecture will cover concepts and principles of OOP with emphasis on encapsulation.
1,2,3 Hw2
OOP concepts.
Hw1
Sep 15 Java language.
This lecture covers keywords in Java and static vs. non-static.
4,5,6 Hw3
Java language.
Hw2
Sep 22 Understanding inheritance.
Understanding the Object class.
7,8,9 Hw4
Arrays.
Hw3
Sep 29 Homework working session   Hw5
Constructors and parameter validation.
H4 (OK if late)
Oct 6 Understanding inheritance (continued).
Introduction to packages, interfaces, classes, methods, etc.
10,11 Hw6
Inheritance
Hw5
Oct 13 Understanding Polymorphism. 12,13

Hw7 Polymorphism

Hw6
Oct 20 The 3 OOP principles wrap-up. I/O and streaming in Java. 14,15 Project I
You will implement some of the concepts learned earlier in designing an advanced application.
Hw7
Oct 27 Introduction to Generics.
16,17 Hw8  
Nov 3 Java Applets. 21,20,23 Hw9-Strings Hw8
         
Nov 10 Review of chapters needed for Project II (Streaming I/O)   Project II
You will implement some of the concepts learned earlier in designing an advanced application.(Will be published on Sunday November 15 at 5:00 pm)
 
Nov 17 Introduction to Threads, material needed for Project II. Live demonstrations of applets, network access, and java connections to databases. 26 PLAN TO MEET IN Ethics Lecture on November 18 in Lund Auditorium for extra credit. Details coming in an email Hw9
Nov 18 Attend Ethics Lecture in Lund Auditorium for extra credit      
Nov 24 Introduction to Swing.
You will learn how to design simple Swing applications.
28 Hw10
Swing or database.
Project I
Dec 1 Project Working Session      
Dec 8 Swing - Continued
You will design Swing applications using LayoutManager.
    Hw10
Dec 15 Swing - Continued
Event listening and handling.
    Project II

 

At the end of the course the final  letter grade will be computed as follows:

 

Letter Grade

 

Corresponding Percentage

A:

 

93-100%

A-:

 

90-92.9%

B+:

 

88-89.9%

B:

 

80-87.9%

C+:

 

78-79.9%

C:

 

70-77.9%

C-:

 

68-69.9%

F:

 

0-67.9%