Number sequencing next to course name means the following: first digit designates the number of lecture hours for the course; the second digit designates the number of lab, clinic or practicum hours; and the third digit designates the credit hours for the course.
Students must earn a grade of "C-" or higher in each CPET and ELET course listed as a prerequisite to a subsequent CPET course.
CPET 107C Introduction to Programming with C++ 2-3-3
Introduces the student to program design using the language C++. No prior knowledge of programming is assumed. Focuses on effective structured design of code with variables, decisions, loops, functions, arrays and introduction of pointers. Use of professional programming design approaches and coding style will be used in laboratory assignments. Completion of this course provides the programming design skills to continue on with the study of the language C++ or other computer languages.
CPET 125C Data Structures 2-3-3
This course introduces students to abstract data types, object oriented programming, and algorithm analysis. Students will use procedural and object oriented techniques to program stacks, queues, linked lists, hash tables, and binary trees. Asymptotic (Big O) notation will be used to analyze data structures and sorting algorithms. The effective use of C++ topics such as pointers, operator overloading, and templates will be covered. Students will write programs in C++ and Java. (Prerequisites: CPET 107C or permission of the Department Head of Computer Engineering Technology)
CPET 215C Integrated Circuits and Interfacing 3-3-4
For CPET and other NON-EET majors, this course supplements ELET 115C (Digital Fundamentals) with basic linear and interface electronics. Topics covered include simple power supplies, op-amps, stepper motors, A/D & D/A conversion, and interfacing a computer bus. Advanced digital topics such as synchronous logic, programmable logic devices and Digital Signal Processing will also be covered. The labs demonstrate real world implementation of otherwise abstract academic concepts. Fluency with the use of test equipment and debugging skills will also be stressed in the laboratory environment. (Prerequisites: CPET107C, ELET 101C, and ELET 115C; or permission of department head of Computer Engineering Technology. Strongly recommend having previously taken or to be concurrently taking ELET 144C.)
CPET 222C Data Communications and Internetworking 3-3-4
This course provides the student knowledge and skills in a wide range of topics covering data communications, packet transmission and the Internet. Data communications subtopics include transmission media, serial communications, error detection & correction schemes, data security and signal processing required for long distance communications. Packet transmission subtopics include local area networks, hardware addressing, LAN building blocks, and wide area networks. Internetworking subtopics include TCP/IP communication stack, ISO 7-layer communication stack, network addressing, Internet protocol (IP), address resolution protocol (ARP), Internet control message protocol (ICMP), IP routing protocols, transport control protocol (TCP), user datagram protocol (UDP), and client-server API. (Prerequisites: CPET 107C and CPET 125C; corequisites: CPET 240C, CPET 252C recommended; or permission of department head of Computer Engineering Technology)
CPET 235C Algorithms With Object Oriented Programming 3-3-4
This course focuses on the development, implementation and analysis of algorithms developed with object oriented design. Object oriented programming (OOP) techniques will be used to solve algorithms such as stacks, queues and linked lists. Concepts such as priority ranked data and object containers as well as circular queues will be covered. Sorting, data manipulation and retrieval will be covered. Languages which support OOP will be used as the learning method. Both C++ and Java will be used. This course covers intermediate and advanced topics with extensive hands on programming. Key OOP foundation capabilities of data abstractions, inheritance and polymorphism will be covered. Topics in C++ specifically covered will be pointers, operator overloading and multiple inheritance. (Prerequisite: CPET 107C; or permission of department head of Computer Engineering Technology)
CPET 240C Programming for Windows Operating Systems 3-3-4
The Microsoft Windows API and Microsoft.Net Framework will be covered from Windows Applications to full utilization of the Internet. Microsoft Visual Studio.Net with its integrated development environment will be studied and utilized. Topics include Windows services, DLLs, accessing databases using ADO.NET, programming for the internet using ASP.NET, .NET assemblies, and advanced features of programming languages used to access the Widows API and .NET platform. Experience will be gained using extensive hands-on laboratory assignments. (Prerequisites: CPET 107C and CPET 125C or AGGP 121C or permission of department head of Computer Engineering Technology based on having introductory programming skills with languages such as Java, C++ or classic Visual Basic)
CPET 252C Networking and Internet Technologies 3-3-4
This course provides the student knowledge and skills in a diverse range of topics including structured query language (SQL), client-server programming, selected internet applications and LAMP (Linux, Apache, MySQL and PHP). SQL subtopics include relational database concepts, the SQL language and relational database design. Client server programming is studied in C++ using socket APIs and Java using socket classes. Selected internet applications include domain name system (DNS), hyper-text transfer protocol (HTTP) and file transfer protocol (FTP). LAMP topics include a Linux overview, Apache web server configuration, dynamic web pages using PHP and MySQL relational database. Each student is also required to define, implement, demonstrate and present a networking project during the last several weeks of the course. (Prerequisites: CPET 107C and CPET 125C or AGGP 121C or permission of department head of Computer Engineering Technology)
CPET 260C Computer Real Time Interfacing 3-3-4
Interfacing computers to the outside world is the focus of this course. Computers are commonly used to gather data and to control processes in medical equipment, research projects and manufacturing. The course content focuses on practical real time (fast response) and multithreaded programming techniques used in interfacing with computer inputs and outputs. The course is divided into two major parts. First, a programmable logic controller industrial computer using the language relay ladder logic (Boolean algebra based) is used to teach the fundamentals of real time control. The second part covers multithreading programming techniques and issues including resource sharing, deadlock, critical sections, mutexes, and events. A final project is presented to the class. (Prerequisite: CPET 107C; corequisite: CPET 125C; or permission of department head of Computer Engineering Technology based on introductory knowledge of C++ or Java)
CPET 301C Computer Project Definition 1-0-1
Students will elect this course as a first phase to Computer Project CPET 303C. During this course a student selects a project which is either provided by an industrial sponsor or chosen by the student. The selections are made with the guidance and approval of the instructor. The student will meet with the sponsor to initiate the project and then will write a specification to define the project. (Prerequisite: CPET 107C, ELET 101C, ELET 115C, CPET 125C, and Corequisites: CPET 240C, CPET 260C; or permission of department head of Computer Engineering Technology)
CPET 303C Computer Project 1-4-3
The student will complete the project defined in CP 301 while maintaining logbook documentation, providing the advisor with progress reports. In addition, a formal oral presentation describing the project and a demonstration is required. (Prerequisites: CPET 301C, CPET 240C, CPET 260C, ELET 144C and Corequisites: CPET 222C, and CPET 252C; or permission of department head of Computer Engineering Technology.)