软件工程实践寒假作业

222100308向至尚 2024-02-12 12:25:07
这个作业属于哪个课程福州大学-202302软件工程实践
这个作业要求在哪里软件工程实践寒假作业
这个作业的目标学习markdown语法 学习git 阅读《构建之法》回首过去 立足当下 展望未来 学习路线
其他参考文献markdown教程 git教程 xmind学习

目录

  • 1.准备工作
  • 2.回首过去
  • 2.1 当初为何选择软件工程专业
  • 2.2 当初对软件工程这个专业的期待和想象是什么?
  • 2.3 当初希望自己是如何投入这个专业的学习的?曾经做过什么准备,或者立下过什么FLAG吗?
  • 3.立足当下
  • 4.展望未来
  • 4.1 阅读《构建之法》以及构建之法社区中前人提出的问题后针对部分问题的思考
  • 4.2 你未来的职业规划是什么?
  • 4.3 对于软件工程实践课程,你有什么理解和期望
  • a. 你希望通过软件工程课程学习到什么技术
  • b. 你对老师助教有什么期待?
  • 5.学习路线
  • 5.1 技术路线
  • 5.2 学习规划

1.准备工作

git 指令截图:

img

github仓库截图:

img

github仓库:github

2.回首过去

2.1 当初为何选择软件工程专业

当时高考成绩出来后结合亲戚朋友以及自己的调研,决定从几个比较热门的专业中进行选择 ,比如电气、集成电路和计算机,最后决定选择计算机,但是成绩刚好卡的进不去计算机类,于是就只能来到软件工程专业这一个比较接近计算机类的专业。

2.2 当初对软件工程这个专业的期待和想象是什么?

选报志愿时看了几个对于软件工程专业的介绍,当时刚好正值互联网最后的热潮,觉得这个专业可以学到很多关于编程的知识,学会如何开发软件,独立制作自己的软件或者应用。

2.3 当初希望自己是如何投入这个专业的学习的?曾经做过什么准备,或者立下过什么FLAG吗?

最早的时候当然想着认真学习开发技术,在完成课业的基础上多进行一些项目的开发实践,毕竟这个专业实践的重要性不言而喻,于是在大一的时候我就积极加入了许多的社团或者实验室,争取能够多学技术知识,大一时候的flag便是争取大四毕业能去一个互联网大厂。

3.立足当下

个人介绍
昵称eric
居住地福建泉州
出生年月2003年5月
头像
兴趣爱好书法、篮球、听音乐
联系方式1848968225@qq.com
成果和获奖经历时间
福州大学综合奖学金一等奖2023年9月
美国大学生数学建模大赛h奖2023年5月
中国大学生服务外包与软件创新大赛三等奖2023年6月
专业水平
编程语言c、c++、java、python
技术框架springboot、yii2、flask
开发软件IntelliJ IDEA、pycharm、Visual Studio Code、Visual Studio、postman、datagrip
累计代码量15k~
项目经历
“帐小秘”财务管理助手
项目简介:一款集成多功能、智能化、人性化的智能记账软件
负责任务:语音识别和消费分析的ai接口实现
具体介绍:我在这个项目中能够主要作为AI工程师,负责ai接口的开发,我结合了百度提供的语音识别接口和开源的nlp模型实现了语音识别自动生成账本的功能,同时我使用了开源大模型和一些机器学习方法实现了对消费数据的简单分析。
获得成果:中国大学生服务外包与软件创新大赛三等奖
线上商城购物系统
项目简介:一个支持多角色的线上商城购物系统
负责任务:后端接口的开发
具体介绍:我在这个项目中主要作为后端工程师,使用springboot框架构建后端接口,同时运用了mybatis-plus、redis等框架简化开发,丰富功能,该商城支持多种角色使用,买家可以进行购物充值等行为,卖家可以进行上架商品,补充库存和获得收益等操作,同时加入管理员系统对该平台进行一些商品审核,反馈使用等功能
获得成果:数据库实践课程满绩4.0
博客系统
项目简介:前后台博客管理系统
负责任务:全栈开发
具体介绍:博客管理系统采用了yii2作为主要开发框架,以php为主要开发语言。通过结合css、javascript、以及bootstrap5等相关技术,充分利用了yii2的MVC开发范式开发而成。在前端方面,充分利用了bootstrap5的快速构建页面的优势,为用户提供了流畅且友好的界面体验。同时,通过composer工具,我们成功完成了多个小组件的构建,包括文件上传和dashboard等功能。这些组件的整合使得系统功能更加完善,用户可以更轻松地管理博客内容。
获得成果:web程序实践课程满绩4.0

