COMP9044《软件构造》是 新南威尔士大学 的公开课程页面。当前可确认的信息包括 6 学分,难度 中等,公开通过率 85%。 页面已整理 10 周教学安排,3 个重点考核,方便你快速判断工作量、考核结构和适配度。 课程简介摘要:课程定位 COMP9044 被公认为 UNSW 最实用的工程课之一,被学生戏称为“Linux 黑客养成班”。
COMP9044 的难度在于‘琐碎中的逻辑’。Shell 的语法极其奇葩(比如变量加引号 "$file" 与不加的区别),稍不留神就会导致文件被误删。难点在第二周的正则表达式(Regex),那一串乱码般的字符如果没掌握其层级匹配逻辑,你在考场上会抓狂。压力主要来自于期末机考,你需要在高压下、没有互联网的情况下,凭记忆和手册解决 10 道题,容错率极低。及格容易,但拿 HD 需要你对‘边缘情况(Edge Cases)’有近乎强迫症的处理。挂科风险显著存在于对‘Hurdle(及格线)’的忽视上。
高分秘籍:‘得正则表达式者得 Distinction’。期末考试中,正则表达式占了近 40% 的分值,一定要练到能秒写出匹配复杂 HTML 标签或嵌套括号的正则。重点练习‘一行代码’脚本(One-liners),因为考试中有很多小分题要求你直接在终端给出答案。对于项目,HD 的关键在于‘健壮性’——你的脚本是否能处理带空格、带星号的文件名?是否能优雅地处理权限错误?重视 Tutorial 里的每一道手算 Regex 题。考前一定要把 Andrew Taylor 提供的 Sample Exam 刷三遍。
神级资源:Andrew Taylor 的课程官网,那里有海量的练习题和详尽的说明。如果 Regex 不熟,强烈推荐使用在线调试工具‘Regex101’。想要系统提升 Linux 功力,去读《The Linux Command Line》一书。最重要的建议:每天花 15 分钟在终端里练习常用命令的组合,这种‘肌肉记忆’在机考中能帮你节省 30% 的时间。加入 UNSW 的 CS 社团探讨黑客思维。
项目避坑:千万不要在路径名里假设没有空格!在 Shell 脚本中,始终给变量加引号(如 "$file"),这是 9044 避坑的第一准则。Assignment 提交前,务必在学校的 CSS 服务器上跑一遍,确保环境兼容性。此外,注意 Final 考试有机考 Hurdle,如果你现场写不出一个基本的 Shell 循环,你会直接 Fail。考试时,先把简单的 Shell 命令题做完,把时间留给最后的 Python/Perl 逻辑大题。注意:分清‘单引号’与‘双引号’在 Shell 变量替换中的本质差异。
学长建议:这门课是为你进入一线互联网公司(如 Google 或 Atlassian)拿的‘高级蓝领执照’。学完后,你眼中的电脑不再是图形界面,而是一个由流、管道和正则定义的无限自动化战场。建议找一个同样追求‘一行代码解决问题’的队友共同讨论。拿 HD 的关键:在作业中展现出你对‘边缘情况的极致处理’。坚持住,通关 9044,你就真正具备了挑战任何复杂系统自动化的底层能力。这张成绩单是进入 DevOps 或后端开发岗位的最有力的技术背书。记住:好的脚本,是炸不掉的代码。
