第一次作业随笔
| 这个作业属于哪个课程 | https://edu.cnblogs.com/campus/fzu/202601SofwareEngineering |
|---|---|
| 这个作业要求在哪里 | https://edu.cnblogs.com/campus/fzu/202601SofwareEngineering/homework/15712 |
| 这个作业的目标 | 使用 Markdown 撰写博客作业,并通过自我评估明确后续学习方向。 |
| 学号 | 102401234 |
当前技能树与能力评估
一、已具备的专业知识与能力
-
经典算法与数据结构
- 掌握数组、链表、队列、栈、树、图等核心数据结构,能完成简单算法实现。
- 定位:足以应对笔试基础题,但在复杂场景(如高级动态规划、图论优化)中缺乏实战训练。
-
计算机网络基础
- 熟悉 OSI 七层模型、TCP/UDP 协议、IP 寻址、HTTP 协议基本流程。
- 定位:具备网络通信的概念框架,但不具备网络编程(如 Socket、HTTPS 抓包、WebSocket)实操能力。
-
传统机器学习与模式识别
- 掌握监督学习(感知机、SVM、Fisher 判别、贝叶斯生成式模型)和无监督学习(K-Means)理论。
- 理解决策论中的最小错误率与最小风险权衡。
- 定位:对传统 ML 算法有较深数学理解,但缺乏深度学习的实战经验(CNN、RNN、Transformer 等现代架构仅停留在"简单神经网络"认知层面)。
-
人工智能与最优化算法
- 了解模拟退火、蚁群、蜂群、遗传算法及基础数学优化方法。
- 定位:偏向认知层面,未在实际项目中应用过这些启发式算法。
-
基础编程与实验环境
- Python 略知一二,C/C++ 能写基础算法。
- 熟悉 VS Code、Git(基础 add/commit/push)
- 定位:具备实验环境搭建能力,但工程化程度低(未接触过单元测试、CI/CD、项目结构规范)。
二、感兴趣的技术方向
- 方向一:前后端开发 —— 想将 AI 模型落地为 Web 应用,但对全栈开发目前一窍不通。
- 方向二:AI 工程化落地 —— 未来希望将所学知识变现,需要具备从"模型"到"产品"的工程链路能力。
三、尚欠缺的能力
-
现代深度学习实战经验
- 只会一些基础神经网络原理,未系统学习 CNN、Transformer、生成模型(GAN/扩散模型)的代码实现与调参。
-
前后端工程开发基本为零
- 不懂前端(HTML/CSS/JS/框架),不懂后端(数据库、API 设计、服务器部署),不懂系统设计。
-
过度依赖 AI 辅助编码
- 缺乏独立调试、架构设计和代码审查能力。容易陷入"能跑就行"的陷阱,缺乏对代码质量、可维护性的追求。
-
软件工程规范缺失
- 不太懂 Git 分支管理、代码风格规范、模块化设计、异常处理与日志系统。
截至目前的代码量与希望达到的代码量
-
目前约1.1w行,算上vibe coding的有4.4w行
-
希望达到的代码量约6w行
最期待学习的知识
- 关于前后端一些架构的知识,以及落地到实践的方法
DeepSeek给的软件工程课程学习指南(以下)
结合你"想学前后端"和"想做 CV 项目落地"的目标,我为你规划了一条从"实验型代码"转向"工程型项目"的学习路径。建议按顺序推进,不要跳过基础。
阶段一:工程素养补全(用时 2~3 周,同步进行)
这一阶段不涉及框架,只解决"代码写得太随意"的问题。
| 学习目标 | 具体内容 | 最低完成标准 |
|---|---|---|
| Git 协作与规范 | 学习 Git Flow(分支、PR、commit 规范) | 在 CV 项目中创建 dev 分支,完成一次合并 |
| Python 工程化 | 学习 requirements.txt、虚拟环境(venv/conda)、项目目录规范(src/config/utils 分层) | 重组你 CV 项目的文件夹结构 |
| 代码调试技巧 | 学习使用 pdb 打断点、logging 模块替代 print | 在 Chatbot 项目里加入日志输出 |
阶段二:后端开发入门(用时 1~2 个月,建议优先)
因为你要做"前端交互生成图像"的作业,后端是连接模型与前端的桥梁,必须最先攻克。
| 学习目标 | 具体内容 | 推荐资源 / 实践 |
|---|---|---|
| Web 框架(Flask / FastAPI) | 学习路由、请求体、返回值,重点是写 API 接口 | 把你 Hugging Face 的生成函数,封装成 POST /generate 接口 |
| 数据库基础 | 学习 MySQL 或 SQLite 的 CRUD,了解 ORM(SQLAlchemy) | 给你的图生图应用加一个"历史记录"保存功能 |
| 异步编程概念 | 了解 async/await,解决模型加载耗时阻塞的问题 | 尝试用 FastAPI 的异步接口部署模型 |
关键检验:能通过 Postman/浏览器访问你本地的 API,成功返回一张图片,且后端有日志记录。
阶段三:前端基础与交互(用时 1 个月)
目标不是成为 UI 设计师,而是能看懂前端代码、能调通接口。
| 学习目标 | 具体内容 | 最低完成标准 |
|---|---|---|
| HTML / CSS 基础 | 学会布局(Flex/Grid)、样式调整 | 写一个干净的文本框 + 按钮 + 图片展示区 |
| JavaScript 核心(ES6) | 掌握 fetch 请求、async/await、DOM 操作 | 用 fetch 调用你自己的后端 API |
| 简易前端框架(Vue 或 React 选其一) | 只学组件化与 axios 请求库 | 用 Vue/React 重构之前的交互页面 |
关联作业:你之前的"前端接口交互生成"作业,完全可以使用这个阶段的技术栈完成。
阶段四:系统部署与容器化(用时 2 周)
为了让同学/老师能在线访问你的作业,你需要学习部署。
| 学习目标 | 具体内容 | 最低完成标准 |
|---|---|---|
| Docker 基础 | 写 Dockerfile,将项目打包成镜像 | 让你的 Flux 图像生成应用能在 Docker 容器里跑起来 |
| 云服务器基础 | 了解 Linux 基本命令、nohup / screen 后台运行 | 将服务部署到云服务器(如阿里云/腾讯云轻量服务器),生成公网链接 |
特别建议(针对"依赖 AI"的问题)
- 禁用 Copilot/Cursor 三天:尝试独立写一个简单的 CRUD 接口(比如图书管理系统后端),遇事先查官方文档(MDN、FastAPI 文档),不要复制粘贴。
- 读优秀源码:去 GitHub 找一个小型 Star 数高的 Python Web 项目,读它的 app/ 目录结构,模仿它的分层思想。
- 考研与工程的平衡:考研是长期目标(三年),软件工程是中期技能。建议每天拿出 1.5 小时雷打不动地写工程代码,把学到的数据结构和网络知识在代码中落地(比如用 Socket 写一个简单的聊天室)。
DS给建议的学习路线由易到难,但是最难的是看我能否沉下心来好好动手去做。如果执行到位,应该或多或少都对我有点帮助。

浙公网安备 33010602011771号