4.展望未来

4.1 阅读《构建之法》以及构建之法社区中前人提出的问题后针对部分问题的思考

q1 如何区分一个好的程序员和不好的程序员呢?

我认为一个好的程序员应该具备以下维度的能力:

  • 独到的分析问题能力:对于一些问题需求能否找出与一般解不同的独特解法,或者能否挖掘到一些潜在的需求,最近看到的比较有创意的一个创新点,方仔照相馆,其核心就是将客户上传的人像照片通过ai处理成为卡通形象,然后通过3d打印等方式构建积木,充分体现了客制化个性化的流行需求。
  • 过硬的专业知识:计算机技术可谓是二十一世纪更新迭代最快的学科之一,前几年还在“独立”写代码,现在通过chatgpt、copilot等ai工具实现了快速编程,这也一定程度上淘汰了一些CRUD工程师,这更说明掌握计算机底层知识,拥有过硬的专业知识才能不被时代淘汰。
  • 强大的心理素质:开发软件的过程可以说是一场磨练,编写代码时的各种报错,与人合作时的意见不一,测试阶段的环境差异,这些问题都需要强大的心理素质来克服,能否保持稳定的心态直到产品上线是一个优秀程序员的必备素质。

q2 对于一名工程师而言,究竟应该是更”专“一点好,还是更”广“一点好呢?

我认为“广”一点更好,广泛学习能够让我全面理解多个领域,能够更容易地适应新的工作和项目;同样的由于互联网的风口随时都在变化,几年前只会前端三件套就能找到不错的前端工作,现在前端工程师也要学会一些后端的框架技术,只有不断学习扩宽知识面,获得较深的技术栈,未来发展才不会被拘束。

q3 单元测试应该在什么时候开始做?

我认为单元测试应该在每一个完整功能模块完成后进行测试,比如完成了用户注册登录功能后进行测试,完成一个子模块的增删查改后进行测试,最好的方式是多构建测试类,比如java中的JUnit测试

q4 在团队项目中,是选择有利于自身成长、最具挑战性的工作;还是有利于团队、有把握的完成的工作?

我认为应该选择有利于团队的工作,因为团队项目首先应该是建立在团队的基础上,要照顾到团队中大部分人的技术水平,可以先集中力量完成这些有把握的工作,如果时间允许,再去原有项目基础上进行有挑战性的优化工作。

q5 在项目或程序比较复杂的情况下,如何高效率的进行程序理解?

我认为在面对一个复杂项目时首先去理解他的输入输出,输入输出说明了这个项目的作用是什么,先去看一个项目的入口参数(比如python中的main),再从入口参数的调用方法栈一步一步往内部延伸,多使用调试工具,比如c++的gdb调试,在对一个项目有一定理解的时候可以多看看这个项目所用到技术的doc,一般成熟的技术都有自己的tutorial,可以从他们开始入手。

4.2 你未来的职业规划是什么?

短时间的未来规划是通过考研\保研去到一个研究生院继续深造,经过一段时间的摸索,我发现我并不适合作为一个纯粹的前后端工程师,因此我首先想通过继续学习来获得更多的知识;长时间的规划就是通过不断的学习使自己脱离“低级软件工程师”,能够在这个行业有一定的管理能力和小小的话语权。

4.3 对于软件工程实践课程,你有什么理解和期望

a. 你希望通过软件工程课程学习到什么技术

我希望在实践课上可以针对后端方向进行更为深刻的研究,更加熟练的掌握springboot、mybatis-plus、redis等技术的细节,同时学习一些服务端的框架知识,比如springcloud云原生、中间件等知识。同时在与前端合作的过程中也能够了解前端的一些具体技术。

b. 你对老师助教有什么期待?

我希望老师助教可以多介绍一些前沿的技术知识以及一些实用的开发技巧。

5.学习路线

5.1 技术路线

img

5.2 学习规划

img

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

118

社区成员

发帖
与我相关
我的任务
社区描述
FZU-SE
软件工程 高校
社区管理员
  • LinQF39
  • 助教-吴可仪
  • 一杯时间
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

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