ITEC 324. Principles of Computer Science III
Prerequisites: ITEC 220 with a grade of 鈥淐鈥 or better.
Credit Hours: (3)
Continuation, from ITEC 220, of the development of a disciplined approach to programming
with emphasis on data abstraction.
Note(s): Scientific and Quantitative Reasoning designated course.
Detailed Description of Content of Course
Topics include:
1. Object-oriented design
2. Guidelines for class design
3. Design patterns
4. GUI programming and moving shapes
5. Inheritance and abstract classes
6. Interface types
7. Polymorphism
8. Multithreading
9. Data structures: heaps and binary search tree
10. Sorting and searching: quicksort, mergesort, heapsort, shell sort, and radix sort
11. Recursion: implementing recursive algorithms
12. Analysis of algorithms
Detailed Description of Conduct of Course
Program examples for some problems will be introduced by the instructor, and students
will then be required to complete projects that solve problems similar to those discussed
in class.
Students will progressively learn more advanced techniques such as algorithm design
and development, data structures, and the application of software engineering methods
from the lectures and programming exercises.
Goals and Objectives of the Course
Students who complete the course will be able to:
1. Analyze quality of a class design as well as design and implement software using
an object-oriented approach with various artifacts such as use cases, CRC cards, and
UML diagrams.
2. Design and use interfaces and implement a program that uses polymorphism.
3. Identify a pattern that applies in a problem solving situation and use a pattern
to solve a software design problem.
4. Design and implement a multithreading program.
5. Analyze and implement recursive searching and sorting algorithms including quicksort,
mergesort, heaps, and binary search using an appropriate data structure.
6. Analyze algorithms in terms of a big-Oh notation.
Assessment Measures
Students will be evaluated based on several major programming assignments and examinations.
Other Course Information
None.
Review and Approval
October 30, 1996 New course proposal Edward G. Okie, Chair
Sept. 25, 2001 Updated John P. Helm, Chair
Feb. 17, 2003 Updated John P. Helm, Chair
Sep. 27, 2007 Change number from 224 Art Carter, Chair
Revised: June 1, 2012
March 01, 2021