All provisions within this catalog are subject to change without notice. If you have questions or comments, please contact admissions@gfcmsu.edu.

Computer Science/Programming (CSCI)


CSCI 094 PCE Non-credit CSCI Course

CEUs: 6

Term: (Based on sufficient demand)

Non-credit professional and continuing education (PCE) courses offered to provide condensed coursework to meet the needs of working students and professionals. These courses are eligible for Continuing Education Units (CEUs) and are transcribed on the student's continuing education transcript.

CSCI 100 Intro to Programming

Credits: 3

Term: (F, S)

Prerequisite OR Corequisite: CSCI 105

This course is intended to provide an introduction to computer programming for the student with little or no prior experience and to help students considering a major in computer science to decide whether or not to persue its study. The strategic goals of this course are to help students gain confidence in their ability to write small programs; map everyday business problems/tasks to a programming framework; provide an easier entry into the field than afforded by traditional computer science or engineering programs; provide students with leverage to compete for jobs by providing competence and confidence as programmers; and allow students from other disciplines to make use of computational methods in their chosen field.

CSCI 105 Computer Fluency

Credits: 3

Term: (F, S, Su Based on sufficient demand)

Introduces the skills and concepts of information technology, both from practical and a more theoretical point of view. During lectures and interactive computer labs, students will explore a wide range of digital and information technologies, including common PC applications, networking, databases, privacy, and security.

CSCI 111 Programming with Java I

Credits: 3

Term: (S)

Prerequisite: CSCI 105 and M 090; or qualifying placement score within the past 3 years.

Programming with JAVA I introduces the students to the basic concepts of programming. Students will learn how to design programs using decision-making processes and breaking down components to assess what is necessary for the program to produce the required results. Students will learn how objects and their corresponding data types interact with the methods and classes. The programs will use a variety of methods, arrays, control structures, iteration, and sequencing to complete the requirements of the programs.

CSCI 132 Basic Data Structures and Algorithms

Credits: 4

Term: (F)

Prerequisites: CSCI 100 and CSCI 111

This is a third semester programming course that makes a deeper examination of the nature of data representation and algorithm analysis. Major topics include the fundamental data structures used in modern programming (lists, stacks, queues, and trees) as well as investigation of the techniques used to perform algorithm analysis.

CSCI 181 Web Design and Programming

Credits: 4

Term: (F, S, Su based on sufficient demand)

This course focuses on the fundamental technologies and techniques essential to development of web-based applications. Topics include basics of web design, readability and accessibility, HTML5, CSS. Use of coding tools, validation, site hosting and FTP are examined. Students in the course will design, code, validate, and host a complete web-site as part of a semester-long project.

CSCI 211 Client Side Programming

Credits: 3

Term: (F)

Prerequisites: CSCI 111, CSCI 181

This course focuses on the technologies and techniques used to deliver rich content in web browsers. The primary objective in this course will be proficiency using JavaScript and various JavaScript libraries.

CSCI 213 Web Programming Techniques

Credits: 3

Term: (S)

Prerequisites: CSCI 111, CSCI 240 and CSCI 181

This course provides a thorough treatment of server-side programming as it applies to Web applications using PHP and relational database. Students will develop and deploy a web application of medium complexity that utilizes PHP and a relational database.

CSCI 223 Software Development

Credits: 3

Term: (S)

Prerequisite: CSCI 111 and CSCI 240

This course provides an in-depth examination and practical application of the methodologies for software design and development. Both classic (Waterfall) and emerging (Agile) methodologies are investigated. Basics of project management is explored as well. Students will gain experience by producing software using various methodologies.

CSCI 232 Data Structures and Algorithms

Credits: 3

Term: (S, Su based on sufficient demand)

Prerequisite: CSCI 132

An advanced treatment and continuation of the content covered in CSCI 132. Topics include in-depth examination and application of trees, binary trees, dictionaries, graphs, hash tables and heaps. Algorithm work analysis and validation are examined.

CSCI 240 Databases and SQL

Credits: 3

Term: (S)

Prerequisite: CSCI 100

This course presents the fundamentals of relational database design and implementation. Major topics include design models, normalization forms, Data Definition Language (DDL), Data Manipulation Language (DML) and Structured Query Language (SQL). These topics will be reinforced by a semester-long, group project to implement as a simple buisness database.

CSCI 298 Internship

Credits: 3

Term: (S)

Prerequisite: Sophomore status or consent of instructor

This is the final course that completes the student's curriculum for the Computer Information Technology (CIT) degrees. This will provide students the ability to acquire firsthand experience by completing an internship, and study interviewing techniques including preparation of an appropriate resume, personal letterhead, and appropriate methods used for contacting potential employers, personal dress, and attitudes relating to the interview presentation process.

CSCI 299 Programming Capstone

Credits: 3

Term: (S)

Prerequisite: CSCI 211

Corequisites: CSCI 213, CSCI 223, CSCI 232

The Capstone project allows the student to demonstrate mastery in each of the major areas of study in computer programming by way of the creation and delivery of a software product. Students in this course will submit a formal proposal of the product to the instructor and gain approval before work can commence. The student and instructor will meet regularly to review and assess progress throughout the semester.