Computer Programming - Online and Distance Education

Computer Programming

 

Courses

Completion of the Computer Programming Certificate requires 22 credit hours (eight courses). Students must have a 2.0 or higher GPA in all required courses to be awarded the certificate.

NOTE: Students who intend to pursue graduate study in computer science after completion of the certificate should take MA 141 in place of MA 121.

MA 121 - Elements of Calculus

Units: 3

For students who require only a single semester of calculus. Emphasis on concepts and applications of calculus, along with basic skills. Algebra review, functions, graphs, limits, derivatives, integrals, logarithmic and exponential functions, functions of several variables, applications in management, applications in biological and social sciences. Credit is not allowed in more than one of MA 121, 131, 141. MA 121 may not be substituted for MA 131 or MA 141 as a curricular requirement

GEP: Mathematical Sciences

Offered in Fall Spring Summer

CSC 116 - Introduction to Computing - Java

Units: 3

An introductory course in computing in Java. Emphasis on algorithm development and problem solving. Careful and methodical development of Java applications from specifications; documentation and style; appropriate use of control structures; classes and methods; data types and data abstraction; object-oriented programming and design; software testing. Most seats reserved for Computer Science majors.

Offered in Fall Spring Summer

Find this course:

2021 Fall Term 2022 Spring Term 2022 Summer Term 1

CSC 216 - Software Development Fundamentals

Units: 3

The second course in computing, intended for majors and minors. Emphasis is on exploring encapsulation; polymorphism; composition; inheritance; finite state machines; linear data structures [including array lists, linked lists, stacks, queues, and the tradeoffs in implementation]; and recursion [including recursive linked lists] in the context of the software development lifecycle including the processes and practices for designing, implementing, and testing high quality software.

Offered in Fall Spring Summer

Find this course:

2021 Fall Term 2022 Spring Term 2022 Summer Term 1

CSC 217 - Software Development Fundamentals Lab

Units: 1

Laboratory course to accompany CSC 216 lecture course. Application of the software processes and practices to design, implement, and test the development of software solutions requiring composition; inheritance; finite state machines; and linear data structures, including recursive linked lists.

Offered in Fall Spring Summer

Find this course:

2021 Fall Term 2022 Spring Term 2022 Summer Term 1

CSC 226 - Discrete Mathematics for Computer Scientists

Units: 3

Propositional logic and predicate calculus. Logic gates and circuits. Methods of proof. Mathematical induction. Recursive definitions and functions. Solving recurrences. Asymptotic growth of functions. Elementary combinatorics and probability. Introduction to graph theory. Binary relations, including posets and equivalence relations. This course assumes knowledge of topics covered in high-school Algebra I and II. Most seats reserved for CSC and CPE majors and Computer Programming minors.

Offered in Fall Spring Summer

Find this course:

2021 Fall Term 2022 Spring Term 2022 Summer Term 1

CSC 230 - C and Software Tools

Units: 3

In this course, students will develop skills in several important areas. First, we'll get some experience working in C, a language that lets us think like procedural rather than object-oriented developers. Also, being a fairly low-level language, C lets us see and control more of what's going on in the hardware. This can help us think about using the hardware more effectively, whether we're actually programming in C or in a higher-level language. While we learn C, we'll also learn about tools and techniques that help us build, manage, debug and analyze software projects.

Offered in Fall Spring Summer

Find this course:

2021 Fall Term 2022 Spring Term 2022 Summer Term 1

CSC 246 - Concepts and Facilities of Operating Systems for Computer Scientists

Units: 3

This course prepares students to understand fundamental issues in operating systems. Students will be introduced to multi-threading, synchronization, scheduling, virtual memory, security and communication/networking. The material will be covered in terms of operating systems services exported by the operating systems interface. Current trends will be discussed to give a better understanding of future developments likely to be included in operating systems.

Offered in Fall Spring Summer

Find this course:

2021 Fall Term 2022 Spring Term 2022 Summer Term 1

CSC 316 - Data Structures and Algorithms

Units: 3

Abstract data types; abstract and implementation-level views of data types. Linear and branching data structures, including stacks, queues, trees, heaps, hash tables, graphs, and others at discretion of instructor. Best, worst, and average case asymptotic time and space complexity as a means of formal analysis of iterative and recursive algorithms.

Offered in Fall Spring Summer

Find this course:

2021 Fall Term 2022 Spring Term 2022 Summer Term 1