|
Nov 23, 2024
|
|
|
|
SE 2040 - Software Development III3 lecture hours 2 lab hours 4 credits Course Description This course introduces students to the C/C++ programming language in order to give them a working knowledge of the language as well as broader experience with system programming languages. In addition, students are introduced to two additional programming language paradigms to which they had not yet been introduced to previously: scripting languages and functional programming languages, in order to give them awareness of alternate programming approaches and when best to employ the various approaches. (prereq: CS 2852 ) Course Learning Outcomes Upon successful completion of this course, the student will be able to:
- Explain the key differences between Java and C/C++
- Make use of C/C++ compiler pre-processor directives
- Create and make use of C functions
- Create and make use of C++ classes
- Make use of the Standard C Library and C++ Standard Library
- Distinguish and make use of argument passing by value, reference, and address
- Make use of C++ polymorphism, particularly virtual vs. non-virtual methods
- Manage C memory directly via malloc() and free()
- Manage C++ memory directly via new and delete
- Create and make use of C++ namespaces
- Create and make use of C++ templates
- Make use of C++ operator overloading
- Be familiar with scripting language programming
- Be familiar with functional programming
Prerequisites by Topic
- Object-oriented programming, Java, data structures
Course Topics
- Introduction to C++ (18 classes)
- Introduction to scripting languages (6 classes)
- Introduction to functional programming languages (6 classes)
Laboratory Topics
- C++ (6 sessions)
- Scripting languages (2 sessions)
- Functional programming languages (2 sessions)
Coordinator Robert Hasker
Add to Portfolio (opens a new window)
|
|