Skip to content

生存指南

第一门编程课的职责是学会用 API 把内心所想用代码表达出来并且爱上编程. 从游戏、数值计算、符号求解到深度学习,“编程” 是改变世界的力量。

在这个系列里面我们指出很大一部分内心看上去困难, 实际上却是由一些简单的东西构成的.

困难的东西总是存在简单的解释. – Yanyan Jiang

当然, 要操纵好这些内容相当地不容易: 有些内容小的时候还能随便糊弄一下; 一旦规模大起来, 无论如何都很难办了. 我们尽量从小的, 人类能理解的问题开始, 通过合理的抽象, 解决看上去难以解决的问题.

我们特别指出: 来学习信息竞赛并不是编程的全部 – 甚至不能算是计算机系的编程要求的入门. 所以, 更重要的是搞清楚怎么解决问题 – 弄清楚问题的来龙去脉, 为什么想到这个问题(解答), 以及有哪些有趣的现象. 有了这些实际的基础, 将来入门计算机科学会容易许多.

如果你还没有准备好, 想要逃避, 这是很正常的. 不必感到恐慌.

可以理解, “放弃” 是面对困难时的本能行为… 教育的根本目不仅是通过外力 “逼迫” 大家成长, 更重要的是教大家如何在面对困难时使用正确的思路解决. – Yanyan Jiang

实际上, 迈出第一步最重要的,莫过于坚信所有的问题都能得到满意的解答,然后去花时间理解其中的来龙去脉。如果你感到恐惧,请记住:坚持住,进入未知领域,从简单的、能理解的东西试起,投入时间,就有收获。

同样,你可能会对一小段程序 (例如课堂上的示例代码) 感到难以理解。程序难读是很正常的——但程序的运行时状态是好理解的。无非就是数字和指针嘛。请你勇敢地打开你的调试器,设置一个断点,单步执行你的程序。不知道怎么调试?调试的时候没有代码?做好阅读互联网资料的准备,也准备好你身边的 AI 助手,然后现在就开始吧!