|
Catalog Data |
The course helps you learn about programming
style, top down design, testing methods, verification
techniques, the analysis of algorithms and data
abstraction. It stresses the reasoned derivation,
development and implementation of correct programs
and the use of sound programming tools and paradigms.
It uses the language Java.
Prerequisite: CS/ECE 233
Corequisite: CS 233 L or ECE 244
One semester, three credits.
|
| Textbook |
"Objects, Abstraction, Data Structures and Design Using Java",
E. Koffman & P. Wolfgang, Wiley, 2005.
|
| Prerequisites |
You must have fundamental skills in problem solving,
objected oriented design and algorithms and a working
knowledge of C++ or Java.
|
| Goals |
You will learn basic concepts of abstract data types,
algorithms, recursion and classes in Java. You will
improve your skills in design and problem solving in
computer science and will implement designs with
programs in Java.
|
Syllabus |
| Topic |
Chapter |
|
Introduction to software design
| 1
| |
Program correctness and efficiency
| 2
| |
Inheritance and class hierarchies
| 3
| |
Lists and the Collection interface
| 4
| |
Stacks
| 5
| |
Queues
| 6
| |
Recursion
| 7
| |
Trees
| 8
| |
Sets and maps
| 9
| |
Sorting
| 10
|
|
| Final Exam |
The final exam is comprehensive.
|
| Attendance |
You must attend class regularly.
|