技术淬炼,自我升华——2023秋软工实践个人总结博客

102101335周仲龙 2023-12-18 21:07:36
这个作业属于哪个课程2023秋福州大学软件工程实践
这个作业要求在哪里轻舟已过万重山——2023秋软工实践个人总结博客
这个作业的目标回顾这一学期所完成的软工任务,发表内心感想
学号102101335

学期回顾:一行代码的启程

初识软件工程

    回首这一学期,我的软件工程之旅,从笨拙的个人博客代码编写到精细的游戏开发,从模糊的概念到清晰的实践,经历了一个又一个思考与突破的时刻。 
    经过一个学期的学习和实践,我学会了如何从需求出发,进行系统分析和设计;我了解了使用Git进行版本控制的技巧,能够在团队中配合地协作。了解了html,css,javascript三大web界面开发的代码,为我其他课程的实践作业提供了帮助。
    然而,课程的学习旅程也让我意识到自己的不足。尽管理论知识的积累让我对软件工程有了更深的了解,但在实际编码时,我发现了很多细节上的挑战,比如性能界面优化、代码的可读性与维护性,技术的更加精进等,这些都是在实践中才能真正领会的技能。我也意识到,无论你的知识储备有多丰富,软件开发总会有它的复杂性和不可预测性,对此保持谦逊和学习的态度是至关重要的。
  此外,我也发现自己在时间管理和项目规划方面还有待加强。虽然我能够勉强按时完成分配的任务,但有时候在项目的某些阶段,我会陷入过度完善的陷阱中,耗费了较多的时间。我认识到,作为一个开发者,能够平衡完美主义与效率是非常重要的,这也是我在未来学习道路上需要不断练习和提高的技能。

投入与输出

这个学期,我累计编写了超过3000行代码,参与了简单数独游戏的web组队合作开发和名为Wonderville的动物王国之旅的跑酷游戏的团队项目设计与开发,在其中担任了前端开发和部分后端工作。我的软工实践之旅,就像攀登高峰,每一步都极为艰难,但每上升一步,都会有莫大成就感与充实感

时间作业名称花费时间
09.01~09.08第一次个人作业10h
09.08~09.15第二次个人作业24h
09.15~09.28第一次结对编程作业30h
09.28~10.07第二次结对编程作业15h
10.07~10.23团队介绍与需求分析报告10h
10.23~11.03原型设计与概要设计15h
11.04团队现场编程3h
11.04~11.18Alpha冲刺阶段30h
11.22~12.16Beta冲刺阶段40h
12.08~12.17学期总结博客作业10h

花费时间

累计时间实际周均时间预计周均时间
187小时16小时14小时
  • 我的时间管理和技术学习能力确实有待提高,但每一分投入都换来了实实在在的进步。

印象深刻的作业--现场编程

    这是我首次进行三小时的团队现场编程,刚开始一头雾水,不知所措,但在组长的布置下也开始有条不紊的进行,我负责用Python编写GUI界面以及邮件的格式在现场编程的火热氛围中,我们团队共同对抗时间的紧迫感,一起解决突如其来的bug。每一次成功解决掉一个bug,都让我深刻体会到团队协作的巨大力量。

总结收获

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

在这场软件工程的探险之旅中,我不仅深入理解了编程的本质,更在个人编程、结对编程、现场编程以及团队项目中历练了自己。

个人编程:独航者的自省

个人编程是我软件工程实践旅程的起点,每次面对屏幕时,我都是既是指挥官又是执行者。在个人项目中,我从最基本的在学习csdn教程,并借助其提供代码的基础上进行修改,添加自己的独特内容,完善博客界面,一步步深入到学习B站视频进行复杂的爬虫编写。有一次,我在思考如何找到每个题目第一篇答案的网址规律时,在朋友的提示下,发现了根据其文字跳转链接,复制文字所表示的链接即可找到所有题目的第一篇答案规律,并通过网址检查,用字符匹配找到网址后数字标识。最终实现了成功完成了要求,那种由内而外的喜悦是无法言喻的。

