Course outline

Short course name:

High-Level Programming Languages 3

Module number:

COM 302

Course Syllabus:

High-level languages 3 : C# Programming:

Object-Oriented (O-O) programming concepts

C# Classes and instances (run-time objects)

Private and public class members; protected class members; Base classes

Class constructors and destructors; Initializing class members; Explicit ‘Copy’ construction

Self-referencing with the ‘this’ pointer

C# polymorphism, class inheritance and method over rides

Function overloading; using friend functions and classes

Looping (while, for loop constructs) branching (if and switch constructs) and blocking with C#

Using ‘break’ and ‘continue’ statements

Pre-processor directives and pragmas

The main ( ) function and its arguments

C# arithmetic expressions

Unary, bitwise and logical operators

Operator precedence

Manipulating strings in C#; use ‘cout’ and ‘cin’ functions

C# pointers and pointer arithmetic; ‘heap’ memory access

Dynamic memory allocation in C#; ‘new’ and ‘delete’ functions

C# function definition

Passing values to functions and returning values

Call-by-value, call-by-reference and call-by-address function calls

C# error-handling; using ‘try’ ‘throw’ and ‘catch’ functions

Type-casting, enumeration types and downcast pointers

Creating template and container classes to enhance code re-usability; list, set and vector containers

Using the STL (Standard Template Library)

Using C# namespaces to enhance code maintenance and design