C S 111
Download as PDF
Introduction to Computer Science
Computer Science
College of Computational, Mathematical & Physical Sciences
Course Description
Teaches how to design, develop, reason about, and test programs. Topics include higher-order functions, object-oriented programming, recursion, algorithms, data structures, decomposition, interpreters, and regular expressions.
When Taught
All Semesters/Terms
Min
3
Fixed
3
Fixed
3
Fixed
2
Other Prerequisites
CS 110 or equivalent prior programming experience
Recommended
Prior programming experience should include statements, variables, control flow (if/while), and functions
Title
Design
Learning Outcome
Design and develop moderate to medium-sized programs for problems with significant complexity, using both object-oriented and functional paradigms.
Title
Confidence
Learning Outcome
Demonstrate increased confidence in ability to design, develop, and test programs.
Title
Algorithms
Learning Outcome
Effectively use basic algorithms to design and develop a program, including recursion.
Title
Data Structures
Learning Outcome
Use data structures (e.g. lists, dictionaries, linked lists, trees) to organize data in a program.
Title
Modules & Libraries
Learning Outcome
Independently read documentation for a library, understand its operation, and incorporate the library into a program to extend its functionality.
Title
Abstraction
Learning Outcome
Effectively use modules, classes, and functions to decompose functionality of a medium-complexity system.
Title
Testing and Debugging
Learning Outcome
Write unit tests to ensure complete and correct functioning of a program. Explain the meaning of error messages encountered when running a program. Use the debugger in an IDE to step through code execution and identify the source of a bug.
Title
Computing
Learning Outcome
Write programs to accomplish tasks relevant to computer science, such as data visualization, image processing, network communication, storing and retrieving data from databases, etc.