Computer Programming (COP)
COP 1000 Principles of Programming
Credit Hours: 3
Lab Fee: Yes
This is a beginning level course teaching the essentials of logical computer programming (CP) design techniques, which use pseudocode terminology to create language independent algorithms (LIAs). Topics include the programming development process (PDP), flowcharts, the basic computer operations (COs), the use of arithmetic, assignment, logical, relational, increment, and decrement operators, input, output, constants, elementary data types (EDTs), file types, data structures types (DSTs), selection control structures (SCSs), repetition control structures (RCSs), single dimensional arrays, and using security coding techniques for validating user input. A current programming language will be used as a platform to demonstrate the LIAs.
COP 1657 Introduction to Mobile Applications Programming
Credit Hours: 3
Prerequisites: CGS 1000 with a grade of "C" or higher
Lab Fee: Yes
This course provides an introduction to mobile applications programming on popular operating system platforms. Students will become familiar with the software for creating mobile applications and the process of using the software development kit for each platform. Students will create, build, and run simple applications on each platform.
COP 2047 Python Programming
Credit Hours: 3
Prerequisites: COP 1000 with a grade of "C" or higher
Lab Fee: Yes
This course is an introduction to the Python programming language. Topics include variables, data types, decision structures, loops, functions, input/output operators, data structures, and classes. Object-oriented programming concepts are introduced.
COP 2334 Introduction to C++ Programming
Credit Hours: 3
Prerequisites: COP 1000 with a grade of C or higher
Lab Fee: Yes
This course is an introduction to the C++ programming language syntax. Topics include implementation of loops, decision structures, functions, input/output operations, arrays, structures, and overloading. Introduction to object-oriented paradigms of classes, data abstraction, and encapsulation. In addition, secure application development concepts are reviewed.
COP 2335 C++ Programming Advanced
Credit Hours: 3
Prerequisites: COP 2334 with a grade of C or higher
Lab Fee: Yes
This course is a continuation of introduction to C++ programming. Topics include pointers, recursion, operator and function overloading, information hiding, inheritance, virtual functions (polymorphism), and traditional object-oriented programming. Standard data structures including array, stacks, queues, linked lists, and their implementation are covered. In addition, secure application development concepts are reviewed.
COP 2360 C Sharp Programming
Credit Hours: 3
Prerequisites: COP 1000 with a grade of "C" or higher
Lab Fee: Yes
This course introduces the student to the C# programming language. Topics include language syntax, data types, arithmetic expressions, logical expressions, control structures, repetitive control structures, arrays, collections, and string manipulation. C# object oriented programming concepts including classes, inheritance, and polymorphism are covered. Students develop C# program applications using a software integrated development environment (IDE).
COP 2362 C Sharp Programming Advanced
Credit Hours: 3
Prerequisites: COP 2360 with a grade of "C" or higher
Lab Fee: Yes
Advanced topics using the C# language including, collections, multi-threading, inheritance, generics, polymorphism, XML documents, LINQ, GUI forms and controls, and interaction with databases and web services. Students will develop C# program applications using a software IDE (Integrated Development Environment).
COP 2671 Mobile Applications Development
Credit Hours: 3
Prerequisites: COP 1657 and COP 2334 or COP 2360 or COP 2800 - both courses with a grade of "C" or higher
Lab Fee: Yes
This course provides project experience in the development of mobile applications on popular device platforms and cross-platform development. The course examines object-oriented programming concepts and their application to mobile application development. Students are introduced to mobile application interface design, learn how to use persistent data in a mobile application, and explore the process of adding images, sound, and video to applications.
COP 2700 Database Techniques
Credit Hours: 3
Prerequisites: CGS 2100 with a grade of C or higher
Lab Fee: Yes
This course introduces Relational Database Management System (RDBMS) data modeling concepts, database normalization process, entity relationship concepts, intermediate Structured Query Language (SQL) programming, physical design issues including centralized and distributed design, concurrency, transaction processing, locking methods, database administration roles and responsibilities, and database security.
COP 2800 Introduction to Java Programming
Credit Hours: 3
Prerequisites: COP 1000 with a grade of "C" or higher
Lab Fee: Yes
This course is an introduction to Java programming. The topics include loops, decision structures, input output (I/O) operations, arrays, references, classes, objects, inheritance, and data encapsulation. An introduction to GUI design using Java's Swing Package and other Java predefined packages is examined.
COP 2805 Advanced Java Programming
Credit Hours: 3
Prerequisites: COP 2800 with a grade of "C" or higher
Lab Fee: Yes
The course focuses on advanced Java programming concepts, including interfaces, packages, exception handling, and database interaction using Java Database Connectivity (JDBC), multithreading, and networking capabilities. This course is a continuation of Java's object-oriented features with major emphasis on class implementation. Advanced graphical user interface (GUI) design is implemented using Java's Swing package with a major emphasis on event handling. In addition, secure application development concepts are reviewed.
COP 2812 Introduction to XML
Credit Hours: 3
Lab Fee: Yes
This course is an introduction to extensible markup language (XML). Topics include using document type definitions (DTD's), XML schema, cascading stylesheets (CSS) and extensible stylesheet language to create well-formed and valid XML documents. XML provides users with a uniform method for describing and exchanging structured data that is independent of applications or vendors.
COP 2822 Web Page Authoring
Credit Hours: 3
Prerequisites: CGS 2100 with a grade of "C" or higher
Lab Fee: Yes
This course is designed to introduce the skills necessary for creating websites. The course uses the current versions of Hypertext Markup language (HTML) and Cascading Style Sheets (CSS). Topics include using graphics, audio, animation, video, tables, forms, using embedded and external CSS coding, and implementing security strategies.
COP 2948 Service Learning Field Studies 1
Credit Hours: 1
This course gives students opportunity to understand the relationship of theory to practice through participation in a service-learning experience. Students are required to complete 20 hours of volunteer work, a service-learning contract, and an oral and written reflection of the experience.
COP 3330 Object Oriented Programming
Credit Hours: 3
Prerequisites: COP 2334 with a grade of C or higher and admission to Bachelor's program required
Lab Fee: Yes
This course explores the concepts of Object-Oriented Programming (OOP) including abstraction, encapsulation, inheritance, polymorphism, and multithreading. Students will design, write, compile, execute, and debug Java object-oriented programs. Students will be introduced to software development tools including an Integrated Development Environment (IDE), a source code version control system, a unit testing framework, and the Unified Modeling Language (UML). In addition, the use of cryptographic libraries will be introduced.
COP 3530 Data Structures and Algorithm Analysis
Credit Hours: 3
This is an elementary course in data structures and algorithm analysis. Topics include basic data structures, complexity analysis, sorting, hash tables, trees, queues, graphs, recursion, dynamic programming algorithms, and nondeterministic polynomial time (NP)-completeness.
COP 3703 Database Design and Architecture
Credit Hours: 3
Prerequisites: COP 2700 with a grade of C or higher and admission to Bachelor's program required
This course is an in-depth study of Database Management Systems (DBMS), information management, and retrieval concepts. The course focuses on the relational database model including the design and implementation of a database using a commercial DBMS. Key topics include an overview of database systems, database design, the relational model, physical design, indexing, transaction management, concurrency management, and backup & recovery.
COP 3813 Internet Programming
Credit Hours: 3
Prerequisites: COP 3330 with a grade of "C" or higher
Lab Fee: Yes
This course includes an overview of web systems, web standards, server configuration and portal design. Students will apply the fundamentals of interactive web design with a focus on active server pages programming.
COP 4655 Application Development for Mobile Devices
Credit Hours: 3
Lab Fee: Yes
COP 3330 with a grade of "C" or higher and Departmental approval or admission to the Bachelor's program required. An introduction to development techniques for mobile devices. This course covers the components for creating basic and more advanced mobile device applications including user interface (UI) components, persistence of data, application packaging, and more advanced interfaces of the mobile phone software developers kit (SOK). Students will design and develop applications for mobile devices. Sample applications that illustrate features and focus on UI implementation will be compiled and debugged. Students will master memory management techniques, delegation, archiving, and the proper use of view controllers. Students will learn to search and understand reference documentation so they can make use of the many methods and classes available in a mobile application platform. Students will learn about mobile app architecture, user interface design, and security considerations.
COP 4849 Web Applications Programming
Credit Hours: 3
Prerequisites: COP 2805 or COP 3330 and CTSC 1134, COP 2700, COP 2822 and COP 3813 - all courses with a grade of "C" or higher and departmental approval and admission to Bachelor's program required
The courses introduces the concepts and methods of configuring web-based servers and employing current server-side scripting language to create, test and debug server applications. Students will be introduced to the concepts of employing client-side scripting languages to create, test, and debug browser-based (BB) applications that communicate with the servers.
COP 4930 Internship
Credit Hours: 3
Prerequisites: Departmental approval or admission to Bachelor's program required
This course will expose students to real world application in a business setting. Students will obtain career-related experiences to utilize their classroom knowledge and skills.