[an error occurred while processing this directive]
Syllabus: CS 2121 Introduction to Programming in Java
Course Web Page
Course Text and Resources
Programming.java: An Introduction to Programming Using Java, second
edition, by R. Decker and S. Hirshfield, PWS Publishing.
The Java Tutorial,
Course Content and Objectives
This course is an introduction to object-oriented programming using Java.
It assumes no prior programming experience, but the student must have taken
at least three years of high school mathematics.
The course satisfies the Liberal Education category 3 requirement.
Course coverage includes the design and implementation of both graphical
applets and standalone applications, and the use of visual components in
graphical user interface design.
Language elements covered include loops, arrays, input/output structures,
events, exceptions, and threads.
The course will present material on the newer Java Swing tools for building
This material is not discussed in the textbook.
However, there is an excellent tutorial available on the web, which will be
used as a substitute for portions of the textbook.
The course will also use a local web site that provides a simple
introduction to the Java Swing graphical user interface components.
Your grade will be based on the total points you earn on exams, programming
assignments, and lab activities.
These points are broken down as follows:
|| points each
| Midterm Exam
| Final Exam
| Programming Assignments
| Lab Exercises
| Grand Total
The final grades will be based on the 400 point total.
- 90% guarantees an A-
- 80% guarantees an B-
- 70% guarantees a C-
- 60% guarantees a D
These grade cutoffs will never be raised but they may be lowered.
We will meet in lecture on Mondays and Wednesdays, when new material will
We will follow the text generally, but non-text material may also be
included in the lectures.
The midterm exam will also be given during the lecture hour on Monday,
The final exam is from 8:00 a.m. to 9:55 a.m. on Monday, May 12.
On Wednesdays you will meet in a computer lab, where you will be led by a
Generally, the Wednesday labs will alternate between structured lab
exercises one week and programming assignment demonstrations the next week.
The lab exercises are designed to be completed during the lab period.
They will be posted on the course schedule by the Monday before the lab
When possible you should read the lab exercise before coming to the lab.
Each lab exercise will be worth 10 points and must be completed by the end
of the lab.
Instructions on what to turn in will be given for each exercise.
Programming assignments will significantly build on the material from the
lab exercises and lectures.
They will be posted on the course web page at least ten days before they
You can expect to spend several hours per week outside of class preparing
these assignments, which will be demonstrated to the teaching assistant
during lab on the days indicated on the term schedule.
On these days, you must have your program completed before you come
By the end of the lab, you must also turn in a lab report for the
Instructions on what to turn in will be given for each assignment.
The Java language has been designed to be platform independent, meaning that
applets and applications written on one machine in a given programming
environment should run on any other machine that supports Java.
For the lab exercises and programming assignment demonstrations, you will
be programming in a UNIX platform, accessed from Windows machines using the
You will be taught to use an emacs editor, although you are not required to
The use of UNIX and emacs, and the programs for compiling and running Java
programs will be described in the first lab exercise.
You are responsible for all material presented in lecture.
Exams will cover all lecture and reading material from the text.
Relevant text chapters will be indicated on the course web page as the
Exam coverage and topics will be given on the course web page well before
the time of the exam.
Exams must be taken on the hour they are scheduled.
They will not be given early, and can be made up only if
documented evidence of medical emergency or death in the family is
presented before the time of the exam.
There are no group assignments in this course, and just like an essay or
term paper, the programs are expected to be your own.
You may discuss an assignment and general approaches to a problem with your
professor, your lab instructor, lab consultants, or your classmates, but
you must design and write the code yourself.
You may consult with others about your design or seek help in debugging,
but you may not collaborate with anyone on the writing of your code.
Programming assignment demonstrations must be given, and reports turned in,
by the end of the lab session in which they are due.
Ample time is given to complete these assignments, and the only reason for
being late will be poor time management.
Therefore, 20% of the total value of an assignment will be deducted for
each day it fails to be turned in by 11:00 a.m.
As instructor I shall make every attempt to treat all students equally,
without regard to race, religion, color, sex, handicap, age, veteran
status, or sexual orientation.
I encourage you to talk to me about your concerns of equal opportunity in
To inquire further about the University's policy on equal opportunity,
contact the Office of Equal Opportunity, 255 DAdB, phone 6827.
If you have any disability (either permanent or temporary) that might
affect your ability to perform in this class, please inform me at the start
of the quarter.
I may adapt methods, materials, or testing so that you can participate
To learn about the services that UMD provides to students with
disabilities, contact the Access Center, 138 Library, phone 8727.
[an error occurred while processing this directive]