个人总结:大二学习与项目回顾
个人总结:大二学习与项目回顾
在大二这一年,我主要完成了SpringBoot和Vue项目,跟随课程完成了大事件后台管理系统的开发,并再次之后完成了一项个人的项目 共享益 。
学习了安卓开发内容,最开始的时候 用的是 java开发的安卓项目,再后来学习了 kotlin jetpack compose,学习了怎么实现 安卓的前后端分离。
通过这一年的学习和实践,我参与了多个项目,包括共享益网站、安卓学习记录App和地铁查询系统。以下是我对这一年的总结和反思。
1. 回顾课程计划
第一周的计划与完成情况
在大二开学的第一周,我制定了详细的课程计划,涵盖了Web开发和安卓开发的内容。以下是计划与完成情况的具体数据和例子:
Web开发(SpringBoot和Vue)
计划:完成共享益网站的初步开发,包括用户注册、登录、资源发布等基本功能。
实际完成情况:共享益网站不仅完成了基本功能,还上线了资源搜索、借用和评价功能,用户体验较好。
具体例子:在项目中实现了基于SpringBoot的后端服务和Vue的前端交互,解决了跨域问题,优化了数据库查询和前端加载速度。
安卓开发
计划:学习安卓开发基础,完成一个简单的学习记录App。
实际完成情况:不仅完成了学习记录App,还开发了出差App,学习了安卓开发中的Activity、Fragment、Intent等核心概念。
具体例子:在学习记录App中实现了记录和查看学习进度的功能,在出差App中实现了行程安排和记录功能。
完成程度
总体上,我按计划完成了课程内容,并在实际项目中得到了充分的应用和实践。
2. 回顾《构建之法》的问题与回答
在课程开始时,我快速浏览了《构建之法》并提出了5个问题,以下是这些问题及其回答:
如何有效管理团队项目?
回答:通过项目管理工具(如JIRA、Trello)进行任务分配和进度跟踪,定期进行团队会议和代码评审。
如何确保代码质量?
回答:通过代码审查、单元测试和集成测试等方法,使用静态代码分析工具(如SonarQube)来检测代码中的潜在问题。
如何应对需求变更?
回答:使用敏捷开发方法,进行迭代开发,每个迭代周期内优先处理最重要的需求,同时保持与客户的密切沟通。
如何进行有效的需求分析?
回答:通过用户访谈、问卷调查和竞品分析等方法,深入了解用户需求,使用用例图和用户故事进行需求建模。
如何提升团队沟通效率?
回答:使用协作工具(如Slack、Microsoft Teams)保持团队实时沟通,定期召开站会和项目评审会议,确保信息透明和及时传达。
为什么软件工程课不能回答这些问题?
如果这些问题未能完全回答,可能是因为课程更多关注理论知识,而缺乏具体的实践经验和案例分析。课程中应增加更多的实践环节和真实项目的案例讨论,以帮助学生更好地理解和解决实际问题。
3. 新的问题
在课程学习过程中,又产生了一些新的问题:
如何在大型项目中管理好每个文件的内容和功能?
如何处理团队成员间的技术水平差异,确保项目进度和质量?
如何在项目开发中不拖泥带水?
4. 事后诸葛亮分析的感想
在团队的“事后诸葛亮”分析中,我们反思了项目中的成功与不足。通过这些分析,我有以下新的感想:
成功的关键:团队的协作和沟通是项目成功的关键,技术问题可以通过学习和实践解决,但团队间的默契和协作需要时间和经验的积累。
不足的教训:在项目初期的需求分析和设计阶段,应更加细致和全面,避免在后期出现较大的需求变更和设计调整。
5. 技能提升与收获
技能提升
通过这一年的学习和项目实践,我在以下几个方面有了显著提升:
Web开发:掌握了SpringBoot和Vue的开发技能,能够独立完成全栈开发项目。
安卓开发:熟悉了安卓开发的基础知识,能够开发简单的安卓应用。
团队协作:学会了使用项目管理工具和协作工具,提高了团队沟通和协作效率。
不能用数字衡量的收获
解决问题的能力:在项目中遇到问题时,能够冷静分析,寻找解决方案,不轻易放弃。
时间管理和自律:在繁忙的学业和项目中,合理安排时间,保持高效的工作和学习状态。
团队精神和责任感:在团队项目中,注重团队利益,积极承担责任,共同完成目标。
6. 对课程的意见和建议
一年之后,当我进入职业发展的下一个阶段,回头看这门课,我有以下几点意见和建议:
通过这一年的学习和项目实践,我不仅提高了技术技能,更在解决问题和团队协作方面有了深刻的理解和提升。期待在未来的学习和工作中,能够继续应用和深化这些知识和经验。