| 这个作业属于哪个课程 | https://edu.cnblogs.com/campus/gdgy/Class78-Grade2024-CS |
|---|---|
| 这个作业要求在哪里 | https://edu.cnblogs.com/campus/gdgy/Class78-Grade2024-CS/homework/15710 |
| 这个作业的目标 | 熟悉博客园和github的使用,以及明确自己的学习目标 |
一、介绍自己,建博客
大家好,我是林炳辉。
写博客对我来说意义不是很大,首先要花时间,而且相较于写博客我更倾向于纸质的日记书写记录,纸质记录更随心更方便更能记录当下感受,而且写这些东西的目的我更倾向于是留给以后的我去回首去感受,所以我不是那么喜欢写博客
我从小接触多种运动,足球、羽毛球、乒乓篮球什么都玩,最擅长篮球。
二、现状、经验和计划
(1) IT技能差距与提升规划
| 技能项目 | 当前水平(0‑9) | 课程结束目标水平(0‑9) | 提升手段 |
|---|---|---|---|
| Java后端编程开发 | 3 | 6 | 1.完成课程布置的所有编程作业;2.每周额外刷2道算法题;3.利用B站优质教程补充知识点;4.在GitHub上传自己练习项目;5.和同学组队做小型项目实战 |
| 数据库MySQL、Redis | 3 | 6 | 1.完成课后实验;2.自学Redis基础教程;3.搭建本地数据库练习环境;4.阅读数据库优化相关博客;5.尝试在小项目当中使用缓存 |
| 软件项目需求分析 | 4 | 5 | 1.课堂认真学习《构建之法》案例;2.小组讨论项目需求;3.参考网上成熟项目需求文档;4.练习撰写简单需求规格说明书;5.主动参与小组项目前期讨论 |
| Git & GitHub版本控制 | 3 | 6 | 1.跟着教程练习提交、分支、合并操作;2.所有课程代码托管到GitHub仓库;3.阅读官方文档;4.和同学协作练习简单项目;5.定期整理代码仓库 |
| 团队沟通协作能力 | 4 | 7 | 1.小组作业主动承担任务;2.积极参加小组会议发言;3.学习敏捷开发当中团队协作知识;4.主动听取队友的意见;5.复盘每次团队合作当中出现的问题 |
| 软件测试与调试排错 | 3 | 5 | 1.写完代码主动进行自测;2.记录自己遇到过的Bug以及解决方案;3.学习断点调试技巧;4.阅读软件测试章节;5.互相测试队友代码 |
| 文档撰写能力 | 3 | 6 | 1.每次项目配套书写说明文档;2.坚持写博客输出学习笔记;3.参考优秀开源项目的README文档;4.写完文档通读自查逻辑;5.学习Markdown排版技巧 |
(2) 阅读心得
a)专注力文章心得
读完关于注意力的博客文章,我意识到在大学学习当中碎片化学习很难带来深度的提升。刷短视频、频繁切换软件会不断分散我们的专注力。编程学习需要长时间深度思考,一旦思路被打断,就要花费大量时间重新找回状态。往后写代码、完成作业的时候,我会提前把手机放到一边,预留出整块不被打扰的学习时间,培养深度专注的习惯。
b)师生关系问题心得
老师并不只是单纯灌输知识点,更多时候起到引导、督促、答疑的作用,学习最终的成果还是取决于学生自身付出多少努力。
对于作业难度问题,我的选择是 C:向老师和同学请教,花更多时间,把作业全部完成。
如果作业难度超出当下的能力,直接放弃或者消极对抗都无法让自己得到成长。困难的作业正是提升自己能力最好的机会,遇到卡点先独立调试思考,长时间无法解决就主动求助,啃下难题之后专业能力才会进步。
c)引用文献与抄袭剽窃的区别
引用、参考别人资料,和抄袭剽窃有着本质区别:
- 合理引用:借鉴他人思路,在文章中标明原文出处,自己独立完成剩下的内容;
- 抄袭剽窃:直接照搬别人文字、代码,不标注来源,当做自己原创成果提交。
在之后的课程作业、博客写作当中,如果参考了别人的资料、代码,我一定会标明来源,坚守学术诚信底线。
(3)毕业后发展方向规划
现阶段我的目标方向:走软件开发工程师(Java后端) 的就业路线,毕业后进入互联网企业从事后端开发工作。
- 自身优势:已经有一定Java基础,擅长利用工具协助开发。
- 自身劣势:实战项目经验偏少,软件工程项目开发流程不熟悉,团队协作开发经验不足。
本学期规划:
课余自学Redis、SpringBoot等后端技术栈;
(4)本课程学习计划
当前代码量统计
Java:4000行;MySQL:100行;其他语言:;1000行总代码量约 5100行。
我计划每周投入12个小时在这门课程当中(包含上课时间)。
面对追赶进度的选择,我选择:D:比以前课要多很多,直到达到目标为止。
课程结束计划新增代码量:3000行;平均每周完成 200‑250 行实战代码。
WOOP计划
- Wish(愿望):本学期学好软件工程课程,熟练掌握团队项目开发完整流程,课程取得优秀成绩。
- Outcome(结果):学期结束能够独立完成小型团队软件项目,熟练使用Git协作开发,拥有一份完整的课程博客学习记录,软件工程知识体系成型。
- Obstacles(障碍)
- 内部障碍:自律不足,学习途中容易被手机短视频分散注意力;遇到难的代码问题容易产生畏难情绪;时间规划不合理,拖延到截止日前才赶作业。
- 外部障碍:其他专业课任务繁重,挤压软件工程的学习时间;组队之后队友进度不一致。
- Plan(If‑Then应对方案)
- 如果学习的时候忍不住刷手机,那么立刻把手机放到舍友那里,专注完成当前任务;
- 如果碰到复杂代码难题,产生畏难情绪,那就先拆解任务,分成一个个小目标逐个攻克,2小时还解决不了再主动求助同学老师;
- 如果发现作业快要拖延,那么立刻在日历上设置分阶段截止提醒,拒绝最后赶工;
- 如果其他课程作业太多挤占本课程时间,那么提前做好一周时间规划,优先保证软件工程每周固定学习时长;
- 如果小组队友进度不一致,那么主动提前开会对齐项目进度,做好分工沟通。
三、提有质量的问题, 给认真的反馈
快速阅读完《构建之法》之后,我提出5个问题:
问题1(第2章 个人能力和流程)
书中提到工程师的成长分为多个阶段,从初级、高级到大师。但是在校园学习当中,我们很少有机会接触到工业级大型项目。我的问题是,在校学生没有大型项目经验的情况下,如何高效的完成从初级工程师阶段的跨越?
问题2(第5章 团队和流程)
书中介绍了敏捷开发、瀑布开发等多种团队开发模式。我们学生小组项目人数一般只有3‑5人,规模很小。请问对于3‑5人的课程小组项目,优先选择哪一种开发模式最合适?
问题3(第8章 需求分析)
书中提到很多软件失败来源于需求没有分析清楚。学生做课程项目的时候,客户往往就是老师,需求比较简单固定。那么我们在校园课程项目中该如何模拟真实企业里面复杂多变的用户需求场景?
问题4(第11章 软件测试)
书中强调软件测试非常重要。但是学生写代码的时候,经常写完功能就直接提交,很少主动写测试用例。是什么原因造成程序员容易忽略自测?我们在课程项目当中,应该分配多少时间用于软件测试?
问题5(第16章 创新)
书中讲解了多种软件创新的模式。对于在校计算机学生,在没有充足资金、资源的前提下,低成本开展软件创新项目有哪些可行的方向?
课程反馈选择
我选择:C:有问题就问,至少一学期提三个问题, 认真按时填写反馈。
理由:问题我更习惯于自己解决,真的不会再问
四、前车之鉴
阅读感想一(文章A)
文章链接:https://book.douban.com/subject/4006425/discussion/22803733/
文章内容:将每日任务按照ABCD四象限分类:A‑紧迫且重要;B‑重要不紧迫;C‑紧迫不重要;D‑不重要不紧迫。
读完这篇文章我深有感触。我过去经常优先完成紧急的事情,而忽略了重要但是不紧迫的长期任务,比如长期学习、写博客、练习代码。软件工程学习就属于B类任务,短期内不做不会立刻有后果,但是长期放弃就会和别人拉开巨大差距。今后我也准备尝试四象限时间管理法,优先保障长期学习任务的时间,避免临时抱佛脚。
阅读感想二(文章E)
文章链接:https://www.cnblogs.com/geniusalex/p/4928713.html
文章主题:速成培训班和大学基础教育的区别。
读完文章,我明白了大学计算机基础课程并不是无用的。培训班偏向速成教会工具,而大学开设操作系统、计算机网络这类基础课程,目的是构建底层知识体系。短期看速成培训班见效更快,但是长远发展,深厚的基础知识才是程序员不断进阶的基石。往后我会更加重视计算机底层基础学科的学习,而不是只追求速成上手框架。
博客园截图

GitHub

浙公网安备 33010602011771号