Module Overview

Software Development 1 (C++)

The Aim of this subject is to give the student the necessary skills and knowledge to allow the student to design, implement and test programs written in a high level object oriented language, such as the C++ language.

Module Code

ENSW H4001

ECTS Credits

5

*Curricular information is subject to change

C++ Basics

Introduction to a common C++ development environment and debugger. Standard Data Types. Standard Operators. Evaluation of Expressions. Type Conversion,. Preprocessor directives. Selection Statements,. Iteration Statements. C-Arrays. Introduction to sorting and searching : Sequential search, Selection Sort. C-Strings. C-String functions.

C++ as an imperative-programming language:

String functions. Introduction to the vector and string classes, Pointers. Pointer Operations. Pointer Expressions. Functions. Scope Rules. Call by Value. Call by Reference. References in C++. Function Prototypes. void Functions. Fundamentals of Recursion. Standard I/O Streams. File Streams Basics. Dynamic Memory Allocation. Structures. Enumerations. Typedefs. Test Driven Development. Incremental Testing.

Data Abstraction:

Data Abstraction in C using multiple files. static, extern and const variable qualifiers. Stack and Queue Abstraction. Introduction to Classes. Public and private attributes and methods. Member functions, Constructors and Destructors. Initialization lists. Constant and static data menbers and member functions. Constant objects.

Module Content & Assessment
Assessment Breakdown %
Other Assessment(s)50
Formal Examination50