Due to the exceptional circumstances caused by the COVID-19 pandemic, the learning activities, assessments and attendance requirements for this unit may be subject to late changes. Please refer to this unit outline regularly for up to date information and to notices in the unit’s Canvas site for any adjustments.
In this unit of study, elementary methods for developing robust, efficient, and re-usable software will be covered. The unit is taught in C, in a Unix environment. Specific coding topics include memory management, the pragmatic aspects of implementing data structures such as lists and hash tables and managing concurrent threads. Debugging tools and techniques are discussed and common programming errors are considered along with defensive programming techniques to avoid such errors. Emphasis is placed on using common Unix tools to manage aspects of the software construction process, such as version control and regression testing. The subject is taught from a practical viewpoint and it includes a considerable amount of programming practice.
|Academic unit||Computer Science|
|INFO1113 OR INFO1105 OR INFO1905 OR INFO1103|
|COMP2123 OR COMP2823 OR INFO1105 OR INFO1905|
|COMP2129 OR COMP9017 OR COMP9129|
At the completion of this unit, you should be able to:
Unit outlines will be available 2 weeks before the first day of teaching for 1000-level and 5000-level units, or one week before the first day of teaching for all other units.