30-IT-396 Brandan Jones
Course Description
This course is an introduction to the basic language fundamentals of Java technology. The focus of this course is on object-oriented concepts including encapsulation, polymorphism and inheritance using objects, classes and methods.
My objective in this course is to give you a solid foundation in Java. In doing so, I must assure complete customer satisfaction for you, the College of Evening and Continuing Education, the University of Cincinnati, its alumnus, its contributors, its employers, and me. This point cannot be emphasized enough. I want to make sure that you are getting the best value-for-dollar education that can be found in this region or on the web. If, for any reason, you feel that you are not getting out of this course what you want, or you are unsatisfied with the course, please let me know as early as possible so that I can make necessary changes. I would much rather fix a situation than have an unsatisfied customer.
On that same subject, please be aware, starting the first day of class or earlier, that this is a very intense, fast paced class, and will require a significant amount of effort. Take a look at this syllabus and make sure you understand the expectations of the class. Also note, not everyone can get an ‘A’ in class, or those ‘A’s would all be worthless. It is quite possible to get a lower grade, but still learn a significant amount of the material.
This is the second year in which The University of Cincinnati, The College of Evening and Continuing Education and The College of Applied Science has offered this course. I have requested feedback from previous classes, and made modifications based on that valuable feedback. I value your feedback as well. Please keep in mind that there may be some rough edges due to the youth of this class, but there is also an advantage to being one of the first to market with the material offered in this class.
Prerequisites
Programming Logic and Methods
Text
Core Java 2
Volume 1 - Fundamentals, 6th Edition
Cay S. Horstmann, Gary Cornell
Sun Microsystems Press
2002 Prentice Hall
ISBN 0130471771
Requirements
The learner is expected to:
1. Attend class regularly and on time
2. Participate in class discussions.
3. Open a blackboard account.
4. Complete all lab work.
5. Complete all projects, quizes, and
assignments.
Attendance
All learners are expected to attend class on a daily basis, just as
an employee would be expected to attend work on a daily
basis. For every day of class missed, the final grade will be
lowered 1 letter grade (It is impossible to evaluate a learner who is not
in class). This also applies to the first day of class.
If the learner misses a class, it is his/her responsibility to obtain
notes from another learner. It is also his/her responsibility to
update his/her diskettes. This must be done before class begins.
Though I often comments about this policy, please understand that, almost always, those who miss class do not completely comprehend the material covered, and then require assistance from me in class or out of class. This is unfair to me since I had already spent time covering the material!
Also, this counts for leaving class early during in class lab time. In class lab time is provided for your assistance. It is time for you to ask me one-on-one questions for concepts that you may not understand, or questions you simply did not want to ask in front of the entire class. Please, take advantage of in class lab time to clarify any concepts that are unclear.
Learner Planning
This course will be fun and valuable, but will require significant effort.
Probably more effort than most classes you have taken.
To the fullest extent possible, I will avoid using paper, and offer
everything on my website instead.
The lab assignments are a lot of work. Plan for this by setting
aside a fixed amount of time for the lab work. I will help you
with your programming concerning language upon request. If your
problem is in the logic, I will ask to see your
pseudocode, flowchart, or UML. If you have not prepared one, I
cannot
help you.
Open Lab Time
Open lab time will be available during the quarter. Some of that lab time may be in person, in the Sander L221 lab, and other time may be available remotely, via instant messenger. Do not come to open lab time until you have started the project. I can help you the most when you know what the potential problems are!
Absence During Tests or Exams
It is the responsibility of the learner to be in class and on time on
a daily basis. If a learner misses a test or an exam, he/she can
only make up the work if a valid reason is given (A doctor’s note is
required if you are sick, for example). If you know ahead
of time that you won’t make the exam, discuss the matter with the instructor;
arrangements can usually be made.
Grading
Class Participation | 10% |
Programming Assignment Part 1, Week 5: | 15% |
Quiz, Week 4: | 20% |
Final, Exam Week: | 25% |
Programming Assignment Part 2, Week 7: | 15% |
Programming Assignment Part 3, Week 9: | 15% |
Less: Attendance |
There are 3 class assignments. Completing the requirements fully
will earn a ‘B’. Earning an ‘A’ requires extra work; doing
something that is not stated in the requirements.
Please turn assignments in to the Digital Drop Box on Blackboard. Source code is required, a screen capture of the output is also recommended in case I am unable to reproduce the results. Assignments are due at 6:30 on the due date. For every 24 hours they are late, starting at 6:31 on the due date (class time), a 10% penalty will be deducted. No work will be accepted after four days.
Though blackboard is the preferred method for turning in assignments, it is your responsibility to assure that it arrives in my mailbox by 6:30 PM on the due date. If you use a slow e-mail system, or are otherwise concerned about it arriving on time, you may hand your assignment in on disk before the beginning of class.
I use the following grade scale for determination of final grades. I usually assign a few + and - grades at the end of the quarter, but I tend to avoid those for the most part.
100 – 90
A
89 – 80
B
79 – 70
C
69 – 60
D
Below 60 F
Web Presence.
I have a web page at : http://oz.uc.edu/~jonesbr
My Email address is:
Brandan.Jones@uc.edu
Yahoo! Instant Messenger Address: UCInternet2
AOL Class Instant Messenger Address: UCJavaSeries
Also available via Blackboard Messenger
Please add yourself to this list, or provide me with a Yahoo! ID so
that I can add you (it’s free). This will allow us to have
remote lab times before assignments. Also, please cc: UCInternet2@yahoo.com
on all of your assignments.
Course Outline
There are nine instructional days, plus one exam day allocated for this
course. Course material may be covered earlier or later than scheduled,
depending upon the pace of class.
Week 1:
Introductions.
Course home page.
Robocode
The Object Model
Introduction to Java
The JDK
Forte and others
Your First Java Program
Resources
Reading: Syllabus, Ch 1
Week 2:
Java
Types
Reading:
Ch 2
Week 3:
Quick methods intro
Strings
Example/Lab
Scope
Programming Structures
Reading: Ch 3, up to pg 60, exclude Mathematical Functions and Constants
on page 47 and 48.
Week 4:
No class meeting. At home quiz will be available on Blackboard. Open
book.
Week 5:
Conditionals
Loops
Arrays
Reading: Ch 3, pg 60-87
Reading: Remainder of Ch 3
Week 6:
Inheritance
Object Oriented Programming
Intro
Existing Classes
Build Your Own
Reading: Being Ch 4
Week 7:
Method Parameters
Object Construction
Packages
Reading: Ch 4 (all)
Week 8:
Object class
Class class
Design
Theories of Object Oriented Programming
Interfaces
Reading: First part of Ch 5
Week 9:
Applets
HTML Tags
JAR
Week 10:
Catch Up
Exam Week: Final Exam
Format TBA
Note: The instructor reserves the right to change the syllabus at his
discretion.