Course Descriptions

CSCI 1000    Computer Basics     Credits  3         Goal Areas  n/a     Course Outline 1000

The students will get hands-on experience with an operating environment (the current version of Microsoft Windows) and Windows-based applications which include spreadsheets, word processors and presentation packages. The course enables students to use computers to process information and communicate using e-mail and World Wide Web.

CSCI 1020    Beginning Web Page Programming     Credits  1         Goal Areas  n/a     Course Outline 1020

Students learn practical techniques and principles of Website authoring; create multimedia-enhanced commercial, entertainment or educational sites; and plan site maintenance, promotion and implementation of user feedback. Prerequisite: Some experience with Microsoft Windows

CSCI 1025    Responsive Web Design     Credits  1         Goal Areas  n/a     Course Outline 1025

This course will prepare students to design web pages that will respond to the media or device on which they are viewed. This course will focus on HTML5, some JavaScript and CSS media queries. Prerequisites: A grade of C or better in CSci 1020

CSCI 1030    Programming for Internet     Credits  3         Goal Areas  n/a     Course Outline 1030

This course covers the practical aspects of a programming language used for development of advanced Internet applications which include: on-line animation and interactivity, feedback, and browser control enhancements. The actual language used (JavaScript, Perl, or Java) will be chosen by the instructor. The course also includes a brief introduction to advanced HTML and SCS, uploading the site to a Web server and promoting it. Prerequisite: CSci 1000 or 1010 or 1020 or CIS 1101 or 1102

CSCI 1035    Introduction to Computer Programming with Games     Credits  4         Goal Areas  n/a     Course Outline 1035

This is an introductory computer programming course. The students will engage in hands-on implementation of games and simulations in a graphics-enhanced development environment. The students will learn how to transform game scenarios into algorithms and programs, create user interfaces, and incorporate multimedia. Basic computer skills are necessary for success in this class.

CSCI 1040    Fundamentals of Structured Query Language (SQL)     Credits  3         Goal Areas  n/a     Course Outline 1040

The goal of this course is to teach students how to design, build and use databases utilizing Microsoft SQL Server. The students will also learn to enter and retrieve information. They will learn SQL commands and query creation, including complex multi-table joins, and display and analyze query results. Students will design their own databases and deploy them on Microsoft SQL Server. Possessing skills in performing common Windows tasks working with applications, or taking CSci 1000, is highly recommended.

CSCI 1050    Computer Security Basics     Credits  3         Goal Areas  n/a     Course Outline 1050

This class examines the issues surrounding computer security in today's highly technological world. The course is designed to provide an overview of security problems: technical issues and the principles associated with databases, networks, administrative controls, privacy, operating systems and programming. The knowledge gained from this course will allow programmers, instructional designers, information technology specialists and managers to better understand a variety of issues surrounding secure computing. It is preferred that students have proficient computer skills.

CSCI 1120    Programming in C/C++     Credits  4         Goal Areas  n/a     Course Outline 1120

This course continues the study of the most popular computer languages. It covers the common procedural core of C and C++ languages: data types, expressions, operators, functions, pointers, and arrays. The course also includes elements of object-oriented programming: classes and objects. Prerequisite: CSci 1130 or CSci 1150 with a grade of "C" or better

CSCI 1130    Introduction to Programming in Java (CS0)     Credits  4         Goal Areas  n/a     Course Outline 1130

This course provides an introduction to the Java programming language and its foundational topics. In this course students will explore fundamental programming and computing concepts with a focus on problem solving, algorithm development and implementation. Topics included are: data types and memory concepts, arithmetic operators and mathematical expressions, conditional statements, repetition, arrays, methods and the basics of object-orientation.

CSCI 1150    Programming in C# for .NET     Credits  4         Goal Areas  n/a     Course Outline 1150

This course provides an introduction to object-oriented programming using the C# programming language. The majority of the course will be on the semantics of the C# language, a major component of Microsoft .NET development environment. Topics include: Visual Studio .NET integrated development environment, selected value and reference types, control structures, operators and expressions, methods, classes, and inheritance. Completion of this class will prepare the student for advanced topics in C#. Prerequisite: Math 1150 with a grade of "C" or better

CSCI 1180    Introduction to Linux Operating System     Credits  4         Goal Areas  n/a     Course Outline 1180

This course introduces Linux, a popular open-source operating system and a variety of Unix. Topics include installing and using Linux, the architecture of Linux, using the command-line shell, the file system, common utilities (including text editors), and the basics of shell scripting. Hands-on work with Linux is a central part of this class. Some experience in computer programming is recommended.

CSCI 1990    Computer Science Special Topics     Credits  1-4         Goal Areas  n/a     Course Outline 1990

The course introduces fundamental concepts of computer programming using a block programming language and a graphical development environment. A number of mathematical concepts used in office, game, mobile and scientific programming are introduced and illustrated with computer graphics. The students will advance their computational thinking abilities, as they develop algorithms and arrange data for solving problems.

CSCI 2001    Object Oriented Programming (CS1)     Credits  4         Goal Areas  n/a     Course Outline 2001

Students will learn object-oriented programming while creating algorithms. The basic principles of software engineering are emphasized. By doing their own Java projects, students will develop problem-solving skills and gain experience in detecting and correcting software errors. Procedures, recursion, and iteration will be presented in the development of algorithms. Inheritance and polymorphism are studied. The use of abstraction will be emphasized throughout the course.

