task1-环境搭建与认识学习方法.md

This commit is contained in:
Datairon 2023-06-15 00:07:11 +08:00 committed by GitHub
parent b7fbf6c570
commit 75cd48e949
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
1 changed files with 6 additions and 0 deletions

View File

@ -15,21 +15,25 @@
这本书的目的是教会你作为编程新手所需的三种最重要的技能:读和写、注重细节、发现不同。
一、读和写
如果你连打字都不行,那你学习编程也会成问题。尤其如果你连程序源代码中的那些奇怪字符都打不出来,就别提编程了。没有这些基本技能,你将连最基本的软件工作原理都难以学会。
所以,把代码示例打出来并运行,能够帮助你学习各种符号的名称、更熟练地敲出来、以及读懂编程语言。
二、注意细节
区分好程序员和差程序员的一个重要标准就是对细节的注重程度事实上这也是任何行业区分好坏的标准。如果缺乏对工作中每个微小细节的注意你的工作成果将缺乏重要的元素。拿编程来讲主要细节将会让你远离各种bug和难用的系统。
通过这本书的学习,以及准确打出每一个例子,你将能够训练你的大脑,在做练习的时候更多地关注细节。
三、发现不同
程序员长年累月的工作会培养出一个重要技能,那就是对于不同点的区分能力。一个有经验的程序员看到两个仅有细微差别的程序,可以立即指出其中的不同。程序员还造出工具来让这件事更加容易,不过我们不会用到这些工具。你要先用笨办法训练自己,然后再用工具。
在你做这些练习并敲代码的时候你一定会出错。这是不可避免的即使有经验的程序员也会偶尔写错。你的任务是把自己写的东西和要求的正确答案对比把所有的不同点都修正过来。这样做可以让你对程序里的错误、bug 以及其他问题更加敏感。
四、要问,不要盯着看
你只要写代码,就会出现 bug。Bug 意味着你写的代码有瑕疵、有错误、或者有问题。Bug 来源于一个传说从前有一只飞蛾飞进了第一台计算机造成了故障。修复它就需要“debugging”。在软件世界里有着不计其数的 bug。
就像第一只飞蛾,你的 bugs 将会藏在你代码的某处,你必须找到它们。你不能只是坐在电脑前盯着屏幕上的代码,希望答案能自己跳出来。这样做不会有额外的信息,你需要额外的信息来解决问题,所以你得起来寻找这只飞蛾。
@ -37,9 +41,11 @@
怎么寻找呢?你需要审问你的代码,问它现在是怎么回事儿,或者从另一个不同的视角去看待这个问题。在这本书里,我将会频繁地告诉你“别盯着看,要问”。我将会向你演示如何让你的代码告诉你正在发生的一切,并且如何找到可能的解决方案。我还会教你一些从不同角度看代码的方法,让你能够获取更多信息和洞见。
五、不要复制粘贴
你必须手动将每个练习打出来。复制粘贴会让这些练习变得毫无意义。这些习题的目的是训练你的双手和大脑思维,让你有能力读代码、写代码、观察代码。如果你复制粘贴,那你就是在欺骗自己,这些练习的效果也将大打折扣。
六、一个关于坚持练习的忠告
在你通过这本书学习编程时,我正在学习弹吉他。我每天至少练习 2 个小时,至少花一个小时练习音阶、和声、和弦,剩下的时间用来学习音乐理论和歌曲演奏以及训练听力等。有时我一天会花 8 个小时来练习,因为我觉得这是一件有趣的事情。对我来说,重复性练习是学好一样东西最自然而然的方法。并且我深知,要掌握一件事情,只有每天坚持练习。虽然有时候,我整个人状态很差(甚至经常这样),或者觉得实在太难。没关系,坚持尝试,到最后你会发现它越来越简单,并且开始越来越有趣。
在我写《笨办法学 Python》和《笨办法学 Ruby》的过程中我发现了绘画的乐趣。我在自己 39 岁的时候爱上了这门视觉艺术,并且像学习吉他、音乐和编程一样每天花时间学习画画。我收集了相关的教材,并且按照书中所说,每天坚持画,同时专注于享受这种学习过程的乐趣。我完全不是一个艺术家,甚至差得很远,但我现在至少可以说我会画画了。我学习画画的方法就跟我在这本书里教你的一样。如果你把整个问题分解为一个个小练习和课程,并且每天做,你就可以学会几乎所有的东西。如果你专注于细微的进步,并且享受学习过程,你将会从中获益,无论你最后擅长到何种程度。