CSC 1010 Computers and Applications
Credit Hours 3.0
Prerequisites high school Algebra II
Description

This course is intended for non-computer science majors. It provides an overview of selected major areas of current computing technology, organization and use. Topics surveyed include the history of computing, data representation and storage, hardware and software organization, communications, networking, and Internet technologies, and ethical and social issues.

CSC 1301 Principles of Computer Science I
Credit Hours 4.0
Description

Prerequisite or co-requisite: MATH 1112 or MATH 1113 with a C or higher, or appropriate math placement score. Only for majors in Computer Science, Mathematics, Physics or Engineering, or minor in Computer Science. An introduction to the discipline of computer science. Computer programming is the primary focus of the course, with secondary focus on a breadth of computer science topics. These topics include algorithmic foundations, hardware concepts, virtual machine concepts, software systems, applications, and social issues.

CSC 1302 Principles of Computer Science II
Credit Hours 4.0
Prerequisites CSC 1301 with a "C" or higher
Description

Fundamental principles of computer programming. Expressions, procedures, variable types, data, input/output. Emphasis on structure and clarity as well as correctness.

CSC 2301 Computer Programming for Non-Majors
Credit Hours 3.0
Description

This class introduces students to computer programming. No prior programming experience is required. The class emphasizes design principles (e.g., pseudocode, stepwise refinement, object-oriented design as well as the syntax and semantics of an appropriate language. This class is for non-majors interested in obtaining some fundamental computer programming skills.

CSC 2302 Computer Programming II for Non-Majors
Credit Hours 3.0
Prerequisites CSC 2301 with a grade of C or better
Description

This course is the second of a two-course sequence that introduces advanced computer programming. Topics include: Object-Oriented Programming, Recursion, Graphical User Interface (GUI) development, database development, and Internet and distributed computing.

CSC 2320 Fundamentals of Website Development
Credit Hours 3.0
Prerequisites familiarity with basic programming language concepts
Description

This course provides a foundation for developing dynamic websites and web applications. The first part covers the front-end aspects of web development: creating, designing, and publishing content using HTML, CSS, and JavaScript. The second covers the back-end aspects: using programming languages to generate, manipulate, and manage content (CGI, cookies, server-side scripting), and accessing a database using SQL for common website tasks (forms, user registration). While this course covers web development concepts that are applicable to most popular platforms, it is significantly hands-on. A major component is a final project involving implementing a dynamic website.

CSC 2510 Theoretical Foundations of Computer Science
Credit Hours 3.0
Prerequisites CSC 1301 and (MATH 1112 or MATH 1113 or MATH 2211) with grade C or higher
Description

This course covers the basic theoretical foundations required to study various sub-disciplines in computer science. Topics include: propositional and predicate logic with applications to logic programming, database querying, and program verification; induction and its application in proving correctness and termination of programs; recurrence relations, combinatorics, and graph theory with applications to analysis of algorithms; sets, relations, and functions and their applications in databases, functional programming, and automata.

CSC 2720 Data Structures
Credit Hours 3.0
Prerequisites CSC 1302, MATH 2211, and CSC 2510 or MATH 2420 with grades of "C" or higher
Description

Basic concepts and analysis of data representation and associated algorithms, including linerarly-linked lists, multi-linked structures, trees, searching, and sorting.

CSC 2920 Ethical and Social Issues in Computing
Credit Hours 3.0
Prerequisites CSC 1301 and CSC 1302, each with a grade of C or higher or permission of the department
Description

This course is dedicated to the study of social, ethical, and legal effects of computing on society and its users. Ethical concepts, professional codes of ethics, and the influence of computing on individuals, organizations, and the global economy will be addressed. Students will utilize critical thinking and problem solving skills to analyze and debate case studies on topics some of which include privacy; intellectual property; computer crimes; system failures and implications; and, the impact of technology on society.