The imperative programming paradigm: assignment and state, types and variables, static and dynamic typing. Memory management and object lifetimes: static allocation, automatic allocation in activation frames, dynamic allocation. Function argument passing. Recursion. Data structures: dynamic arrays, linked lists, hash tables. Encapsulation and information hiding. Includes: Experiential Learning Activity Also listed as SYSC 1006. Precludes additional credit for COMP 2401, SYSC 4006. Prerequisite(s): Second-year status in Engineering. Lectures three hours a week, laboratory two hours a week.
The imperative programming paradigm: assignment and state, types and variables, static and dynamic typing. Memory management and object lifetimes: static allocation, automatic allocation in activation frames, dynamic allocation. Function argument passing. Recursion. Data structures: dynamic arrays, linked lists, hash tables. Encapsulation and information hiding. Includes: Experiential Learning Activity Also listed as SYSC 1006. Precludes additional credit for COMP 2401, SYSC 4006. Prerequisite(s): Second-year status in Engineering. Lectures three hours a week, laboratory two hours a week.