软工实践个人总结
一、基本情况
(1.1)请回望第一次作业,你对于软件工程课程的想象
对比开篇博客你对课程目标和期待,“希望通过实践锻炼,增强计算机专业的能力和就业竞争力”,对比目前的所学所练所得,在哪些方面达到了你的期待和目标,哪些方面还存在哪些不足,为什么?
对比第一次博客中加强自己的编程能力这方面,非常显然,在柯老师布置的个人、结对、团队三大编程实践的磨炼下,是很难不提升的。但是抽身出来来看,虽然表面上看到的是对编程能力的提升,但是更多、也是更为重要的应该是对整个项目的分析、理解以及解决的信心这些方面有了不同。放在以前,也不用很久,就放在大二让我看到诸如结对编程这样的一个项目要让我来完成,大二时的我是完全没有可能做出来的。软工实践这门课神奇的地方便在于它能激发每个人的潜能。当然,计算机专业的能力和就业竞争力方面还是有所不足的,结对编程虽然尽力完成了,但是成果仍然存在很多的缺陷。在结对编程中我完成的ai算法拿不出台面,希望以后自己能够继续保持着一个学习的状态。
(1.2)总结这门课程的实践总结和给你带来的提升:
在软工实践课程当中我编写了1793行代码。
软工实践的各次作业分别花费的时间:
作业 | 花费时间(分钟) | |
---|---|---|
1-2 | 个人编程作业 | 2425 |
3 | 结对编程作业 | 3300 |
4 | 团队介绍与选题报告 | 240 |
5 | 团队需求分析报告 | 200 |
6 | 团队项目之现场编程 | 180 |
7-13 | Alpha冲刺(含总结) | 1500 |
14-19 | Beta冲刺(含总结) | 950 |
讲述令你印象最深刻一次作业?为什么这次作业令你影响深刻?
还得是结对编程。结对作业和个人编程差很多,个人编程靠着已有的一些python编程基础可以比较好的实现,然而结对编程作业就涉及到了很多新技术,都要从头开始学起,主要的时间都花费在了学习新的技术上,导致在最后的优化和调试上都没有什么时间进行。最令人印象深刻的原因就是因为结对编程和队友熬了几个大夜,这样共同协作做出一个项目的体验还是大学里第一次。
在软件工程课程上花费的时间(预计花费时间参考:同时贴出开篇博客“你打算平均每周拿出多少个小时用在这门课上”的回答)
累计时间 | 实际周均时间 | 预计周均时间 |
---|---|---|
117 | 9 | 7 |
介绍学习到的新技术或生产力工具以及它们给你带来了哪方面的作用?
- 墨刀-结对编程的原型设计。
- auto.js-安卓系统自动化脚本编写
- 前端知识-JavaScript知识,设计前端
- python-在团队编程中爬取数据的主力,也是三个作业下来所用的工具(python我的超人)
- 最后也学习到了利用typora编写markdown文档
其他方面的提升
1·做出项目的信心
2·做好计划很重要!!
二、总结与收获
1·个人编程:
这次的个人编程作业对于我来说难度还是很大的,我感觉我的编程基础较为薄弱,所以在一开始尝试使用常用的DFA算法时频频出错,最后改成使用AC自动机也来不及完成,只能使用万能的python的库来完成这个作业,在开始做之前我想过会花很多时间来完成这个作业,但是完全没有想到会花这么长的时间,期间经历了很多次的绝望和失望,还好最后勉强得到了一个可以上交的结果,这次作业虽然非常的让人痛苦,其中在写对敏感词库的拓展时也不知掉了多少烦恼丝,但是我相信现在的痛苦能给我带来更多的收获,也同时让我学习到了对python中各种库多种多样的功能的使用,学到了python的强大!同时也学习了性能测试的方法,虽然由于时间关系对于性能改进的思路没有付诸实践,也进行了一些测试。
2·结对编程:
结对作业对于我们两个非cs专业的学生来说,真是难度较大,毕竟作为大数据的学生coding经验和能力相比于计算机的同学还是比较欠缺的。这次实践和队友一开始准备学一些javascript的知识,无奈由于其他课程的无数个ddl扑面而来也没能腾出时间将这方面技术学习到一个足够开发出猪尾巴的水平,这也导致了一开始用js基础写的部分内容直接作废了。商量过后只能回归到python用pygame来开发,这下时间就较为紧迫了,这也是一开始计划指定不够具体导致的。到最后只能做出一个比较粗糙的前端和ai出来,最后赶工做出来了人机对战和人人对战,在线对战来不及实现了,后续会找时间把他做完的。最后还是得到了一个不尽如人意的结果吧。这也启发我接下来还是得努力学习一些其他方面的技术,防止以后像这次一样。一开始对新技术的学习还是不够上心,觉得自己能用python写一些东西出来就够了,结果现实给了我狠狠的一巴掌,希望自己可以牢记这次的教训,下次不要以ddl作为驱动力了,一接到任务就开始学习相应的技术。不得不说,选择了柯老师的软工实践虽然是痛苦,但是可以让我实实在在的认识到自己的不足,希望这次结对结束后自己可以更加努力地提升自己的能力吧
3·团队编程:
既然是团队编程,就要多些讨论,听取大家的意见。在团队编程中我主要是负责数据爬取的部分,锻炼了自己的爬虫能力,也做了一些数据分析的工作,学习了pyecharts的知识。
三、致谢
这学期下来,你最感谢的人是谁?有什么话想要对TA说呢?
最想感谢的是结对编程队友,我们两个的编程能力都不是很扎实,却非常相信彼此。在完成结对作业时处处碰壁也没有互相埋怨,两个人一起携手解决了很多困难,熬了几个大夜。最后虽然结果并比不上其他同学做出的那么完美,但已经是我们两个共同奋斗出的心血。
其次还要感谢团队编程的组长,我可以深刻的感觉到我们团队的明确分工,在完成团队项目的过程中也一直在和我们进行沟通,照顾到大家各方面的感受,是一个非常优秀的组长。