Courses Detail Information
ECE2800J – Programming and Introductory Data Structures
Instructors:
Credits: 4 credits
Pre-requisites: ENGR1010J Obtained Credit||ENGR1510J Obtained Credit
Description:
Techniques for algorithm development and effective programming; Testing and program correctness; Program language syntax and static and runtime semantics; Procedure abstraction, recursion, and parameter passing methods; Abstract data type, inheritance, template, and polymorphism; Structured data types, pointers, arrays, linked data structures, stacks, and queues.
Course Topics:
- Linux basics and compiling program on Linux
- Review of C++ Basics, such as array, pointer, etc.
- Procedural abstraction, function call mechanism, and recursion
- Function pointer
- Enum
- Program arguments
- Testing
- Debugging
- IO
- Exception
- Abstract data type and class
- Inheritance and virtual function
- Interface (i.e., abstract base class)
- Representation invariant
- Dynamic memory allocation and dynamic arrays
- Overloaded constructor, destructor, copy constructor, and overloaded assignment operator
- Operator overloading and friend mechanism
- Linked list (including linked list traversal)
- Stack and queue
- Polymorphism, template, and STL