CSCI 2002    Data Structures and Algorithms (CS2)     Credits  4         Goal Areas  n/a     Course Outline 2002

This course continues using abstract data types and the concepts presented in CSci 2001 and introduces stacks, queues, linked lists, and trees. This course also covers advanced programming topics of recursion, sorting methods, and complexity measures. This is an object-oriented programming course.

CSCI 2010    Discrete Mathematical Structures     Credits  4         Goal Areas  02,04     Course Outline 2010

The course covers mathematical topics essential for work in computer science. Topics include: number bases, mathematical induction, sets, relations, functions, congruence, recursion, combinations and permutations, probability, graphs, trees, logic, Boolean algebra, and proof techniques. Computing related problems and examples are integrated throughout the course. Prerequisites: MATH 1150 College Algebra (Minimum grade: 1.67 GPA Equivalent) Or A score of 79 or higher on the College Level Math (0167) placement test Or An ACT math score of 26 or higher. Recommended: Any CSCI course numbered 1030 or above (Minimum grade: 1.67 GPA Equivalent)

CSCI 2011    Programming in Python     Credits  1         Goal Areas  n/a     Course Outline 2011

The course will introduce the Python Programming language in terms familiar to students experienced with writing simple, yet complete, programs in other languages. Additionally, the course will focus on utilities and features considered strengths in Python. This includes interfaces to specialized libraries and databases. Prerequisites: CSCI 1120 or CSCI 1130 or CSCI 1150 or CSCI 2001 or CSCI 2400

CSCI 2020    Computer Architecture     Credits  4         Goal Areas  n/a     Course Outline 2020

As an introduction to computer organization and structure, this course includes beginning machine and assembly language programming. Topics to be covered include logic gates and Boolean algebra, basic elements of computing devices, basic components of a computer, data representation and number systems, micro operations, microprogramming, and input-output programming.

CSCI 2030    Database Modeling and Design     Credits  4         Goal Areas  n/a     Course Outline 2030

This course covers relational databases from conceptual design to implementation. The course will include logical and physical design, normalization, as well as the definition of tables and indexes. The use of Structured Query Language (SQL) for data retrieval and manipulation will be emphasized. Prerequisite: CSci 1040 and CSci 1120 or CSci 1130 or CSci 1150 PLEASE NOTE: Students enrolled in CSCI 1040 can register for CSCI 2030 in anticipation of successful completion of CSCI 1040. Please contact Registration.

CSCI 2050    Internship Computer Science     Credits  3         Goal Areas  n/a     Course Outline 2050

The main objective of this course is to provide practical training and real work experience for the students. Often, it will include productive work contribution, and prospective employee evaluation for the employer. It can lead to increased college-industry interaction for the department and the college. Completion of this class will better prepare the student for multiple activities in a workplace. It should reflect positively on the students resume (employers view internship experiences positively.) Internship is an excellent opportunity for a student to affirm career interests. These opportunities can also provide the credentials needed for full-time positions. Internships and co-ops provide opportunities to network with professionals; strengthen confidence, maturity, and professionalism; establish professional references. Prerequisite: Enrollment in the computer science program, completion or concurrent enrollment in CSci 2002, a "B" average in all CSci courses

CSCI 2060    Web Programming in ASP.NET     Credits  4         Goal Areas  n/a     Course Outline 2060

ASP.NET is a technology for creating web-based programs and services. This course introduces ASP.NET on the foundation of the prerequisite courses that taught the fundamentals of .NET framework, C# programming language, SQL Server database, and the primary development environment Microsoft Visual Studio. The main goal of this course is to teach the basics of creating and deploying Web applications utilizing ASP.NET technology. Besides using the C# programming language, the students will learn the commonly used ASP.NET controls included in Microsoft Visual Studio. The course includes the techniques of reading the data from a SQL Server database into a Web application and displaying it on a web page, as well as modifying and amending the database content. Prerequisites: CSci 1150 and CSci 1040

CSCI 2100    Introduction to Android Application Development     Credits  4         Goal Areas  n/a     Course Outline 2100

This course provides an introduction to developing Android applications, covering the core concepts, tools and techniques for designing, developing and releasing Android applications. By the end of the course, students will build an Android application and release it to the Google Play Store. Prerequisite: CSci 2001

CSCI 2400    Objective-C for Mobile Programming     Credits  4         Goal Areas  n/a     Course Outline 2400

The course teaches Objective-C programming utilizing Xcode tools package. The course explores fundamental OOP concepts. Other topics include pointers, memory management and Automatic Reference Counting. The basic Foundation Framework classes will also be introduced. After completing this course, the students will be able to write Objective-C programs suitable for mobile applications running on iPhones and iPads. Prerequisite: CSci 1120 or 1150 or 2001 with grade A

CSCI 2500    Introduction to Mobile Programming in iOS     Credits  4         Goal Areas  n/a     Course Outline 2500

The course teaches students how to write mobile applications for iOS-based devices, building on Objective-C fundamentals. The course will lead the students through the essential concepts, tools, and techniques for developing iOS applications. After completing this course, the students will have the knowledge and skills needed to create applications for iPhones and iPads. Prerequisite: CSci 2400 with minimum grade B