CMP210 D1 - Fall 2009
Professor: Darci L. Burdge
Phone: 572-7976
Office: C3064
Office Hours: Tuesday (
E-mail: Darci.Burdge@ncc.edu
![]()
Class Meets:
Monday -
Wednesday -
Thursday -
Prerequisite:
At least a C in CMP 104 or equivalent, or prior programming experience
including HS programming courses, or MAT 111 or equivalent including HS
pre-calculus, or permission of department.
Textbook:
Java Software Solutions: Foundations of Program Design, 6th Edition
by Lewis, J. & Loftus, W., Addison-Wesley, 2009
Electronic Resources:
Students will use email and Blackboard (an online course management tool)
throughout this course. Students are expected to read their NCC email
accounts (http://www.ncc.edu/studentemail)
daily and to check Blackboard for notification of assignments and to submit
their work for grading.
As part of this course, you should avail yourselves of further study and/or
educational assistance available in the
Students with Disabilities:
If you have - or suspect you have – a physical, psychological, medical,
learning disability, or other health impairment that may impact on your ability
to carry out assigned coursework, I urge you to contact the staff at the Center
for Students with Disabilities (CSD), Bldg. U, 572-7241, TTY 572-7616. The
counselors at CSD will review your concerns and determine with you what
accommodations are necessary and appropriate. All information and documentation
will be kept confidential. I encourage students with disabilities to discuss
accommodations with me.
Withdrawal Policy:
I will grant a grade of "W" any time through Nov. 4. You must decide
by Nov. 4 whether or not you wish to withdraw from this class. It is the
student’s responsibility to file a signed, drop/add form with the
registrar if you wish to withdraw from this class. I will not withdraw any
student for excessive absences or failure to take the final exam. Consideration
will be given to students who request a "W" after the withdrawal
date.
Projects:
There will be approximately 7 programming projects. All projects are expected
to be handed in on time. You will lose considerable points for late projects.
You are required to submit a program that is syntax free and producing some
output, even if the output is incorrect. I will not grade programs which
contain syntax errors or run-time errors. On the day a project is due you must
submit the appropriate files prior to the beginning of class. You must
also submit a printed listing of all source files at the beginning of class.
Exams:
There will be 3 exams given throughout the semester in addition to a cumulative
final exam. Make-up exams will not be given. Consideration will be given to
those students who contact me before the exam (via e-mail or phone) and provide
a valid, documented reason for missing the exam.
Hands-On:
There will be approximately 11 Laboratory meetings. Students will work
in pairs on the assignment distributed at each of these meetings and will be
responsible for completing and submitting these assignments by the end of
class. Due to the fact that you will be working in pairs, it is essential that
you be present and on time for all laboratory meetings.
Attendance:
Attendance is a critical aspect of this course. As such, attendance will be
taken every day at the beginning of class. Please note that every two late
arrivals will count as an absence. Since attendance is so critical to learning,
students who attend class will be given special consideration at the end of the
semester. The final exam will be optional for students who have no more than 3
absences and have maintained an overall average of 90 or above. Students who
have no more than 6 absences and have not exempted the final exam will have
their lowest programming project grade and 1 laboratory assignment dropped in
the calculation of their final grade. Students are responsible for all material
missed due to absence and should contact me or another student prior to the next
scheduled class meeting to determine what was covered and/or assigned.
Grading Policy:
Your final grade is determined by the following:
![]()
Outline:
The following is intended to provide you with an outline of how this course
will progress. Dates of exams, project assignments, and project due dates may
be adjusted to account for progress of the class as a whole.
The Laboratory component of this course should re-enforce material
presented in the classroom.
|
Introduction, course outline and policies, What is a program? Reading a program, the main method |
|
|
Sept. 9 |
Primitive data types, Variables, Assignment statements and mathematical operations, Pair programming homework assigned |
|
Sept. 10 |
Output, Input, Pair programming discussion |
|
Sept. 14 |
Lab #1 - Setting up accounts, Exploring program execution, The Development Environment: an introduction to Eclipse |
|
Sept. 16 |
Introduction to classes and objects: the String class, Declaring reference variables and instantiating objects. Project 1 Assigned. |
|
Sept. 17 |
Introduction to String methods; String group exercise |
|
Sept. 21 |
Lab #2 - Using methods defined in the String class |
|
Sept. 23 |
Additional String methods and understanding a method header. Project 1 Due. Project 2 Assigned. |
|
Sept. 24 |
Labeling the parts of a program, Reading documentation |
|
Sept. 28 |
No Classes |
|
Sept. 29 |
Day Classes Follow a Monday Schedule--Lab #3 - Exploring programmer defined classes: the Card class |
|
Sept. 30 |
Variables (reference vs. primitive), Constructors, Methods, Simple if/else statements |
|
Oct. 1 |
Terminology, Reading documentation, Introduction to programmer defined classes |
|
Oct. 5 |
Lab #4 – Writing programmer defined classes; the Card class. Project 2 Due. |
|
Oct. 7 |
Writing programmer
defined classes |
|
Oct. 8 |
Review For Exam 1 |
|
Oct. 12 |
Exam 1 |
|
Oct. 14 |
Writing methods that return a value, Scope of variables. Project 3 Assigned. |
|
Oct. 15 |
Parts of a programmer defined class, Writing methods |
|
Oct. 19 |
Lab #5 – Writing programmer defined classes; the Dice class |
|
Oct. 21 |
Tracing code in a programmer defined class, Introduction to the PokerHand class |
|
Oct. 22 |
Writing methods that return a value. Project 3 Due. Project 4 Assigned. |
|
Oct. 26 |
Lab#6 – Writing programmer defined classes: the PokerHand class |
|
Oct. 28 |
|
|
Oct. 29 |
Introduction to arrays of primitives |
|
Nov. 2 |
Lab #7 - Writing programmer defined classes: the Student class. Project 4 Due. Project 5 Assigned. |
|
Nov. 4 |
Arrays of primitives continued, Methods that process arrays of primitives |
|
Nov. 5 |
Review for Exam 2 |
|
Nov. 9 |
Exam 2 |
|
Nov. 11 |
No Classes |
|
Nov. 12 |
Labeling the parts of a class, Calling methods on array elements, Error types, Scope. Project 5 Due. Project 6 Assigned. |
|
Nov. 16 |
Lab #8 – Programmer defined classes with arrays; the Dice class |
|
Nov. 18 |
Introduction to while loops |
|
Nov. 19 |
Arrays of objects: the Course class |
|
Nov. 23 |
Lab #9 - Writing the Course class |
|
Nov. 25 |
Arrays of objects
and Methods that process arrays of objects. Project
6 Due. Project 7 Assigned. |
|
Nov. 30 |
Lab #10 - Arrays of objects; the Course class |
|
Dec. 2 |
Processing a list of objects; inserting, deleting, searching |
|
Dec. 3 |
Processing a list of objects continued… |
|
Dec. 7 |
Lab #11 – The Course class continued… |
|
Dec. 9 |
Processing a list of objects continued… |
|
Dec. 10 |
Review for Exam 3. Project 7 Due. |
|
Dec. 14 |
Exam 3 |
|
Dec. 16 |
Inheritance |
|
Dec. 17 |
Review for Final Exam |
|
Dec. 21, 23 |
Final Exam |