To claim knowledge of computer programming, one should have experience in two or more high level languages and also have gained a fundamental understanding of the machine and its organization. In addition, those intending to program in any realistic environment will need a background in larger software systems as covered in Software Design or Database Management Systems.
CORE COURSES
Take the following courses:
An introductory study of computer science software development concepts. Python is
used to introduce a disciplined approach to problem solving methods, algorithm development,
software design, coding, debugging, testing, and documentation in the object oriented
paradigm. This is the first course in the study of computer science. 3 CreditsN,CTGES,CTGISRecommended programming experience or IT110 or IT100, IT111 or IM110 or MA103 but
not necessary. An introduction to digital computer systems including a treatment of logic and digital
circuits, data representation, device characteristics and register transfer notation
covered in a manner that stresses application of basic problem solving techniques
to both hardware and software design. Students gain experience programming in an assembly
language to reinforce these systems and design concepts. 4 CreditsNPrerequisites: CS110. A continued study of computer science foundations as begun In Computer Science I.
An object-oriented language such as JAVA is used to develop and implement large programs
involving various data structures and data abstraction as exemplified by packages
and modules. Search, sorting, advanced data structures, programming methodology and
analysis are emphasized. 4 CreditsNPrerequisites: CS110 and MA116 or MA210. Introduces mathematical structures and concepts such as functions, relations, logic,
induction, counting, and graph theory. Their application to Computer Science is emphasized. 4 CreditsN, QPre-requisite high school algebra.CS-110 Computer Science I
CS-220 Computer Organization
CS-240 Computer Science II
MA-116 Discrete Structures
PROGRAMMING CORE
Take the following course:
The students will prepare a portfolio of computer programs written in the language.
The programs are reviewed, critiqued, and then the student has an opportunity to revise
them as needed for final inclusion in the portfolio. 2 CreditsNPrerequisites: CS110 and Sophomore standing and permission.
CS-255C
C++ Programming
UPPER-LEVEL COMPUTER SCIENCE CORE
Take one of the following courses below:
CS-305 Software Models
A study of current software implementation models. Models of procedural based control for both batch and interactive settings, event driven control, real time control and exception handling are considered within representative interactive development environments such as .NET Design of graphical user interfaces for web-based and windows-based applications are integrated into the team projects.
3 CreditsNPrerequisites: IT240 or CS240.
CS-370 Database Management Systems
Focuses on concepts and structures necessary to design and implement a database management system. Various modern data models, data security and integrity, and concurrency are discussed. An SQL database system is designed and implemented as a group project.
3 CreditsN,CTGISPrerequisites: CS110.
Take an additional 300 or 400 level CS - Computer Science course.
Secondary Emphasis Credit Total = 23
Three credits must be at the 300/400-level. Any course exception must be approved by the advisor and/or department chair.