C S 110

Download as PDF

How to Program

Computer ScienceCollege of Computational, Mathematical, & Physical Sciences

Course Description

Introduction to programming and computer science for those with no prior programming experience. Focuses on the basic aspects of programming, with an emphasis on core principles. Labs provide a supportive environment to learn how to program with peers. Weekly discussions will introduce some of the many ways computer science interacts with society. Programming assignments will demonstrate how to use computing in a variety of disciplines. \n

When Taught

Fall, Winter, Spring

Min

3

Fixed/Max

3

Fixed

3

Fixed

2

Note

Designed for those with no prior experience in programming

Title

Programming

Learning Outcome

Demonstrate the ability to independently write small programs (about 150 lines of code) to solve meaningful problems. Students will develop the discipline to translate requirements into orderly solutions, a process that is spiritually strengthening as they learn to bring order out of chaos.

Title

Basic Programming Constructs

Learning Outcome

Effectively use basic programming constructs, including variables, statements, expressions, and control. Mastering these fundamental tools is intellectually enlarging, providing students with a rigorous framework for logical reasoning.

Title

Abstraction and Decomposition

Learning Outcome

Develop the ability to use functions to manage complexity and describe programs as a flow of actions. This systematic approach to problem-solving fosters a character building resilience, as students learn to tackle daunting challenges with patience and precision.

Title

Algorithms and Data Structures

Learning Outcome

Effectively utilize basic algorithms and data structures to represent and store data. Students will view the efficient use of these tools as a form of stewardship, preparing them for a life of lifelong learning and service in an increasingly technical world.

Title

Testing and Debugging

Learning Outcome

Use simple tests and debuggers to identify and correct errors. This iterative process of refinement encourages honesty and humility, ensuring that students' technical growth is matched by their commitment to integrity.