Dec 22, 2024  
2019-2020 Undergraduate Academic Catalog 
    
2019-2020 Undergraduate Academic Catalog [ARCHIVED CATALOG]

Add to Portfolio (opens a new window)

CS 2040 - Programming in C and C++

3 lecture hours 2 lab hours 4 credits


Course Description
This course introduces students to additional scripted, procedural, and object-oriented programming languages including C and C++. Students are introduced to the concepts of compilation, memory management, linking, low-level types, efficient implementation of objects, and the Standard Template Library. Students may not receive credit for both CS3210 and CS2040. (prereq: CS 2852 )
Course Learning Outcomes
Upon successful completion of this course, the student will be able to:
  • Write procedural C programs
  • Write procedural and object-oriented C++ programs
  • Make use of C++ operator overloading
  • Make use of C++ polymorphism, particularly virtual vs. non-virtual methods
  • Create and make use of C++ namespaces
  • Create and make use of C++ templates
  • Make use of the C++ Standard Library
  • Make use of C and C++ memory management tools
  • Make use of C/C++ compiler pre-processor directives
  • Distinguish and make use of argument passing by value, reference, and address
  • Discuss how typing systems influence efficiency, readability, and reliability
  • Write procedural and object-oriented programs in a scripting language
  • Be familiar with functional programming

 


Prerequisites by Topic
  • Object-oriented programming, Java, data structures

Course Topics
  • Procedural, object-oriented programming in a scripting language
  • Procedural, object-oriented C++ programming
  • Memory management in C++
  • Standard Template Library
  • Procedural programming in C
  • Functional programming concepts

Laboratory Topics
  • Scripting languages (2 sessions)
  • C++ (7 sessions)
  • C (1 session)

Coordinator
Dr. Robert Hasker



Add to Portfolio (opens a new window)