软件工程第一周作业
软件工程第一周作业
| 这个作业属于哪个课程 | https://edu.cnblogs.com/campus/gdgy/Class78-Grade2024-CS/ |
|---|---|
| 这个作业要求在哪里 | https://edu.cnblogs.com/campus/gdgy/Class78-Grade2024-CS/homework/15710 |
| 这个作业的目标 | 熟练掌握博客写作规范、完成自我认知复盘、制定软件工程课程学期学习计划、阅读《构建之法》提出高质量问题、借鉴前辈博文总结经验,树立学术诚信底线,养成持续复盘、持续编码、持续输出的学习习惯。 |
一、介绍自己、建博客
我是侯剑锋,广东工业大学计算机科学与技术专业本科生。本次作业我在博客园正式建立个人学习博客,用于记录课程学习、项目实践、读书思考与成长复盘。
通过学习博客写作规范与博客园社区规范,我了解到博客写作需要排版整洁、内容原创、结构清晰、尊重社区规则,不能敷衍灌水、不能抄袭搬运。写博客虽然会花费额外时间,但根据为何坚持写博客的观点,写博客是最高效的学习方式之一:输出倒逼输入,能把模糊的知识变成清晰、体系化的理解,长期坚持差距会非常明显。即使有同学认为写博客无用,我也愿意坚持实践、用结果验证。
很多同学包括我自己以前都会觉得自己没有闪光点,但读完个人优势与成长记录我意识到:每个人都有长期积累的、超越多数人的能力。我的优势是自主检索与独立解决问题的能力。在两年多的大学学习中,我遇到代码报错、知识点不懂,不会坐等老师讲解,而是坚持自己查文档、查博客、对比教程、反复调试,长期积累下来,我的自学能力、耐心、问题排查能力优于普通同学。
同时我深刻牢记作业底线与学术诚信,明确大学作业绝对不能抄袭、不能复制粘贴,所有参考内容必须标注来源,坚守学习底线,对自己的每一份作业负责。
二、现状、经验和计划
(1)专业选择与能力差距
我选择计算机科学与技术专业,是因为我喜欢编程、喜欢通过逻辑与代码实现功能,希望未来从事软件开发相关工作。大学是人一生精力最旺盛、可以全职学习的黄金时期,非常宝贵。
对照合格IT毕业生标准,我目前差距明显:理论多、实践少;看得懂、写不出;会做题、不会做项目。
参考IT学生能力评分表,我选取7项核心能力,自评 0–9 分(5分可面试入职,9分世界一流):
| 技能 | 当前水平 | 结课目标 | 提升方式 |
|---|---|---|---|
| 程序编码能力 | 4 | 6 | 1.每周独立完成课程代码作业;2.额外刷题、写小案例;3.每次bug复盘;4.阅读开源代码;5.博客记录总结 |
| 调试排错能力 | 3 | 6 | 1.记录报错日志;2.主动设计测试用例;3.学习调试技巧;4.向优秀代码学习;5.结对查错 |
| Git / 版本管理 | 3 | 7 | 1.所有代码提交GitHub;2.练习分支、合并、回退;3.规范commit;4.查阅踩坑教程;5.持续实操 |
| 需求分析能力 | 2 | 5 | 1.学习《构建之法》需求章节;2.项目前梳理功能;3.参考真实案例;4.小组讨论拆解需求;5.总结误区 |
| 团队协作能力 | 3 | 6 | 1.积极参与小组项目;2.主动沟通进度;3.学习代码复审;4.复盘协作问题;5.倾听队友意见 |
| 软件工程思维 | 2 | 5 | 1.通读教材;2.梳理完整开发流程;3.对比各类开发模型;4.阅读行业博客;5.结合作业实践 |
| 自我复盘能力 | 4 | 7 | 1.每周写博客复盘;2.整理笔记;3.定期查漏补缺;4.借鉴前辈经验;5.制定小目标落地 |
(2)博客阅读心得
a. 注意力管理心得
阅读注意力文章与学生解读后,我意识到:编程学习极度依赖深度专注。碎片化刷手机、频繁中断会导致学习效率极低,看似学了很久,实际收获很少。未来我会刻意创造整块专注时间,学习时远离手机,提升深度思考能力。
b. 师生关系与作业态度
阅读大学三种师生关系,我体验过传统灌输式教学,最认可教练式师生关系:老师引导、学生主动,双向互动、共同进步。
面对难度较高的作业,我选择 C:向老师和同学请教,花更多时间,把作业全部完成。
我认为作业不是负担,是提升工程能力的唯一途径,越难越值得投入。
c. 引用、借鉴与抄袭的区别
参考学术诚信规范:
- 合理引用/借鉴:站在前人成果上学习、改造、创新,明确标注来源,用于学习与研究,属于正常学术行为。
- 抄袭剽窃:直接复制他人代码、文章、思路,不标注来源,冒充自己原创获取分数,属于严重学术不端。
我会严格遵守课程引用规范、学校处罚规定,绝不触碰红线。
(3)未来发展选择与本学期规划
借鉴众多IT前辈的成长经历,我未来选择:从事软件开发、互联网技术岗位。
优势:自学能力强、愿意吃苦、愿意复盘、不畏惧难题、对编程有热情。
劣势:项目经验匮乏、工程思维不足、代码量不足、偶尔拖延。
本学期规划:
- 坚持每周博客复盘;
- 大量积累实战代码量;
- 熟练掌握Git与团队开发流程;
- 认真完成小组项目,弥补协作短板;
- 戒掉拖延,稳步提升实战能力。
(4)本课程计划与 WOOP 规划
当前代码量:Python 1200行、C语言 800行,总计 2000行。
一流互联网公司入职门槛:有效实战代码 10000行以上。
科研方向:更看重项目与论文,代码量为辅助,但同样需要扎实基础。
每周投入时长:12小时(含上课)
投入等级:D:比以前课要多很多,直到达到目标为止。
课程结束新增代码量:4000行
每周平均新增代码量:330行
WOOP 计划
Wish(愿望)
本学期系统掌握软件工程思想、项目开发流程、版本控制、团队协作,积累足够代码量,摆脱只会做题不会做项目的短板。
Outcome(结果)
学期结束能够独立完成小型软件开发,熟练使用Git,具备基础工程素养,博客拥有完整学习记录,具备初级求职竞争力。
Obstacles(障碍)
容易拖延、容易被手机分心、遇到复杂bug容易浮躁、多课程挤占时间、工程基础薄弱。
最可能失败的因素:自律不足、习惯性拖延,导致任务堆积、目标落空。
Plan(If-Then 应对方案)
- 如果学习时频繁刷手机分心,立刻把手机放到远处,先完成1个最小代码任务再休息;
- 如果bug调试30分钟无进展,停止死磕,整理问题主动请教同学、老师;
- 如果周中进度落后,周末优先补齐软件工程任务,牺牲娱乐时间;
- 如果多课压力大,每天固定1小时本课程学习,保证不断档;
- 如果小组进度滞后,主动牵头沟通、统一任务与截止时间。
三、《构建之法》读书提问与反馈
根据“必要的困难”学习理论,主动发现问题、提前暴露盲区是最高效的学习方式。我通读全书,结合章节内容提出5个高质量问题:
问题1(第3章 软件工程师的成长)
书中介绍PSP个人软件过程,可以精准预估开发时间、提升效率。
但学生零基础、任务陌生,预估时间往往完全不准。
请问:大学生在课程作业中,应该如何简化、适配PSP,让它真正有用而不是形式化记录?
问题2(第6章 敏捷流程)
书中强调敏捷开发需要每日站会、高频迭代、随时沟通。
但学生小组时间碎片化、课表不统一,无法每日开会。
请问:校园项目如何轻量化落地敏捷开发,保留核心优势?
问题3(第8章 需求分析)
书中强调软件需求必须来自真实用户调研。
但课程模拟项目没有真实用户,只能自我脑补需求。
请问:学生模拟项目如何避免自嗨式设计,提升需求合理性?
问题4(第11章 软件测试)
书中介绍全套测试流程,但学生项目时间有限、工期短。
请问:小型课程项目哪些测试必须做、哪些可以舍弃,如何平衡开发速度与代码质量?
问题5(第16章 创新)
书中说学生可以做微创新,但课程项目功能简单、大多是复刻demo。
请问:学生课程项目的创新边界在哪里,如何做出真实有价值的微创新而非伪创新?
课程反馈选择
我选择 D:经常提问题,平时就经常给老师和助教提反馈。
我会主动提问、按时反馈,配合课程迭代,以主动学习的姿态提升自己。
四、前车之鉴:前辈博文感悟(3篇)
感悟1:https://book.douban.com/subject/4006425/discussion/22803961/
文章主题:科班学生看似学了计算机,实则大多没学懂。
读后感悟:
这篇文章非常贴合我的现状。我课本知识看得懂、考试能得分,但动手能力极差。我深刻意识到:计算机是实践学科,听课看书不等于学会。真正的能力来自大量编码、调试和项目实践。未来我会彻底改变学习方式,从重理论转为重实战、重落地,避免成为“纸上谈兵的科班学生”。
感悟2:https://book.douban.com/subject/4006425/discussion/22802960/
文章主题:记录思维快照、持续自省复盘。
读后感悟:
作者坚持记录自己的思考、定期回看成长变化,是我非常欠缺的习惯。我以前学习从来不复盘,学完就忘、错误反复犯。通过这篇文章我明白:复盘才是成长的核心。博客写作就是最好的思维快照,我会坚持每一周记录思考,长期对比自己的进步与不足。
感悟3:https://www.cnblogs.com/geniusalex/p/4928713.html
文章主题:大学基础教育与培训班速成的区别。
读后感悟:
培训班追求快速干活、快速出功能;大学追求底层思维、长期上限。我以前偶尔会觉得基础课枯燥无用,但读完明白:底层基础决定上限。作为在校生,我既要扎实学好基础,又要大量实战编码,兼顾深度与落地能力,避免偏科。
附:
github地址:https://github.com/houjianfeng/houjianfeng

博客编辑页面:


浙公网安备 33010602011771号