猫史档案馆


【编程101】学习编程需要攻克的8个障碍(下)

用户:科普喵科普喵查看:0 回复:6 评论:0 创建时间:2018-07-05T16:16:43


   

emotion_偷乐 接着上周所说的,我们继续看看还有那些障碍需要我们来攻克吧~

 

 

5.你不知道如何处理一个任务

     

      你不知道从哪里开始?你可能会随机地去尝试,或者从其他地方复制一些你自己也不明白的代码。但是,这是没有帮助的。即使你复制来的代码有效也没用。因为当你今后再一次碰到类似的任务,你依然不能解决。

 

      如果你想妥善解决任务,那么首先你得知道你为什么卡壳。下面是一些可能的原因:

 

      (1)没有很好地掌握这些理论知识:

 

 

      如果是上述情况,那么可以去复习理论知识,如果依然摸不着头脑,也可以去找人寻求帮助。

 

      (2)任务太大了,那就分解为一个个小任务。

 

      (3)也有可能是因为你读得太快,忽略了一些你以为熟悉其实似是而非的概念,所以无法理解任务要求。

 

 

 

6.你知道如何解决任务,但解决方案不管用

 

      这是编程中最常见的情况,哪怕是那些经验丰富的资深程序员也是如此。你的解决方案之所以不起作用最大的可能是你的代码中存在着bug。

 

      如何修复?方法是调试代码。这也是作为一个程序员需要学习的最重要的技能之一。这不是可以随便凑合的事,也不是玩幸运猜猜猜游戏。如何寻找bug是有具体步骤的。而且很多书中都有教这个技能。

 

      不幸的是,这是很多新手程序员失去动力选择放弃的难关。很少有课程会说明调试的重要性。如果你不知道如何正确地调试,那么它就是不可战胜无法攻克的难关。

 

      很多人担心会花太多时间用于调试代码。这是正常的,在你第一年的编程规划中这是不可避免的。

 

      甚至,你还得学着去喜欢调试。不妨将此看成是一个机会,一个修复错误提高编程能力的机会。当你解决了一个bug,可以问问自己这个问题:“我为什么会犯这种错误?以后我该如何预防再犯?”

 

      还有一个好主意是将找到的bug写成编程日记,方便你总结和学习。

 

 

 

7.不知道如何接受帮助

 

      当我们在学习代码,或调试代码时,可以咨询很多材料:书籍、课程、教程、导师,开发者社区等等。

 

      在你学习这些资源时最常见的问题是,你并没有完全了解幕后发生了什么事情,也不知道概念是如何融入到更大的蓝图中的。

 

      例如:你在某个问题上花了10小时,最后终于有人提供一个解决方案,你往往会采取“拿来主义”——采纳解决方案之后就直接跳到一个任务中去。千万别这样做!相反:

 

 

      这也是在StackOverflow和谷歌上搜答案的一大缺点:你只知道解决方案,不知道幕后的思考过程。

 

 

 

8.不去应用你学到的理论

 

      这篇文章也是理论知识,除非你能够学以致用,否则它是不会发挥一丝一毫作用的——多多应用,直到它变成潜意思的例行程序。

 

      编程其实就是通过形成良好的习惯来帮助你解决各种问题的过程。

 

 

译文链接:http://www.codeceo.com/article/8-barriers-learn-coding.html

英文原文:8 barriers to overcome when learning to code

翻译作者:码农网 – 王国峰

 

 

 

emotion_偷乐 传送门:【编程101】学习编程需要攻克的8个障碍(上)

  帖子链接:https://www.codemao.cn/community/162611


回复

上一页1 页 / 共 1下一页
苏某苏某

沙发!这些困难真的是常有,这说明我们要学习如何克服困难进行蜕变,飞升上神!emotion_星能猫_ye

点赞0


评论


马铃薯焗土豆马铃薯焗土豆

板凳!!谢谢科普喵总是给我们带来干货!!

点赞0


评论


蘑菇君蘑菇君

emotion_编程猫_哇哦

点赞0


评论


力言菌力言菌

前排                   

点赞0


评论


已退坑已退坑

提醒一下,列表的第一项应该是“第0项”,列表也不叫列表,是数组(C++)

点赞0


评论


ieDuieDu

emotion_编程猫_不懂emotion_编程猫_不懂

点赞0


评论