第一次作业

第一次作业

基本信息

项目 内容
这个作业属于哪个课程 https://edu.cnblogs.com/campus/fzu/202501SoftwareEngineering
这个作业要求在哪里 https://edu.cnblogs.com/campus/fzu/202501SoftwareEngineering/homework/13546
这个作业的目标 创建团队主页、Git和MARKDOWN等基础知识的学习、学习使用AIGC图像生成工具
学号 102301512

团队github主页链接:https://github.com/QishengLiu/unbeatable-grade-hunters
image

我的技能树与学习规划

一、自我评估

1. 已具备的专业知识与能力

  • C/C++编程基础:掌握C/C++语法特性,能够熟练使用相关编译和调试工具
  • 算法与数据结构:掌握常见数据结构及基础算法思想

2. 技术偏好与兴趣方向

  • 希望深入了解软件开发流程。同时想要学习规范的代码管理和项目构建

3. 当前的不足与挑战

  • 项目经验缺乏:尚未参与过完整的软件开发项目
  • 工程实践能力:缺乏将理论知识转化为实际项目的能力
  • 团队协作经验:缺少多人协作开发的实际经验

二、当前水平与学期目标

当前状态

  • 代码量积累:约2000行,主要集中在C++算法练习和编程题目

学期目标

  • 代码量目标:提升至3000行以上,增加项目实战代码
  • 项目目标:完整参与并完成一个小型软件项目的开发全流程
  • 能力目标:掌握基本的团队协作开发技能和项目管理方法

三、学习期望与规划

学习重点

  • 系统学习软件工程完整流程
  • 深入理解Git工作流、代码审查、项目管理
  • 掌握模块化设计、接口设计、代码规范

具体期望

  • 学习并实践小型项目的完整开发流程
  • 掌握团队协作开发工具和方法论
  • 建立规范的编程习惯和工程思维
  • 积累项目经验,为未来职业发展打下基础

四、 软件工程学习指南(由deepseek生成)

阶段一:基础准备(1-2周)

学习目标

  • 建立软件工程基本概念体系
  • 掌握必备的开发工具和环境配置

具体任务

  1. 理论学习

    • 阅读《人月神话》或《代码大全》前几章
    • 了解软件生命周期和开发模型(瀑布、敏捷、迭代)
    • 学习软件工程的基本概念和术语
  2. 工具准备

    • 安装并配置Git,学习基本命令
    • 注册GitHub/GitLab账号
    • 学习Markdown语法并完成练习
    • 配置开发环境(IDE、调试工具)
  3. 实践练习

    • 创建第一个Git仓库
    • 使用Markdown撰写学习笔记
    • 完成简单的"Hello World"项目提交

阶段二:个人项目实践(3-4周)

学习目标

  • 体验完整的个人开发流程
  • 掌握基本的项目规划和设计方法

具体任务

  1. 项目规划

    • 选择一个小型个人项目(如待办事项应用、计算器等)
    • 编写需求文档和功能清单
    • 设计系统架构和模块划分
  2. 开发实践

    • 使用版本控制管理代码
    • 编写清晰的项目README文档
    • 实现基础功能并定期提交
  3. 质量保证

    • 学习编写单元测试
    • 进行代码审查(自我审查)
    • 修复发现的问题和bug

阶段三:团队协作基础(4-5周)

学习目标

  • 掌握团队协作开发的基本流程
  • 学习项目管理工具和方法

具体任务

  1. 协作工具

    • 深入学习Git分支管理和协作流程
    • 学习使用项目管理工具(如Trello、Notion)
    • 掌握Issue跟踪和Pull Request流程
  2. 团队项目启动

    • 参与或组建3-5人开发团队
    • 确定团队项目目标和范围
    • 制定开发计划和任务分配
  3. 开发规范

    • 建立团队编码规范
    • 制定提交信息和文档规范
    • 设置代码审查流程

阶段四:工程化实践(4-6周)

学习目标

  • 掌握软件工程的核心实践方法
  • 建立完整的开发-测试-部署流程

具体任务

  1. 需求分析与设计

    • 学习用户故事和用例编写
    • 进行系统架构设计
    • 创建详细的技术方案文档
  2. 开发与测试

    • 实践测试驱动开发(TDD)
    • 编写集成测试和系统测试
    • 建立持续集成流水线
  3. 部署与维护

    • 学习基本的部署流程
    • 掌握日志记录和监控
    • 进行版本发布管理

阶段五:项目迭代与优化(3-4周)

学习目标

  • 体验敏捷开发迭代过程
  • 学习项目优化和重构技巧

具体任务

  1. 迭代开发

    • 制定2-3个开发迭代周期
    • 每个迭代完成特定功能模块
    • 进行迭代评审和回顾
  2. 代码优化

    • 学习代码重构技巧
    • 进行性能分析和优化
    • 改善代码质量和可维护性
  3. 文档完善

    • 编写用户手册和技术文档
    • 整理项目经验总结
    • 创建项目演示材料

阶段六:总结与提升(2-3周)

学习目标

  • 巩固所学知识体系
  • 规划后续学习方向

具体任务

  1. 知识整理

    • 整理学习笔记和经验总结
    • 创建个人技能图谱
    • 编写学习历程文档
  2. 项目复盘

    • 分析项目成功与不足
    • 总结团队协作经验
    • 提炼工程实践心得
  3. 持续学习规划

    • 确定下一步学习重点
    • 探索感兴趣的细分领域
    • 制定长期学习计划

学习建议

📚 推荐资源

  • 书籍:《代码大全》、《重构》、《设计模式》
  • 在线课程:Coursera软件工程专项、慕课网相关课程
  • 实践平台:GitHub、LeetCode、开源项目

💡 学习技巧

  1. 理论与实践结合:每个概念都要通过实践来巩固
  2. 定期复盘:每周总结学习进展和问题
  3. 主动交流:参与技术社区,与同学讨论
  4. 持续记录:维护学习博客或笔记

🎯 成功标准

  • 能够独立规划和完成小型项目
  • 掌握团队协作开发的基本流程
  • 建立良好的工程习惯和代码规范
  • 具备持续学习和解决问题的能力

记住:软件工程是一门实践性很强的学科,动手实践比理论学习更重要!

五、合理性分析

  • 覆盖了从个人基础到团队协作的完整路径,实践性强。
  • 但时间安排可能过于理想化,未充分考虑学生课业压力。
  • 部分阶段缺乏具体评估标准,对新手小白来说挑战还是有点大啊。整体而言,它提供了明确的学习框架,但需要根据个人情况灵活调整节奏。

image

posted @ 2025-10-05 23:22  ....!?。~  阅读(13)  评论(0)    收藏  举报