结对编程:共舞者的默契

  • 结对编程阶段为我与我的编程搭档提供了一次协作开发Web界面的数独游戏的机会。这个过程中,我们俨然成为了共舞者,一同在代码的海洋中翩翩起舞,寻求每一步的默契和协调。
  • 一开始,我们共同决定了项目的基本架构和各自的分工,我负责前端界面的设计与实现,而我的搭档则专注于后端逻辑和算法的构建。在前端,我使用HTML、CSS和JavaScript来构建一个直观且用户友好的界面,确保玩家可以轻松地与游戏互动。这需要考虑到不同玩家的体验,从布局的适应性到交互的直观性,每一个细节都需要反复推敲。
  • 与此同时,我的搭档在后端实现数独游戏的核心算法。我们经常进行会议,讨论如何将前端界面与后端逻辑无缝连接。在这个过程中,我们面临了许多挑战,比如如何高效地生成数独谜题,以及如何实现一个可以即时响应用户输入的系统。我们通过频繁的沟通和代码审查,确保了前后端的紧密配合。
  • 在结对编程中,我学到的不仅仅是技术技能。更重要的,是学会了如何与他人协同工作,如何在不同意见中找到折衷方案,以及在压力中寻找解决问题的最佳路径。这段经历教会了我,在编程中,沟通和理解同样重要,良好的团队协作是高质量项目成果的关键。
  • 项目期间的一个亮点是,我们为了提升数独游戏的趣味性,引入了多种难度等级和计时器的功能。我们也实现了一个即时的错误校验系统,帮助玩家理解他们的错误并从中学习。最终,当我们看到一个完整的数独游戏从空白的页面中诞生,并能够与用户进行交互时,那份成就感和满足感是难以言表的。

现场编程:赛场上的协奏

在现场编程的挑战中,我们的任务是开发一个自动化学生成绩通知程序。这个程序需要具备从Excel导入成绩、生成个性化成绩单和自动发送邮件的功能。面对这一任务,我们团队迅速分工,我负责编写邮件发送模块,确保每位同学能收到包含姓名、学号和成绩的个性化成绩单。通过紧密合作,我们不仅完成了功能实现,还确保了用户界面的直观易用,极大提高了工作效率与成绩通知的准确性。这次现场编程是一次集体智慧和协作精神的体现,更是一场与时间的赛跑,展现了我们作为一个团队共同克服困难、追求卓越的决心。

