SFWRENG 2XC3
Software Engineering Practice and Experience: Development Basics
Fall 2026 · Sfwr Eng Practice & Experience · C01
Readings
- eText C Programming: A Modern Approach - Lifetime Access Ed: 2ISBN 9781324120797; 9780393979503
Fall 2026 · L05
Topics
- The CI Pipeline: Continuous integration, the Linux environment, Linux file systems, the C environment.
- The CI Pipeline: Version control, Git and GitHub, workflows, a little bit more C.
- Linux: Standard input/output/error, redirection, here docs and strings, pipes and filters, bash scripting basics, creating new filters in C and bash.
- Linux: Regular expressions, effective use of grep, more bash scripting.
- Programming in C: preprocessor, compiler, linker, type system, expressions, control structures.
- Programming in C: Functions, program structure, pointers, recursion, header files, makefiles, unit testing, coverage analysis.
- Programming in C: Arrays, pointers, pointer arithmetic
- Programming in C: Dynamic array allocation, memory management
- Advanced Git: Branching, merging, branching strategies Programming in C: Performance analysis, optimization, preprocessor directives, macros
- Programming in C: Strings
- Programming in C: Structs and linked lists
Readings
- C Programming: A Modern Approach, Second EditionNorton & Company
- The Linux Command Linehttps://sourceforge.net/projects/linuxcommand/files/TLCL/19.01/TLCL-19.01.pdf/download
- Pro Githttps://git-scm.com/book/en/v2
- Official Git Documentationhttps://git-scm.com/doc
- Handouts, Slides, Examples, Readings, and Class Notes
- C Programming: A Modern Approach, Second Edition Authors: K. N. King Publisher: Norton & Company Publication Date: 2008 Edition: Second
- C: 1, 2.1-2.3 L: 1-5, 12
- C: 5.1-5.2 G: Git Basics, Pro Git 1-2
- C: 2.4-2.8, 3, 6.1, 6.4
- L: 19, pp. 402-407
- C: 4, 5.3, 6.2-6.3,7
- C: 9 (skip pp. 195-201), 11.1-11.4, 15
- C: 8, 12, pp. 195-201
- C: 17.1, 17.3, 17.4
- C: 14.1, 14.2, 14.3 (pp. 334-335) G: Pro Git 3
- C: 13, 17.2
- C: 16.1-16.3, 17.5-17.6
- G: Pro Git 5-6
- The C Test TBA (30%)
Fall 2026
Topics
- Fundamental concepts of low-level imperative programming
- With documentation
- Testing
- Benchmarking
- Profiling and debugging
- Revision control
- Acquiring familiarity
- Professional software
- Settings via practical experience
- UNIX-like systems
- Shell interaction and programming
- Pipes and filters
Fall 2025 · Sfwr Eng Practice & Experience · C01
Readings
- Etext C Programming: A Modern Approach - Lifetime Access Ed: 2ISBN 9781324120797; 9780393979503
Sources
- Course catalogue ↗2026–2027
- Campus Store (short title) ↗
- Academic calendar ↗
- Campus Store reading list ↗Fall 2026
- Course outline / syllabus ↗Fall 2026
- Course outline / syllabus ↗Fall 2026
- Campus Store reading list ↗Fall 2025
- Some readings or course materials are supplied through Avenue to Learn; public bibliographic details may be incomplete.