一袋米要抗几楼——软工学期回顾

news/2025/1/8 10:41:06/文章来源:https://www.cnblogs.com/-L-Lawliet/p/18639602
这个作业属于哪个课程 https://edu.cnblogs.com/campus/fzu/SE2024
这个作业要求在哪里 https://edu.cnblogs.com/campus/fzu/SE2024/homework/13315
这个作业的目标 对整个学期的学习进行总结
学号 102201130

🎓 一、学期回顾

1.1 回顾你对于软件工程课程的想象

  • 在上这门课之前,我以为这门课程是像之前所有的编码课程一样,教我们编码的 💻。
  • 所以一开始的课程目标,我只是想在这门课里面锻炼精进一下编码的能力。没想这门课的水比我想象中的‘深’多了 😲。
  • 在此之中,我的编码能力不仅有了显著的提高! 并且对于做一整个包含前后端的大项目有了更深的理解,包括项目的框架、API的设定、技术的选取等等 😊。
  • 更重要的是,在这么多次的项目之中,我学习了如何与他人协作,如何与他人沟通项目的细节,之前我都是一个人独自编码的,这门课教会了我如何与他人共同合作编码 🤝。

1.2 回顾你在这门课程中的投入与产出

  • 在软工实践课程当中我编写了大约8000行代码 💾。
  • 在结对项目中我参加了‘PG’的设计和开发,在其中所承担的角色是后端代码的部分,包括数据库设计,API设计和编码,整体后端框架的设计等等 🛠️。
  • 在团队项目中我参与了‘EZnote’的设计和开发,在其中所承担的角色是后端代码的部分,包括笔记一些逻辑的编写,API的确定,AI部分的编码还有一些前端工作,包括美化界面等等 🎨。
  • 软工实践的各次作业分别花费的时间 ⏳
作业 花费时间
第一次个人作业 2h ⏰
第二次个人作业 12h ⏰
第一次结对作业 13h ⏰
第二次结对作业 76h ⏰
第一次团队作业 5h ⏰
第二次团队作业 6h ⏰
现场编程作业 3h ⏰
团队作业beta冲刺 90h ⏰
  • 在软件工程课程上花费的时间
累计时间 实际周均时间 预计周均时间
40(h) 📅 2.6(h) 2(h)

1.3 令你印象最深刻的是哪一次作业或哪一场答辩?为什么这次作业或这场答辩令你印象深刻?

  • 印象最深的应该是BETA冲刺的答辩 🎤
  • 这次答辩我们组不仅获得了最佳LLM和最佳产品经理,还获得了一等奖,出乎我的意料 🏆😊
  • 实际上就我而言,我认为我们组的工作量并没有其它组那么夸张(也可能是我们方向对,效率比较高) 🤔👍
  • 后来总结复盘应该是跟我们最初的设计理念有关 🧠
  • 一开始我想的是,既然是做LLM相关的项目,那么最好是选择用LLM擅长的方面
  • 所以像旅游、游戏等方面都被我们pass了,因为LLM擅长的领域并不在这块,或者说LLM本身就不擅长于逻辑思考,做这块方面LLM有他一定的局限性 🛑
  • 我们的设想是,LLM只是应该作为辅助,而不是核心功能,软件本身去除了LLM应该要也是一个能够运行的正常的项目 🔄
  • LLM擅长的是什么,就是文本的处理,所以我们考虑了做笔记的软件,非常适配LLM的长处 📝😊

    *(前端小组居然能够复刻出原型的样子) 😲

📝 二、总结收获