团队项目:集体智慧的结晶

  • 在这个学期的团队项目中,我们的任务是设计并实现一款名为“Wonderville动物王国之旅”的游戏。这不仅是一个软件工程项目,更是一次创意和技术的盛会,我们团队成员将头脑风暴中的奇思妙想转化为一个真实运行的游戏。

  • 在项目的实施过程中,我和我的团队面临了许多技术和设计挑战。我们首先进行了需求分析,确定了游戏的主要功能和用户故事。接着我们进行了系统设计,包括软件架构、数据库设计以及用户界面的原型。

  • 在开发阶段,我主要负责生存竞赛模式的实现,这要求对游戏物理引擎有深入的理解。同时,我还要确保游戏的性能,使得在web桌面上能流畅运行。

  • 我们通过版本控制工具Git来协同工作,持续集成系统确保了代码质量,而自动化测试则提高了我们的开发效率。我们也采用了cocos 2d来做为我们游戏开发的引擎,确保开发过程的代码规范统一

  • 最终,我们的“Wonderville动物王国之旅”成功上线。看着用户在游戏中享受我们设计的各种竞赛模式,体验速度和智慧的挑战,我们感到无比自豪。从速度竞赛的迷雾之谜到生存竞赛的自然挑战,从得分竞赛的天空之城到团队合作的宝藏争夺,我们的游戏不仅提供了娱乐,也成为了玩家间友谊和竞技精神的一种体现。

  • 这个项目不仅锻炼了我们的技术能力,更让我们学会了如何在团队中相互协作和支持。我们学会了如何在紧迫的项目时间线下工作,如何在变化的需求面前灵活应对。每个团队成员都为这个项目投入了大量的热情和努力,我们之间的沟通和协作成为了项目成功的关键因素。

    总结我的软件工程实践之旅,它是一个既充满挑战也充满乐趣的过程。我不仅在技术上有了质的飞跃,更在团队合作和问题解决上得到了成长。我相信,这些宝贵的经验将成为我职业生涯中坚实的基石
    

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

  • 版本控制:通过使用Git,我学会了在团队中协作编程的艺术。Git的分支管理功能让我们能够在不同的功能上同时工作而不互相干扰,而合并(merge)功能则确保了我们可以轻松地将各自的工作成果集成到主项目中。此外,当我们遇到代码冲突时,Git提供的工具使解决这些问题变得简单。学习Git的过程让我对软件开发有了更深层次的理解,明白了版本控制对于任何规模项目的重要性。
  • 前端框架:在前端开发中,我深入学习了HTMLCSSJavaScript,它们是构建任何web应用的基石。HTML让我能够设计出网页的结构;CSS则负责美化这些网页,让它们在不同设备上保持响应性和美观性;而JavaScript则赋予了网页动态和交互性。这些前端技术的组合让我能够创建出直观、动态且用户友好的界面,它们是我在与用户交互时至关重要的一环。
  • 后端技术:在后端开发方面,我选择了Python语言,因为它的简洁性与强大的后端框架支持。Python对初学者友好,同时它的强大库和框架如Flask和Django支持了快速开发。通过Python,我能够轻松管理数据库交互,实现复杂的服务器逻辑,并且编写自动化脚本来支持开发流程。Python的多样性让我能够在短时间内实现产品的后端服务,同时保持代码的可读性和可维护性。
  • 游戏引擎:在深入学习Cocos2d游戏引擎后,我体会到了可视化编程和即时反馈带来的巨大便利。Cocos2d降低了编写复杂游戏逻辑的难度,使得动画和用户交互的实现变得直观而富有创造性。这个强大的引擎加速了我们开发“Wonderville动物王国之旅”游戏的进程,让我们能够专注于提升游戏玩法的乐趣和吸引力。Cocos2d不仅提升了我的技术栈,还激发了我对游戏开发深层次的热情和兴趣。

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

  • 团队合作:我学会了如何在多样性中寻求共同点。
  • 解决问题:面对bug时,我学会了不慌不忙,一步一个脚印。
  • 时间管理:项目的推进教会了我如何高效分配时间和资源。

未尽之言

这门课程对我未来的选择产生了深远影响,它让我对软件开发有了更深的认识和热爱。我所享受的不仅仅是代码的编写,更是整个创造过程中的每一个环节。最遗憾的,可能是没有更早开始这段学习之旅,导致在课程考试紧凑的学期才开始赶工,在时间管理方面压力较大

致谢篇章:感恩同行者

感谢我的团队成员,你们的智慧和努力是我们项目成功的关键。你们的建议帮助我突破一个个难题。感谢所有给予我支持和鼓励的人,是你们让这个学期变得如此有价值。也感谢老师给予提前磨炼如此多的技术的机会,让我提前了解了aigc技术的强大以及web编程的实现!在学习软件工程的路上,每一个人的帮助和每一次的努力都是我宝贵的回忆。感谢你们陪伴在我旁边,一起走过这段难忘的旅程。我深信,未来无论走向何方,这段经历都会是我宝贵的财富。感谢所有人,因为有你们,我的大学生活更加精彩!

...全文
84 回复 打赏 收藏 转发到动态 举报
AI 作业
写回复
用AI写文章
回复
切换为时间正序
请发表友善的回复…
发表回复

122

社区成员

发帖
与我相关
我的任务
社区描述
2023秋-福州大学软件工程
软件工程 高校
社区管理员
  • fzusdn
  • 篱隙光远
  • Jason_Zhou1
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