技术之外的多维度成长与感悟
| 这个作业属于哪个课程 | 软件工程2024 |
|---|---|
| 这个作业要求在哪里 | 软件工程2024秋——个人总结作业 |
| 这个作业的目标 | 搭建自己的博客,写下自己的个人情况和愿景 |
| 学号 | 102202121 |
一、学期回顾
1.1 回顾你对于软件工程课程的想象
软件工程确实是一门很有意思的学科,在实践和合作编程过程中能够了解软件开发生命周期、需求分析、设计模式、测试策略等核心概念。这些知识为我理解软件工程的整体框架奠定了坚实的基础,并让我在实际项目中能够运用这些理论指导实践。然而,在实践能力方面,我意识到自己还存在一些不足。尽管在课程项目中参与了一些编码和测试工作,但在项目管理和团队协作方面仍有提升空间。在实际项目中,我有时会发现自己难以有效地进行任务分配和时间管理,导致项目进度受到影响。此外,在团队协作中,我还需要进一步提高沟通能力,以确保与团队成员之间的信息传递顺畅。这与课程对学生在实际项目中应具备的全面技能要求尚有差距。软件工程课程让我学习到了许多。
1.2 回顾你在这门课程中的投入与产出
在软工实践课程当中我编写了4000行代码。
在团队项目中我参与了的“行趣”设计与开发,我在其中负责创建数据库及API,处理数据逻辑,保障系统稳定高效运行。
软工实践的各次作业分别花费的时间:
| 作业 | 花费时间 |
|---|---|
| 第一次个人作业 | 4h |
| 第二次个人作业 | 10h |
| 第一次结对作业 | 12h |
| 第二次结对作业 | 30h |
| 第一次团队作业 | 25h |
| 第二次团队作业 | 40h |
| 现场编程作业 | 3h |
| 团队作业beta冲刺 | 20h |
在软件工程课程上花费的时间
| 累计时间 | 实际周均时间 | 预计周均时间 |
|---|---|---|
| 144h | 12h | 10h |
1.3 令你印象最深刻的是哪一次作业或哪一场答辩?为什么这次作业或这场答辩令你印象深刻?
第二次个人作业要求开发类似羊有羊的小游戏,这次作业的难度超出了我的预期。推翻了我对软件工程这门课的想象,在完成作业的过程中,我遇到了许多未曾预料的困难和挑战。但在逐渐解决这些困难的过程中,通过不断的尝试和调整,终于完成了作业。这个过程让我深刻体会到了坚持和努力的重要性,也让我明白了在面对困难时,只有不放弃,才能找到解决问题的方法。
二、总结收获
2.1 展开说说你的软工实践故事
在个人编程阶段,我尝试开发了一款类似“羊了个羊”的小游戏。这个过程让我深刻体会到了独立开发者的艰辛与乐趣。从游戏的设计思路到具体的代码实现,每一个环节都需要我亲力亲为。在设计阶段,我参考了“羊了个羊”的核心玩法,并尝试加入一些自己的创意。在结对编程阶段,我和一位同学合作开发一个软件项目,从设计原型模型到最终的软件完成。这个过程让我深刻认识到了团队合作的重要性。我们进行了需求分析和原型设计。通过讨论,确定了软件的基本功能和用户界面,并使用工具绘制了详细的原型图。我们采用了结对编程的方式,并进行单元测试和集成测试,确保了软件的稳定性和可靠性。在团队作业的过程中,从最开始的选择目标软件开发方向,到后面主要功能和杀手功能,这一步步都是我们之间一起携手商讨完成的,也是凭借我们的默契合作最终出色地完成作业。这几次实践经历不仅丰富了我的知识储备,还培养了我的实践能力和职业素养,我学会了如何在团队中有效地沟通和协作。
2.2 介绍学习到的新技术或生产力工具以及它们给你带来了哪方面的帮助?
2.2.1 Pygame
Pygame是一个用于开发电子游戏的Python库,封装了SDL库的功能,提供了图形、声音、输入等模块。在开发小游戏的过程中,我通过官方文档和在线教程掌握了其基本使用方法,包括如何初始化游戏窗口、加载图像和声音、处理用户输入以及实现游戏循环等,应用了Pygame的各种功能。
2.2.2 墨刀
墨刀是一款在线原型设计工具,提供了丰富的预设组件和模板,使得我在结对编程中快速搭建出产品的基本界面和交互流程。我可以通过设置事件和动作,实现页面跳转、数据输入、动态显示等交互效果。这使得我的原型更加接近最终产品。
2.2.3 HBuilderX
HBuilderX是一款支持HTML5、Vue.js等前端技术的集成开发环境(IDE),提供了强大的代码编辑、调试和发布功能。HBuilderX提供了智能代码补全、语法高亮、代码折叠等功能,使得我可以更高效地编写和阅读代码。我利用HBuilderX的代码补全功能,快速编写了复杂的Vue.js组件,提高了开发速度。HBuilderX还支持实时预览和调试,我可以随时查看页面的实际效果,并通过调试工具快速定位和修复问题。而支持多平台发布使得我可以方便地将应用打包发布到iOS、Android和Web等多个平台。
2.3 技术之外,这门课程还给你带来了哪些方面的提升?
2.3.1 系统化思维和问题分解能力
软件工程强调将复杂问题分解为更小、更易管理的部分。通过学习需求分析、系统设计和项目规划,我学会了如何系统地分析问题,并将其分解为可执行的任务。在团队项目中,我们面对的是一个庞大的旅游相关软件系统。通过需求分析和系统设计,我们将系统分解为多个模块,如用户管理、旅游线路推荐、支付系统等,每个模块都有明确的功能和接口。这种系统化的思维方式帮助我们更好地理解和实现项目需求。
2.3.2 团队合作与沟通能力
软件工程强调团队合作和沟通的重要性。通过结对编程和团队项目,我学会了如何在团队中有效地沟通和协作,包括如何表达自己的观点、如何倾听和尊重他人的意见、如何解决冲突等。结对编程中,我和搭档通过实时交流和协作,解决了许多技术难题,并提高了代码质量。在团队项目中,我们通过定期的团队会议和项目管理工具进行任务分配和进度跟踪,确保了项目顺利进行。
2.3.3 持续学习与自我提升能力
软件工程是一个不断发展的领域,通过课程学习,我培养了持续学习的能力和自我提升的意识。我学会了如何通过在线资源、书籍、课程等途径,不断更新自己的知识和技能。
2.4 如果还有什么想记录的或者想说的,就写在这儿吧!
软件工程不仅仅是一门学科,更是一种思维方式,软工学习的不仅是完成软件的开发,更是学习怎么和其他同学交流合作,在完成软件工程课程的学习后,我内心充满了感慨与感动,这段学习经历将成为我人生中宝贵的财富,激励我在未来的道路上不断追求卓越。


三、致谢
感谢我们的组长和每位队员为团队的辛苦付出,也感谢老师与同学们,让我收获知识、技能与成长。

浙公网安备 33010602011771号