Montgomery County Community
College
Spring 2006
3-2-2
TIME:
Monday Evenings, 6:00 PM - 9:50 PM (Two 5 minute breaks)
CLASS FORMAT: Lecture and discussion Room: Parkhouse 328 Time: 6:00 PM
- 7:55 PM
Computer Lab Room: Parkhouse 328 Time:
8:00 PM - 9:50 PM
|
INSTRUCTOR:
Robert Moyer |
E-MAIL: rmoyer@mc3.edu |
|
PHONE: (484)
865-5688
(day)
(610)
584-4730 (evenings) |
Faculty Home Page: faculty.mc3.edu/rmoyer/ |
|
OFFICE HOURS/LOCATION: by
appointment |
|
This
course introduces students to the object-oriented programming paradigm and
focuses on the definition and use of classes and the fundamentals of
object-oriented design. It is designed for students that already have a firm
foundation in procedural programming concepts. A high-level programming
language such as Java or C++ is used. This is the second course for computer
majors.
1. Understand objects and
object-oriented design principles.
2. Produce well designed and
documented programs that are organized in a logical and efficient fashion.
3. Learn to apply
fundamental computing algorithms (such as simple sorts and searching
algorithms) to create programs demonstrating mastery of these concepts.
4. Understand the history
and development of programming languages and paradigms.
5. Understand the basic
concepts surrounding computer language translation.
Lecture,
discussion, hands-on lab exercises, homework assignments, group projects,
quizzes and exams
Required Text and Other Materials
Student should have removable
storage devices (diskettes, flash memory, etc) for transporting programming
assignments.
Grading (Criteria and Methods of
Evaluation)
Final grade for the course will
consist of the average of the following five grading instruments. Each
component will receive a letter grade (A+,A,A-,B+,B,B-, etc.). Quiz and Exam
scores will be graded based on percentage. (e.g. Total Points Earned/Total
Possible Points). Programming assignments will be graded on correctness,
completeness and style. Programs will be weighted by complexity, to be
determined when the assignments are given. The letter grades will then be
used to calculate the final grade for the course. (e.g. sum of (grade *
percent) ) Failing 2 or more of the 4 grading instruments will result in
failing the course.
|
Weekly Quizzes |
20% |
Total points, normalized to 100 (lowest score dropped) |
|
Lab Exercises |
20% |
Simple lab exercises to be done in the lab portion of
class. Labs and schedule TBD. These are scheduled Closed labs. Note: some lab
time will be Open lab and may be used for any programming assignments. (lowest score dropped) |
|
Program assignments |
30% |
Approximately 7 programs to be written by the student
as Homework. |
|
Final Exam |
30% |
(see format below) |
|
Grade |
Points |
+ |
- |
|
A |
4.0 |
4.25 |
3.75 |
|
B |
3.0 |
3.25 |
2.75 |
|
C |
2.0 |
2.25 |
1.75 |
|
D |
1.0 |
1.25 |
0.75 |
|
F |
0.0 |
na |
na |
For example:
Quiz grade of A+ would be 4.25 * .25 =
1.0625
Lab grade of B- would be 2.75 * .20
= 0.550
Program grade of B would be 3.0 * .30 = 0.90
Final Exam grade A- would be 3.75 * .25= 0.9375
For a total of 3.45 for a course
grade of B (>=2.5 and < 3.5)
A = >=3.5 points
B = >=2.5 and < 3.5
C = >=1.5 and < 2.5
D = >= 0.5 and < 1.5
F = <0.5
Final exams will be approximately
60% short definitions, fill-in blanks, matching and true/false questions.
Quizzes will given most class periods. Questions on the quizzes will most
likely reappear on the examination with minor editing. Quizzes, therefore,
provide the student with an excellent study aid for the exam. They should not
be missed. If you miss a quiz, you may get a copy to study from, but NO
MAKE-UP QUIZZES WILL BE GIVEN. Quizzes will take only a few minutes of each
class period. They will be based on the previous week's reading assignment and
class discussions.
The final 40% of the exams will be
short program stubs and/or discussions on the concepts of data abstractions,
algorithms, and data structures.
Programming assignments will be
given throughout the semester to give the student a working knowledge of course
concepts and problem solving techniques. Students should keep current with
assignments. Assignments due dates will be stated when the assignment is given.
The maximum grade obtainable on a late assignment will be one (1) letter grade
lower for each week an assignment is late. There will be approximately 7
programming assignments during the semester.
Attendance
Policy (absence and lateness)
Attendance is expected at all
lecture sessions. Computer lab time is for the benefit of the student. Students
should attend all labs sessions where they will have access to the Instructor,
question and answer time on assignments, and lab exercises reinforcing material
covered during lecture. Some lab time will be free time used to work on class
assignments. However, assignments may be done on any computer the student has
access to, including the Learning Resource Center.
Missed Work/Test Make-Up Policy
Assignments are due as scheduled.
Final exams should be taken as scheduled. (Make-ups and extensions are by prior
arraignment only). Quizzes and late assignments as noted above in the grading
section.
Withdrawal Policy
Students may withdraw from the
class according to the College Guidelines. Special consideration may be given
on an individual basis.
Students who are in otherwise good
standing in the course, may be given the grade of INCOMPLETE, provided that any
conditions outlined by the college are met. Good standing means evidence of
progress toward all assignments can be demonstrated and a reasonable plan for
completion provided. In the case of a missed Final Exam, an UNAVOIDABLE and
documented reason for missing the exam is required. In no case will workload
from concurrent course work be considered as a reason for granting INCOMPLETE
status.
A student may change from Grade to
Audit status at any time, again within the rules of the college.
Student Academic Code of Ethics
"In the pursuit of knowledge
and scholarship, all members of the academic community at MCCC must maintain a
constant commitment to academic integrity. The College provides an environment
that fosters critical thinking and judgment, and in order to safeguard the
integrity of the institution, students are expected to follow the policies of
the College and the faculty. To fulfill their part of that commitment, students
must adhere to an academic code of ethics by refraining from participation in
acts of academic dishonesty. By attending MCCC, students accept this Student
Academic Code of Ethics and agree to the following:
·
Students must do all of their own work.
·
Students must not cheat.
·
Students must not help others to cheat.
Students who are unclear about the validity of an academic procedure they are
about to undertake should ask their instructor for guidance beforehand.
Violations of this code of ethics will result in sanctions, including possible
dismissal from College." (See complete Student Code of Ethics in the
catalog, Student Handbook Calendar, or on line at http://www.mc3.edu/gen/polpro/st_acad_code_of_ethics.html)
Please note:
Students may consult each other when solving programming exercises. Work turned
in for grade, must show sufficient understanding of the problem and original
effort on the part of the student. Copies of other students programs will not
be accepted for credit and will be considered in violation of the above code of
ethics.
Students with Disabilities Policy:
“Students with disabilities may be
eligible for accommodations in this course. Contact the Director of Services
for Students with Disabilities in the Counseling Center, College Hall, at (215)
641-6575/6577 for more information. At West Campus, contact the Director of
Student Affairs, (610) 718-1839.”
Other:
Homework for this class can be expected to be from 5 to 15 hours per
week. Students are expected to have any reading assignments complete before the
class in which they will be discussed.
Java
Technology
Java 2 Platform, Standard Edition (J2SE)
Version 1.5 is desirable
You can download the JAVA SDK from
Sun. http://java.sun.com/j2se/
A IDE (Integrated Development
Environment) makes programming much easier. Most students are familiar with
jGRASP. Other IDEs include Netbeans, Bluejay, Eclispe, Jbuilder, to name just a
few.
Since Java runs on most platforms,
feel free to use your favorite. I have JDKs running on Windows, Linux, and Mac.
Lab PCs use Windows XP.
· P(rogramming) = Java 5 Illuminated, Anderson
& Franceschi, J
· C(oncepts) = Computer Science Illuminated, 2nd
edition, Dale & Lewis, Jones and Bartlett
There is a
Lab period scheduled each week. Some labs will be closed, i.e. activities will
be planned, may be individual or team but don’t as a class. The remaining labs
will be open and are to be used for programming projects. Labs activities and
programming assignments will be defined during the semester.
|
Class/Week # |
Class
Date |
Chapter(s)Discussed |
Topic(s) |
|
1 |
23-Jan-06 |
C-6 |
Course Overview, Authors Web Sites, Lab #1 Tools and
resources. |
|
2 |
30-Jan-06 |
C-7 |
Low level languages, Lab #2 the PEP/7 machine |
|
3 |
06-Feb-06 |
P1-6 |
Review of JAVA programming language from CIS 111, Lab #3 |
|
4 |
13-Feb-06 |
P-7 |
Object Oriented Design, Lab # 4 |
|
5 |
20-Feb-06 |
C-10,
C-11 |
Operating Systems, File Systems and Directories, Lab #5 |
|
6 |
27-Feb-06 |
P-9
(P-8) |
Multidimensional Arrays, ArrayList, Sorting and Searching
revisited, Lab #6 |
|
7 |
06-Mar-06 |
P-12 |
User Interfaces, Lab #7 |
|
8 |
20-Mar-06 |
P-10 |
Inheritance, Polymorphism and Interfaces, Lab #8 |
|
9 |
27-Mar-06 |
P-11 |
Exceptions, Lab #9 |
|
10 |
03-Apr-06 |
P-13 |
Recursion, Lab #10 |
|
11 |
10-Apr-06 |
C-13 |
Artificial Intelligence, Lab #11 |
|
12 |
17-Apr-06 |
C-9,
P-14 |
Abstract Data Types and Algorithms, Collections. Lab #12 |
|
13 |
24-Apr-06 |
C-12, C-14 |
Information Systems, Simulations and other Applications,
Lab #13 |
|
14 |
01-May-06 |
C-17 |
Limits of Computers, Review for Final, Lab #14 – Final day
for all assignments. |
|
15 |
08-May-06 |
|
Final Exam |
This file was created by Robert
Moyer on 01/05/06.