2.1 展开说说你的软工实践故事

  1. 个人编程 👨‍💻

    • 个人编程带给我的震撼就是。我去,AI居然这么好用 🤖😊
    • 之前我也不是没有用过AI编程,比如说OJ的题目,但是当时AI带给我的感受就是:不太聪明 😕
    • AI给出的代码在总体的框架上是对的,但是又一些细节又错的离谱,但一眼又看不出来,找半天不如我自己写了,所以我之前并不是很喜欢用 😅
    • 但是这里脱离了算法,到了实际工程,AI就展示出了他的强大之处了 💪
    • 首先是在实际的工程上面,很多逻辑并不复杂,只是设计到很多API的使用,AI在这方面比手动查资料强多了 📈
    • 其次是工程上有很多重复而又简单的逻辑,AI可以快速将其编码出来,减少了人类很多的工作量 🔄
    • 最后就是AI对Python的支持度真的很高,得益于Python各种各样的库,导致一些你认为很难实现的东西,AI用几句代码就可以实现了 🐍😊
    • 比如说我当时询问AI的例子
    • (文件发给他就能读取,你只要说出你的需求就好了) 📂➡️💬
  2. 结对编程 🤝

    • 结对编程让我首次接触到了多人合作的一整个前后端的项目(当然也缺少不了AI的帮助) 🌐😊
    • 最让我触动的是GitHub的使用,GitHub可以很方便地进行版本之间的管理,而且方便多人协作 🐙
    • 大家只要把代码放到同一个仓库,然后进行同步就可以了 📁🔗
    • 如果才用QQ群协作的话,指不定要出现多少的问题 📱❓
  3. 现场编程 🖥️

    • 现场编程让我知道了规划的重要性,也加深了我对代码框架的一些理解 🗺️😊
    • 现场紧张刺激的编程中,我们一开始对金钱收入支出如何表示设计的不是很好 💸❌
    • 导致最后前后端合并的时候出现了问题,很多功能无法实现 🚫🔧
    • 这让我体会到了合作的重要性,以及代码开始前设计的重要性 🤝📝
    • (然后我们组后来就定下了规矩,前后端代码设计API使用APIFOX工具进行统一) 📐
  4. 团队项目实践 👥

    • 这里面获取到的经验是最多的,我就挑一个我认为重要的讲讲吧 📚
    • 团队项目实践我负责的一部分有AI接口的调用,在之前我认为这个接口调用和网页上直接使用AI的功能应该是一样的 🤔
    • 但是随着查阅文档和资料的丰富,我才知道AI接口能做的比我想象中的要多 📖😊
    • 你可以给他制定一系列的规则,让他按照你指定的规则返回信息,而且一定不会违背规则,比我想象中的LLM要强大很多 💪🔧
    • 我以代码来举例子,例如说我们设定一键导入日程的功能,在此之前我认为AI是绝对完成不了这件事的,没想到可以通过规则的设定来完成 📅➡️📝
    • 可以通过设定规则,让他只返回json格式的文本,这样我们可以直接生成进数据库里 🗃️😊

2.2 介绍学习到的新技术或生产力工具以及它们给你带来了哪方面的帮助?

2.2.1 GitHub 🐙

GitHub是我们团队协作的核心工具。

  • 轻松跟踪代码变化,避免冲突和丢失 🔄
  • 独立开发新功能,通过 Pull Request 进行代码审核和合并 ✅
  • Issue 和 Pull Request 功能可以促进团队成员之间的沟通和问题解决 💬

2.2.2 APIFOX ⚙️

APIFOX帮助我们统一前后端的 API 设计。

  • 快速设计和定义 API 规范,确保前后端一致 🖥️
  • 自动生成的 API 文档方便团队成员查阅和理解接口功能 📑
  • 支持 API 版本管理,平滑引入新接口变更 🔄

2.2.3 OpenAI 的 ChatGPT 🤖

ChatGPT在项目开发中发挥了重要作用。

  • 快速生成代码框架,优化现有代码,解决编程问题 🛠️
  • 通过互动快速获取技术文档和解决方案,缩短学习时间 📚
  • 协助完成重复性高的任务,如编写测试用例和生成配置文件 🔄
  • 再举一个AI强大的例子,我问他APIFOX应该如何使用它也可以回答 🗨️

2.3 技术之外,这门课程还给你带来了哪些方面的提升?

2.3.1 团队协作能力 🤝

  • 通过多个结对编程和团队项目,我学会了如何在团队中有效地协作 😊
  • 我学会了如何清晰表达自己的想法,同时也学会了倾听和理解队友的意见 👂🗣️
  • 理解了在团队中合理分配任务的重要性,确保每个人都能发挥自己的优势 🧩
  • 面对团队中的分歧和冲突,学会了冷静分析问题,寻找共识和解决方案 🧘‍♂️

2.3.2 时间管理与项目规划 ⏰

  • 课程中的各类作业和项目要求我合理安排时间,提升了我的时间管理能力 ⏳
  • 学会了为项目制定详细的时间表和任务清单,确保按时完成各项任务 📋
  • 能够根据任务的重要性和紧急程度,合理安排工作顺序,提高效率 🚀
  • 在项目进展中遇到意外问题时,能够迅速调整计划,保证项目顺利进行 🔄

2.3.3 问题解决能力 🛠️

  • 在项目开发过程中,难免会遇到各种技术和非技术问题,这门课程帮助我提升了问题解决的能力 🧠

2.4 如果还有什么想记录的或者想说的,就写在这儿吧! ✍️

  • 首先声明这些有点半糖的emoji表情也是我让AI工具加的(AI会发流汗黄豆太恐怖了) 😀

  • (上去答辩被拍了) 📸😅

  • 这次答辩挺幽默也搞得挺耻辱的(耻辱下播了) 😂

  • 本来我们的计划是原型画简单一点,功能靠嘴讲的,不过后来发现讲不完 🖼️💬

  • 当然这不是最耻辱下播的 🙃

  • 最耻辱下播的,其实大家也都没咋听,大抵是看谁画的多画得好给谁分 😅

  • 然后我们组的就荣获一个很低的票数,耻辱下播了 😓

  • 当然后面我们就吸取教训了,东西都尽量的给做好看点(比如说这次作业我就打算把博客的风格给换一换,搞点背景,搞点音乐什么的) 🎨🎶😊

