软件工程课程第一次个人作业
| 这个作业属于哪个课程 | https://edu.cnblogs.com/campus/fzu/202601SofwareEngineering/ |
|---|---|
| 这个作业要求在哪里 | https://edu.cnblogs.com/campus/fzu/202601SofwareEngineering/homework/15712 |
| 这个作业的目标 | 1.用api调用hugging face中的模型。2.GitHub个人主页创建。3.介绍 |
| 学号 | 102401622 |
一、准备工作完成情况
个人主页地址:https://github.com/drkalerq |
博客地址:https://www.cnblogs.com/toumaa |
二、API 调用与前端交互实现
2.1 注册账号与获取 API Key

2.2 前端页面与生成结果

a single red apple on a wooden table, soft daylight, simple composition

a rainy Tokyo street at night, neon reflections on wet asphalt, a lone figure with a transparent umbrella walking away from the camera, cinematic wide shot, volumetric fog, moody atmosphere, blade runner style
结论:描述越精确,用词越专业ai更有可能生成需求图片。
三、GitHub 个人主页搭建
主页正文

四、技能树梳理
4.1 已具备的专业知识与能力
**计算机基础,较为简单的算法,ai的使用。
4.2 欠缺的能力
**缺口 1:算法与数据结构不成体系。
**缺口 2:缺乏软件工程方法的实践。
**缺口 3:团队协作经验缺失。
五、代码量统计
5.1 截至目前的代码量
**只写过算法题,项目实战经验很少。
5.2 本学期结束时的目标代码量
| 课程结束后累计代码量 | 达到 10000 行以上 |
| 单元测试 | 至少为核心项目补充 1 套可运行的测试 |
| 文档产出 | 每个项目配备可独立运行的 README |
六、本课程中最期待学习的知识与期望收获
最期待学到的三件事
- 软件工程全流程:从需求获取到设计、实现、测试、交付的完整链路,尤其想知道真实团队是如何做需求评审和迭代管理的。
- 如何写出别人能维护的代码:设计模式、代码规范、分层架构,想把目前"能跑就行"的习惯改掉。
- 团队协作的真实体验:希望本学期的团队作业能让 Git 分支策略、代码评审、任务拆分这些事从概念变成肌肉记忆。
希望获得的收获
- 一份可以写进简历的、有完整工程文档的团队项目经历
- 能清楚讲出自己在项目里负责了什么、遇到了什么问题、怎么解决的
七、AI 生成的《软件工程》学习指南 + 我的分析
以下【7.1】内容由 AI 助手(deepseek)生成
7.1 AI 生成的学习指南(原文)
《软件工程》课程学习指南(简要版)
一、课程核心定位
软件工程不是教写代码,而是教"多人、长期、可控地把软件做出来"。评价标准从"程序能不能跑"变成"项目能不能按时交付、能不能被人接手、能不能稳定运行"。
二、知识模块与优先级
- 软件过程模型(高优先级):瀑布、增量、螺旋、敏捷 / Scrum。重点理解各自的适用前提,而不是背诵流程图。
- 需求工程(高优先级):功能性需求与非功能性需求(性能、可靠性、可维护性)的区分;用户故事与验收标准的写法。
- 软件设计(高优先级):模块化、内聚与耦合、SOLID 原则、常见设计模式(工厂、策略、观察者、单例)。
- 软件测试(中高优先级):单元测试、集成测试、回归测试;测试金字塔;覆盖率的意义与局限。
- 项目管理(中优先级):WBS 任务分解、燃尽图、风险登记册、代码评审规范。
- 质量与维护(中优先级):技术债、重构触发条件、版本发布流程。
三、配合的学习方法
- 每周用一张 A4 纸画出你正在做的项目的模块依赖图,看是否有环和低内聚的地方。
- 对自己写过的每个函数问一句:"三个月后我还看得懂吗?"
- 给每个项目写 README:背景、快速开始、目录结构、已知问题。这是最廉价的工程训练。
四、一个学期的节奏建议
- 前 4 周:掌握过程模型与需求描述方法,产出一份合格的需求规格说明。
- 第 5~9 周:学习设计原则与 UML,完成概要设计与详细设计。
- 第 10~14 周:以团队作业为载体,实践编码、测试、集成与迭代。
- 第 15 周起:复盘,重点写"哪里本可以避免"而不是"做了什么"。
7.2 这份指南是否合理?——我的分析
合理的部分
- 定位准确。 "从能不能跑,到能不能交付、被人接手、稳定运行"这句话和我的实际差距直接对上了。我目前的项目确实停在第一层。
- 模块优先级排序对我有参考价值。 我之前把绝大部分精力都放在"把功能跑通"上,下意识觉得测试是最不重要的部分;它把"软件测试"排在中高优先级,让我意识到这个忽视会直接反映在作业质量和后续面试上。
不合理的部分
- 缺少前置能力判断。 指南假设学习者已经能顺畅地写出多模块程序,但我目前的短板恰恰是算法基础和工程习惯,直接上 UML 和设计原则容易变成"背概念"。
- 没有可验证的产出物标准。 "完成概要设计与详细设计"这类描述无法自我检查通过与否,我需要把每条建议都改写成"做完能拿出来被人检查的东西"。
- 对工具和实践环节涉及太少。 Git 协作的具体做法(分支策略、PR 评审要点)、CI 怎么接、依赖怎么管,这些才是我这学期马上会撞上的问题,指南里几乎是空白。
八、Markdown 编辑器设置与后台编辑页截图

浙公网安备 33010602011771号