Software Construction (COMP5212)


This is a programming unit of study that is designed to enable students, coming from any background, to learn to program in the C language, with emphasis on the individual producing code that works correctly. as a gentler start to C itself, the unit starts with Python, introducing the same core ideas. Once students have mastered this, we move to C, tackling the same deep ideas in the context of the much more difficult programming in C. Topics include: coding simple dynamic data structures (linked lists); debugging; use of Unix tools for managing programming activities such as testing; learning from manual entries for standard library functions and Unix commands. On completion of this unit, students will have acquired programming skills and techniques applicable to the development of software used in areas such as networking, computer engineering, language translation, and operating systems.

Our courses that offer this unit of study

Further unit of study information


One 2 hour lecture and one 2 hour tutorial per week.


Through semester assessments (100%)

Faculty/department permission required?


Study this unit outside a degree

Non-award/non-degree study

If you wish to undertake one or more units of study (subjects) for your own interest but not towards a degree, you may enrol in single units as a non-award student.

Find a non-award course for this unit of study

Cross-institutional study

If you are from another Australian tertiary institution you may be permitted to underake cross-institutional study in one or more units of study at the University of Sydney.

Find a cross-institutional course for this unit of study