🙏 三、致谢

  • 首先要致谢的就是我的搭档林智烽了,他又是会给我一些软件上的灵感,又会跟我说一些话,让我软工繁忙的工作中没有那么无聊 😊
  • 然后要感谢的就是我组长黎曼了,我一直和林智烽说选她当组长真是选对了,她作为组长真的很负责,会积极地指导工作,提醒组员,有时甚至能看她熬夜到凌晨4点 🌙,还好当初没有选我当组长,如果我是组长,我大概就不会这么上心,大概就会有点小摆 🤷‍♂️
  • 最后致谢的是我的组员陈宇杰了,他以前有过一些项目的经验,我们很多东西都要请教他,包括APIFOX的使用也是他提出的,而且网站也是他来部署的,为团队也是贡献了很多 👍

  • 最后也是终于结束一学期的软工了

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.hqwc.cn/news/861466.html

如若内容造成侵权/违法违规/事实不符,请联系编程知识网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

java.sql.SQLException: ORA-00600: 内部错误代码, 参数: [kcbnew_3]的其中一个解决方法

ORA-00600 解决方案java.sql.SQLException: ORA-00600: 内部错误代码, 参数: [kcbnew_3]的其中一个解决方法 重启 重启 重启 oracle服务。 今天反馈添加数据库报错 。试了一下就几各别的表不能插入。别的表好好的 GPT一下并检查了表空间都没什么问题。 执行 INSERT INTO DEVIC…

库卡机器人KR240电源模块维修思路讲解

一、库卡机器人KR240电源模块故障诊断 故障诊断是维修过程中的关键步骤。使用库卡提供的诊断工具或软件,对库卡机器人KR240电源模块进行故障诊断。重点关注电源供应、输出电压、电流等关键参数。通过诊断结果,确定故障的具体位置和性质,为后续的维修工作提供明确方向。 二、…

【Airflow】入门笔记

前言 Airflow入门教程 正文 简介 任务管理、调度、监控工作流平台。 基于DAG(有向无环图)的任务管理系统。 基本架构组件scheduler: 以有向无环图(dag)的形式创建任务工作流,根据用户的配置将任务定时/定期进行调度 worker: 任务的执行单元,worker会从任务队列当中拉取任务…

[Airflow] 入门笔记

前言 Airflow入门教程 正文 简介 任务管理、调度、监控工作流平台。 基于DAG(有向无环图)的任务管理系统。 基本架构组件scheduler: 以有向无环图(dag)的形式创建任务工作流,根据用户的配置将任务定时/定期进行调度 worker: 任务的执行单元,worker会从任务队列当中拉取任务…

2024下学期加分项

软考中级设计师通过资格证书

直接调用文件设置qt可执行程序的图标,运行时的图标,exe本身的图标,以及固定到任务栏时的图标,窗口坐上角的图标

// 设置应用程序图标(窗口图标和任务栏图标)this->setWindowIcon(QIcon("./Icon/ReadADtool.ico")); // 从资源文件中加载图标 固定到任务栏上时的图标: 在pro文件添加如下指令:设置rc文件内容:IDI_ICON1 ICON DISCARDABLE "ReadADtool.ico…

Ajax入门以及Axios的详细使用(含Promise)

1. 概述 1.1 是什么Ajax = Asynchronous JavaScript and XML(异步的 JavaScript 和 XML)Ajax 不是新的编程语言,而是一种用于创建快速动态网页的技术Ajax 最大的优点是在不重新加载整个页面的情况下,可以与服务器交换数据并更新部分网页内容,使网页实现异步更新传统的网页…

超低功耗段LCD液晶段码显示屏驱动芯片(ic)VKL128 LQFP44 I2C通信接口/可配置4种功耗模式

产品品牌:永嘉微电/VINKA 产品型号:VKL128 封装形式:SSOP44 概述 VKL128是一个点阵式存储映射的LCD驱动器,可支持最大128点(32SEGx4COM)的LCD屏。单片机可通过I2C接口配置显示参数和读写显示数据,可配置4种功耗模式,也可通过关显示和关振荡器进入省电模式。其高抗干扰,…

私有化部署视频平台EasyCVR安防小知识:如何评估一个监控系统的抗干扰性能?

在当今复杂多变的监控环境中,确保监控系统的稳定性和可靠性至关重要。抗干扰性能作为衡量监控系统性能的关键指标之一,直接关系到监控图像的清晰度、数据的完整性以及系统的响应速度。 本文将详细介绍评估监控系统抗干扰性能的多个关键方面,以及如何通过这些评估来优化系统性…