一、关于我:爱游戏也想学好知识的普通学生
大家好,我是一名大三学生,平时最大的爱好是打《CS:GO》,空闲时也会玩《我的世界》(MC)。打《CS:GO》时喜欢和队友配合冲锋,既是无畏的冲锋手也是冷静的狙击手,每次赢下对局都特别有成就感;玩MC时总爱研究怎么用指令搭一些自动装置,比如自动收菜机、红石电梯,虽然经常失败,但摸索的过程还挺有意思的。
说到闪光点,可能就是“不轻易放弃”吧。比如在MC里想做一个复杂的红石电路,哪怕查攻略、试错十几次,也会想办法弄出来。不过在学习上,我确实还有很多不足,很多知识都只懂一点点,甚至完全不会,但我愿意慢慢学,就像研究红石电路那样一点点试错、积累。
因为玩MC时会接触到一些Java指令,比如改游戏参数、简单的插件修改,虽然只是皮毛,但看着自己写的几行代码能让游戏里的东西动起来,突然觉得编程好像没那么遥远,也慢慢对学习相关知识产生了兴趣——希望有一天能自己写个MC插件,那应该会很有成就感。
二、现状、经验和计划
(1)技能树与期待
-
已具备的能力:
- 对电脑基本操作比较熟悉(比如安装软件、调试游戏设置);
- 会用MC里的简单指令,知道Java代码大概是“让程序按规则做事”的东西,但具体语法、逻辑几乎不懂;
- 愿意花时间查资料、问别人,不会因为一开始学不会就放弃。
-
感兴趣的技术方向:
因为MC接触了一点Java,所以对Java编程比较好奇,想知道怎么用代码实现游戏里的各种功能;另外,也想了解怎么把现实中的问题变成像游戏指令一样的“规则”,用代码解决。 -
待补充的能力:
几乎所有专业知识都需要补——比如编程语言的基础语法、逻辑结构,甚至连最基本的代码怎么写、怎么运行都不太清楚;团队协作、项目开发这些更是完全没接触过。
在课程中,我希望能先搞懂“编程到底是怎么回事”,比如一行代码为什么能起作用,怎么一步步写出能跑的程序;实践中想当一个“学习者”的角色,跟着大家慢慢做,多看看别人怎么思考、怎么解决问题,先从模仿和提问开始。
(2)未来规划与准备
目前还没想好几年后具体做什么,但觉得学好编程总是有用的——哪怕以后还想玩游戏,说不定能自己写个小游戏插件呢。现在能做的就是先把眼前的课学好,比如每次学完一点知识,就试着用在MC里,比如用学到的Java基础改个简单的游戏参数,把学习和兴趣结合起来。
优势:因为玩游戏接触过一点相关知识,对学习有天然的兴趣,不会觉得“学这个没用”;愿意花时间动手试,就像试MC指令一样。
劣势:基础太差,很多同学可能已经懂的东西,我要从“什么是变量”“什么是循环”开始学,进度可能会比较慢;有时候玩游戏容易分心,需要更自律一点。
本学期规划:
- 每周至少花2小时看Java基础教程(从“什么是类和对象”开始),边看边在MC里找对应的例子理解;
- 遇到不懂的问题及时记下来,不管是问同学、助教还是查资料,每周至少解决3个小疑问。
(3)代码量与目标
目前代码量:
Java:大概100行(都是从MC教程里抄的,改改参数,自己写的几乎没有);
其他语言:完全没接触过,代码量为0。
听学长说,入职一流的软件或互联网公司,至少需要几万行代码量,而且不是随便写的,得是能解决实际问题的完整项目代码。对我来说这个数字现在还很遥远,但先从“每周多写10行自己能看懂的代码”开始吧。
(4)时间投入与计划
我打算每周拿出10小时用在这门课上(包括上课时间),选择D选项——因为知道自己基础差,前两年确实在学习上投入不够,现在想赶上来,必须比以前花更多时间,哪怕每天少玩一小时游戏,也要把时间用在学习上。
计划课程结束时,能累计写出1000行自己能看懂、能运行的代码(主要是Java),平均每周完成60-70行(从简单的输出语句、循环练习开始,慢慢增加难度)。
WOOP方法规划:
- Wish:课程结束时,能用Java写一个超简单的MC小功能(比如让游戏里的某个物品被捡起时自动提示文字);
- Outcome:如果能实现,就说明自己真的学会了一点东西,以后玩MC时就能更有底气研究复杂功能,甚至能在同学面前“秀”一下自己写的代码,想想就挺开心的;
- Obstacles:最大的障碍是“学不懂就想逃避”——比如看到复杂的语法规则,会觉得“太难了,算了吧”,然后忍不住打开游戏;另外,有时候玩《CS:GO》太投入,会忘了学习计划,导致当天的任务没完成。
- Plan:如果学了半小时还是不懂某个知识点,就立刻暂停,去问同学或助教(提前存好助教的联系方式),不自己硬扛着焦虑;如果晚上7点还没开始学习,就把《CS:GO》客户端关掉,用手机定一个1小时的学习闹钟,闹钟响之前不碰游戏。
认真反馈的选择:C
我知道自己基础差,肯定有很多问题要问,打算一学期至少提3个具体的疑问(比如“为什么这段代码运行会报错”“这个语法和MC指令有什么区别”),每次老师和助教让填反馈,都会认真写——比如哪里没听懂、哪个练习觉得太难,这样老师可能会知道我这种基础差的学生需要什么,也能帮我更好地跟上进度。