Professor: Darci L. Burdge
Phone: 572-7976
Office: C3064
Office Hours: Tuesday (
E-mail: Darci.Burdge@ncc.edu
![]()
Class Meets:
Monday - 12:30 - 1:45 (B217)
Tuesday - 1:00 - 3:45 (B221)
Wednesday – 12:30 - 1:45 (B217)
Prerequisite:
At least a C in
Textbook:
Java Software Solutions: Foundations of Program Design, 7th Edition
by Lewis, J. & Loftus, W., Addison-Wesley, 2012
A custom version of the textbook containing chapters 1
– 7 is available at the campus bookstore.
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 (http://blackboard.ncc.edu/webct/entryPageIns.dowebct)
for notification of assignments and to submit their work for grading.
Computer Center Requirement:
As part of this course, you should avail yourselves of further study and/or
educational assistance available in the Computer Learning Center: B225. These
activities and use of the resources provided are deemed an integral part of the
course, and will help you master necessary knowledge and skills. NOTE: In
order to use the Learning Center you must present a valid
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 March 26. You must
decide by March 26 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 6 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. On the day a project is due you must submit the appropriate
file(s) prior to the specified time.
Exams:
There will be 2 exams given throughout the semester in addition to a 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 12 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 late
arrival/early departure will count as half an absence. Since attendance is so
critical to learning, students who attend class will be given special
consideration at the end of the semester. Students who have no more than 3
absences will have their lowest laboratory assignment dropped and 5 points
added to their project average. The new laboratory and project averages will be
used 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:
Final grades will be determined by the following percentages:
![]()
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.
|
Jan. 23 |
Introduction, course outline and policies, what is a program: primitive data types, variables, assignment statements, mathematical operations, output |
|
Jan. 24 |
Lab #1—Introduction |
|
Jan. 25 |
Input, introduction to Strings: classes and objects, declaring reference variables and instantiating objects, pair programming discussion |
|
Jan. 30 |
Calling methods in the String class, String group exercise - Project 1 Assigned |
|
Jan. 31 |
Lab #2 – Parsing a URL |
|
Feb. 1 |
Additional String methods and understanding a method
header, reading documentation |
|
Feb. 6 |
Labeling the parts of a program, using multiple classes - Project 1 Due |
|
Feb. 7 |
Lab #3 – Exploring programmer defined classes |
|
Feb. 8 |
Intro to programmer defined classes, variables (reference vs. primitive), constructors - Project 2 Assigned |
|
Feb. 13 |
Writing instance methods, if statements |
|
Feb. 14 |
Lab #4 – Writing the Card class |
|
Feb. 15 |
Methods, nested if-else statements, and boolean operators - Project 2 Due |
|
Feb. 27 |
Review for Exam 1 |
|
Feb. 28 |
Exam 1 |
|
Feb. 29 |
Writing programmer defined classes revisited - Project 3 Assigned |
|
Mar. 5 |
Writing methods that return a value, scope of variables, error types |
|
Mar. 6 |
Lab #5 – Writing the
Dice class |
|
Mar. 7 |
Application vs. programmer defined classes, labeling a programmer defined class, intro to for loops |
|
Mar. 12 |
Tracing code in a programmer defined class |
|
Mar. 13 |
Lab #6 – Writing the PhoneBookEntry class - Project 3 Due |
|
Mar. 14 |
|
|
Mar. 19 |
More for loops, intro to while loops - Project 4 Assigned |
|
Mar. 20 |
Lab #7 – Writing the PokerHand class |
|
Mar. 21 |
Introduction to arrays of primitives |
|
Mar. 26 |
Arrays of primitives, methods that process arrays of primitives |
|
Mar. 27 |
Lab #8 – Writing the Student class |
|
Mar. 28 |
Arrays of primitives continued - Project 4 Due |
|
Apr. 9 |
Review for Exam 2 |
|
Apr. 10 |
Exam 2 |
|
Apr. 11 |
Arrays of primitives continued, the game of Yahtzee - Project 5 Assigned |
|
Apr. 16 |
Intro to arrays of objects, the Deck class |
|
Apr. 17 |
Lab #9 – Writing the Hand class |
|
Apr. 18 |
Writing methods that process arrays of objects |
|
Apr. 23 |
Writing methods that process arrays of objects continued... |
|
Apr. 24 |
Lab #10 – Writing the Course class |
|
Apr. 25 |
More practice with arrays of objects - Project 5 Due |
|
Apr. 30 |
Arrays of objects: inserting, searching - Project 6 Assigned |
|
May 1 |
Lab #11 – The Course class continued... |
|
May 2 |
Arrays of objects: inserting, searching, deleting |
|
May 7 |
Arrays of objects: inserting, searching, deleting continued… |
|
May 8 |
Lab #12 – Writing the BlackjackHand
class |
|
May 9 |
Inheritance - Project 6 Due |
|
May 14 |
Review for Final Exam |
|
May 15 |
Final Exam – Part 1
|
|
May 16 |
Final Exam – Part 2 |