CO222 Programming Methodology
Course Code
CO222
Course Title
Programming Methodology
Credits
3
Course Type
CORE
Aims/Objectives
Problem solving, Storing and naming data and operators, Control flow, Using standard library functions, Structured programming, Static allocation, References (pointers), Linked structures, Memory layout, Language tool-chains, Support tools
Intended Learning Outcomes (ILOs)
Knowledge:
At the end of this course, a student will be able to;
- Convert a simple well defined problem into a correct computer program using a typical Clike programming language.
- Understand the logic of a simple piece of code and reason about it
Skill:
At the end of this course, a student will be able to;
- Practice good coding techniques (naming conventions, indentation, comments, organizing operations into functions, modularization).
- Visualise program control flow and memory structures.
- Use assertions and debugging to understand and debug programs
Attitude:
- Inculcate a disciplined attitude towards programming in the small.
- Discourage trial-and-error programming
Textbooks and References
- J.D. Ulman, Foundations of Computer Science C edition
Topic | Time Allocated / hours | |||
---|---|---|---|---|
L | T | P | A | |
Problem solving From problem statements to algorithms to programs |
2 | 1 | - | - |
Storing and naming data and operators Variables, data types, operators and expressions |
3 | - | - | - |
Control flow Simple and nested conditions and iterations |
2 | 1 | 2 | - |
Using standard library functions Basic input/output functions |
2 | 1 | 2 | - |
Structured programming Defining functions, parameter passing by value |
2 | - | 2 | - |
Static allocation Arrays (single and multidimensional), strings, and structures (records) |
3 | 1 | - | 4 |
References (pointers) Dynamic allocation and type casts |
2 | 1 | 2 | 6 |
- Linked structures, box and pointer diagrams |
1 | 1 | - | - |
Memory layout Stack and heap |
2 | 1 | - | - |
- Error checking, assertions and testing |
1 | 1 | 2 | 2 |
Language tool-chains Compilation, linking and loading |
3 | - | 2 | - |
Support tools debuggers, commonly used static-code checkers |
1 | - | 2 | - |
Total (hours) |
24 | 8 | 14 | 12 |
L = Lectures, T = Tutorial classes, P = Practical classes, A = Homework Assignments
Assessment | Percentage Marks |
---|---|
Practicals | 20 |
Projects | 20 |
Mid-Exam | 20 |
End-Exam | 40 |
Last Update: 03/02/2024
|
Edit this page