2649
Comment:
|
4279
|
Deletions are marked like this. | Additions are marked like this. |
Line 5: | Line 5: |
||<:> '''Topic''' ||<:> '''1911[[BR]]Computing 1''' ||<:> '''1921[[BR]]Computing 2''' ||<:> '''1917[[BR]]Higher Computing 1''' ||<:> '''1927[[BR]]Data Structures[[BR]]and Algorithms'''||<:> '''2911[[BR]]Design in Computing'''|| || Intro to labs || (./) week 0 || || (./) week 0 || || || Compiling [[BR]] gcc and/or eclipse || (./) || || (./) || || || Problem Solving[[BR]]topdown, systematic || (./) || || (./) || || |
||<:> '''Topic''' ||<:> '''1911[[BR]]Computing 1''' ||<:> '''1921[[BR]]Computing 2''' ||<:> '''1917[[BR]]Higher Computing 1''' ||<:> '''1927[[BR]]Data Structures[[BR]]and Algorithms'''||<:> '''2911[[BR]]Design in[[BR]]Computing'''|| || [#Introtolabs Intro to labs] || (./) week 0 || || (./) week 0 || || || [#Compiling Compiling] [[BR]] gcc and/or eclipse || (./) || || (./) || || || [#ProblemSolving Problem Solving][[BR]]topdown, systematic || (./) || || (./) || || |
Line 51: | Line 51: |
~-[[:Teaching/12WeekSyllabus:12 week semester home]]-~ | [[Anchor(Introtolabs)]] ==== Intro to labs ==== finding labs, logging in, booking terminals, selecting gui, reading email, starting browser, starting x terminal, printing, ssh and pico and sftp from home [[Anchor(Compiling)]] ==== Compiling - gcc and/or eclipse ==== what compilation means. preprocessor. compiling. linking. source file, machine code, object files, flags (-Wall -Werror -o -O) interpreting compiler error messages. compiling at home. students must be able to run the compiler themselves, understand and use the appropriate flags, and be able to interpret useful information from error messages. [[Anchor(ProblemSolving)]] ==== Problem Solving - topdown, systematic ==== ==== Problem Solving - abstraction ==== ==== if/then/else, chained ifs, while loops, function calls ==== ==== primative types ==== ==== typecasting ==== ==== pointers ==== ==== pass by reference/pass by value ==== ==== arrays ==== ==== arrays 2D+ ==== ==== strings (basic) ==== ==== strings (advanced) - subtle problems with terminating byte ==== ==== pointer arithmetic (brief) ==== ==== structure of memory ==== ==== dynamic memory allocation ==== ==== stack frames ==== ==== stack overflow security ==== ==== recursion (intro) ==== ==== linked lists ==== ==== adts (intro) ==== ==== trees (intro building traversing) ==== ==== graphs (intro using adjacency matrix) ==== ==== adts (using, constructing) ==== ==== stacks, queues ==== ==== recursion ==== ==== time and space complexity ==== ==== big oh notation ==== ==== analysing complexity (a priori) ==== ==== analysing complexity (a postori) ==== |
Core Computing Syllabus
Topic |
1911BRComputing 1 |
1921BRComputing 2 |
1917BRHigher Computing 1 |
||
[#Introtolabs Intro to labs] |
week 0 |
|
week 0 |
|
|
[#Compiling Compiling] BR gcc and/or eclipse |
|
|
|
|
|
[#ProblemSolving Problem Solving]BRtopdown, systematic |
|
|
|
|
|
Problem SolvingBRabstraction |
|
|
|
|
|
if/then/else, chained ifs, while loops, function calls |
|
|
|
||
primative types |
|
|
|
|
|
typecasting |
|
|
|
|
|
pointers |
|
|
|
|
|
pass by reference/pass by value |
|
|
|
|
|
arrays |
|
|
|
|
|
arrays 2D+ |
|
|
|
|
|
strings (basic) |
|
|
|
|
|
strings (advanced) BR subtle problems with terminating byte |
|
|
|
|
|
pointer arithmetic (brief) |
|
|
|
|
|
structure of memory |
|
|
|
|
|
dynamic memory allocation |
|
|
|
|
|
stack frames |
|
|
|
|
|
stack overflow security |
|
|
|
|
|
recursion (intro) |
|
|
|
|
|
linked lists |
|
|
|
|
|
adts (intro) |
|
|
|
|
|
trees (intro building traversing) |
|
|
|
|
|
graphs (intro using adjacency matrix) |
|
|
|
|
|
adts (using, constructing) |
|
|
|
|
|
stacks, queues |
|
|
|
|
|
recursion |
|
|
|
|
|
time and space complexity |
|
|
|
|
|
big oh notation |
|
|
|
|
|
analysing complexity (a priori) |
|
|
|
|
|
analysing complexity (a postori) |
|
|
|
|
|
big oh notation |
|
|
|
|
|
bfs dfs search |
|
|
|
|
|
trees and tree algorithms |
|
|
|
|
|
self balancing trees |
|
|
|
|
|
graphs and graph algorithms |
|
|
|
|
|
c99 extensions |
|
|
|
|
|
for, switch |
|
|
|
|
|
intro to unstructured commands |
|
|
|
|
|
style |
|
|
|
|
|
documentation |
|
|
|
|
|
unit testing |
|
|
|
|
|
systematic debugging |
|
|
|
|
|
programming in groups |
|
|
|
|
Intro to labs
finding labs, logging in, booking terminals, selecting gui, reading email, starting browser, starting x terminal, printing, ssh and pico and sftp from home
Compiling - gcc and/or eclipse
what compilation means. preprocessor. compiling. linking. source file, machine code, object files, flags (-Wall -Werror -o -O) interpreting compiler error messages. compiling at home. students must be able to run the compiler themselves, understand and use the appropriate flags, and be able to interpret useful information from error messages.
Problem Solving - topdown, systematic
Problem Solving - abstraction
if/then/else, chained ifs, while loops, function calls
primative types
typecasting
pointers
pass by reference/pass by value
arrays
arrays 2D+
strings (basic)
strings (advanced) - subtle problems with terminating byte
pointer arithmetic (brief)
structure of memory
dynamic memory allocation
stack frames
stack overflow security
recursion (intro)
linked lists
adts (intro)
trees (intro building traversing)
graphs (intro using adjacency matrix)
adts (using, constructing)
stacks, queues
recursion
time and space complexity
big oh notation
analysing complexity (a priori)