我的技能树与自我评估
随笔:我的技能树与自我评估
一、自我评估
已具备的专业知识与能力
- C/C++,Python 基础编程,能独立完成功能开发
- 数据结构与算法基础,具备一定刷题量
- 学过计算机网络、软件工程等专业课程
- CS231n 跟着学完了,三次大作业都自己动手做完,有一定人工智能,深度学习基础
- 有一定的代码审阅能力,能看懂项目
- 有一定git和linux基础,可以适应团队开发
- 会使用ai agent等辅助软件开发,使用ai提高软件开发的效率
感兴趣的技术方向
- 后端开发:想搞懂缓存,并发,数据库这些,知道服务到底是怎么撑起来的
- 大模型应用:想学 RAG,Agent,把模型真正接到好用的工具里,而不是只跑 demo
- 计算机视觉:CS231n 入了门,想继续往深走走
还欠缺的能力
- 操作系统、数据库还没吃透
- 后端框架只懂皮毛,缺系统性学习
- 没经历过大型项目和正经团队协作
- 代码规范性和可维护性考虑不够,基本停留在"跑起来就行"
- 大模型停留在调用层面,微调这些还没碰过
- 前端只会写简单页面,框架和工程化都没系统学过
二、代码量:现在 vs 目标
- 截至目前累计代码量:约 5000 行
- 本学期课程结束后希望达到:约 9000 行
- 打算怎么补上这个差值:跟着课程做完所有实验和大作业,坚持每周刷几道题,再自己动手做一两个小项目
三、本课程最期待学到的知识
- 最期待:想知道一个软件从需求分析到设计,编码,测试,上线,完整要走哪些流程,以前都是拿到题目直接写代码
- 其次:想学真正的团队协作,Git 分支管理,code review,任务分工这些,之前小组作业基本靠喊,想学正规的玩法
- 还有:想学怎么写能维护的代码,设计模式,文档和测试这些,不然代码写完过两个月自己都看不懂
希望获得的收获:
- 能独立走完一个小项目的完整开发流程,而不是只会写功能
- 学会跟人协作开发,代码写得规范一点,毕设和以后工作都用得上
四、ai生成的软件工程课程学习指南
下面这份指南是我让 AI 帮我整理的,结合课程大纲排的学习路线,照着走应该能少踩点坑。
1. 先搞懂软件工程到底在解决什么问题
核心就一句话:一个人写几百行代码靠手感,一群人维护几十万行代码靠流程。这门课学的就是后者,需求,设计,编码,测试,维护,每一环都有讲究。
2. 分模块学,每个模块抓住重点
- 需求工程:学会写需求文档和用例,把"用户想要什么"翻译成"系统要做什么"。练习方法就是拿身边的小项目练手,先写文档再写代码。
- 设计:UML 类图,时序图要会画会看,架构分层思想要理解,不求一次设计完美,但动笔前先画图。
- 编码规范:命名,注释,函数长度,看一遍主流规范,找个 linter 配上,让工具替你盯着。
- 测试:单元测试必须会写,覆盖率不用追求满分,但核心逻辑要有用例兜底。
- 版本管理与协作:Git 分支模型,merge 和 rebase 的区别,code review 的基本礼仪,这是团队项目的基本功。
- 项目管理:敏捷,迭代,任务拆分,学会把大任务拆成几天能做完的小块。
3. 时间安排建议
- 开学前四周:打基础,需求和设计部分跟紧,图多画几遍。
- 期中前后:编码加测试,单元测试养成习惯,别堆到期末。
- 期末大作业:提前选题,早定分工,每周合一次代码,别等最后三天集成,会死人的。
4. 避坑清单
- 别跳过文档直接写代码,返工更费时间。
- 别一个人闷头干,进度不同步,联调地狱等着你。
- 别把测试全留到最后,越早写用例,改 bug 越便宜。
- 提交信息好好写,以后查问题全靠它。
5. 我的用法
这份指南我打算贴在书桌前,每周对照 check 一次进度。AI 整理得再全,最后还是得自己一行行敲出来才算数。
我对这份指南的分析
先说合理的部分:它把软件工程拆成需求,设计,编码,测试,协作,管理几个模块,这个划分跟课程大纲基本对得上,照这个顺序学不会跑偏。时间安排也实在,特别是"测试别堆到期末"和"每周合一次代码",一看就是前人踩过坑总结出来的,不是空话。
能不能帮到我:能帮一半。我缺的正好是它强调的东西,文档,测试,团队协作,这些我之前基本靠感觉,现在有条线可以照着补。避坑清单我打算真贴书桌前,期末大作业前拿出来看一眼。
不全对的地方也有两处:一是它默认大家时间充裕,能每周稳定推进,但考研复习一挤,计划肯定打折,得按自己节奏砍内容,保核心。二是有些点偏理想化,比如"动笔前先画图",小作业里坚持还行,赶 due 的时候大概率还是先写再说,这点我对自己没那么大信心,只能说尽量。
总的来说,指南当路线图用没问题,但别当圣经,学到哪算哪,动手了才算数。
浙公网安备 33010602011771号