CSCI224_Oct2008 - Heartland Community College

advertisement
Heartland Community College
Master Course Syllabus
Division name: Technology
Course Prefix and number: CSCI 224
Course Title: Programming in JAVA
DATE PREPARED: January 1, 1999
DATE REVISED: April 30, 2008
PCS/CIP/ID NO: 1.1-110202
IAI NO. (if available):
EFFECTIVE DATE OF FIRST CLASS: January 1, 2009
CREDIT HOURS: 3
CONTACT HOURS: 4
LECTURE HOURS: 2
LABORATORY HOURS: 2
CATALOG DESCRIPTION:
Prerequisite: CSCI 131 with a grade of C or better, or equivalent. Students who have
completed CSCI 130 AND CSCI 131 will not be given credit for CSCI 224 toward their
program of study. This course is intended to be both an introduction to Java and the first
course in a series designed to teach the fundamentals of Java and prepare students for
Java Programmer Certification and Java Developer Certification. The course covers
fundamental object-oriented programming concepts and helps develop problem-solving
skills using an object-oriented approach. It also covers development of programs using
the techniques of object-oriented programming and design, and the basics of the Java
programming language. The course will give students experience with classes and
objects, inheritance and derived classes, and reusable code. Programming assignments
will provide practical experience with Java and OOP concepts.
TEXTBOOKS:
Due to the rapidly changing nature of the Computer Science field, it is impossible to
predict which book will actually be used for the course. An example text is:
Horstmann, C. S., Cornell, G. (2008) Core Java, Volume I – Fundamentals. Upper Saddle
River, NJ: Prentice Hall., 8th Edition.
RELATIONSHIP TO ACADEMIC DEVELOPMENT PROGRAMS AND
TRANSFERABILITY:
CSCI 224 fulfills 3 semester hours of elective credit for the A.A. and A.S. degrees. It
should transfer to most colleges and universities as an elective course. However, since
this course is not part of either the General Education Core Curriculum or a baccalaureate
major program described in the Illinois Articulation Initiative, students should check with
an academic advisor for information about its transferability to other institutions.
COURSE OBJECTIVES (Learning Outcomes)
Learning
At the completion of this course, the student should be able
Assessment
Outcome
to:
Tool
Item
CO1
Class
Participation &
Exams
2. Apply the object-oriented principles of encapsulation,
composition, abstraction, polymorphism, and inheritance to PS4
analyze problems and design solutions.
Assignments,
Labs, Exams,
&
Comprehensive
Final
3. Use classes, objects, and methods to implement objectoriented designs.
Assignments,
Labs, Exams,
&
Comprehensive
Final
4. Identify and use appropriate data types and control
structures within class and method implementations.
Assignments,
Labs, Exams,
&
Comprehensive
Final
5. Determine appropriate testing procedures for simple
problem algorithm associated computer solutions.
Assignments,
Labs, Exams,
&
Comprehensive
Final
6. Describe object oriented programming and its
underlining principles and methods.
Class
Participation &
Exams
1. Explain classical problem solving strategies and how to
implement them in varying circumstances.
CO1
7. Select and implement appropriate data structures to store
and process large amounts of data for a given problem.
Assignments,
Labs, Exams,
&
Comprehensive
Final
8. Implement basic searching and sorting techniques.
Assignments,
Labs, Exams,
&
Comprehensive
Final
9. Solve complex problems using threads.
Assignments,
Labs, Exams,
&
Comprehensive
Final
10. Identify and correct thread-related problems including
deadlock, livelock, and starvation
Assignments,
Labs, Exams,
&
Comprehensive
Final
COURSE/LAB OUTLINE:
1. Introduction to Objects
2. Basic Java syntax
3. Documentation
4. Operators and Control Structures
5. Encapsulation and Implementation Hiding
6. Inheritance and Polymorphism
7. Initialization and Cleanup
8. Error and Exception Handling
9. The IO systems (1.0 and 1.1+ )
10. Object Collections
11. Threads
METHOD OF EVALUATION (Tests/Exams, Grading System):
Exams/Assignments:
Assignments
Exams
Comprehensive Final
Total
%
50
30
20
100
ASSIGNMENTS: Each student will be expected to complete graded
programming assignments during the semester. These assignments allow the
student to demonstrate both their knowledge of the subject matter and the
integration of the problem solving strategies necessary for programming. The
assignments will also assist students in preparing for the exams. Each assignment
must include proper documentation and program code.
EXAMS: The Computer Science Department believes that the demonstration of
programming is absolutely necessary in order to assess a student’s
progress. Therefore the exams will require students to write code. The problems
used in exams will be representative of the problems presented in the assignments
and labs.
Grading Scale:
A
B
C
D
F
90% - 100%
80% - 89%
70% - 79%
60% - 69%
Below 60%
REQUIRED WRITING AND READING:
There are no research or writing assignments in this course. However,
documentation is an important part of computer programming. Therefore,
students will be expected to turn in complete, well-written documentation with
each of their programs. All programs are to include descriptive comments within
the source code. In addition, certain other documentation methods taught during
the course of the semester will be required.
Download