Official Course
Description: MCCCD Approval: 6-27-2006 |
||
CSC205AB 2006 Fall – 2011 Fall |
L+L 4.0 Credit(s) 4.0 Period(s) 4.0 Load Acad |
|
Object
Oriented Programming and Data Structures |
||
Covers Object-Oriented design and programming; elementary
data structures; arrays; lists; stacks; queues; binary trees; recursion;
searching and sorting algorithms. Prerequisites: CSC100, or CSC110, or
permission of Instructor. Course
Attribute(s): General Education Designation:
Computer/Statistics/Quantitative Applications - [CS] |
||
Go to Competencies Go to Outline
MCCCD
Official Course Competencies: |
|
|
|
CSC205AB 2006 Fall
– 2011 Fall |
Object Oriented Programming and Data Structures |
1.
|
Describe how modern Software Engineering techniques are
used in program development. (I) |
2.
|
Implement programs
that use Object-Oriented Programming techniques: classes, aggregate classes,
inheritance, interfaces, abstract classes, and polymorphism. (II) |
3.
|
Write applications that handle run-time errors by using Exception
Handling techniques. (II, III) |
4.
|
Write programs using basic data structures such as arrays,
ArrayLists, and Vectors. (II, IV) |
5.
|
Implement linked lists, stacks, and queues using Object-
Oriented techniques. (II, IV) |
6.
|
Implement Binary Search Trees and use recursive methods as
part of the implementation. (II, IV, V) |
7.
|
Analyze and
compare the efficiency of different searching and sorting algorithms,
including algorithms that are implemented recursively. (V) |
8.
|
Write applications that read and write text and Object
files. (II, VI) |
9.
|
Discuss social and ethical issues related to Computer
Science. (VII) |
10.
|
Implement a simple Graphical User Interface as part of an
application. (VIII) |
Go to Description Go to top of
Competencies
MCCCD
Official Course Outline: |
|
|
|
CSC205AB 2006
Fall – 2011 Fall |
Object Oriented Programming and Data Structures |
I. Applying Modern Software
Engineering Principles A. Software Life Cycle
Model B. Pre- and post-conditions
of an algorithm C. Generating test cases D. Design UML (Unified
Modeling Language) diagrams and use them to implement Object Oriented
Programs II. Using Object Oriented
Programming constructs A. Classes and subclasses B. Aggregate classes C. Inheritance D. Polymorphism E. Interfaces and abstract
classes III. Applying Exception
Handling techniques A. Signal existence of
runtime error B. Handle runtime error
without program termination IV. Introducing Data
Structures A. Arrays B. Simple data structures
such as ArrayLists/Vectors C. Linked Lists D. Stacks E. Queues F. Binary Trees V. Understanding algorithms
A. Recursion B. Searching C. Sorting D. Efficiency of Algorithms
using BigO notation VI. Using Input/Output mechanisms A. Console Input/Output B. Reading and Writing text
files C. Serialization VII. Understanding other issues
related to Computer Science A. Social
and/or ethical issues VIII. Using Graphical User
Interfaces A. Implementation using
existing classes |