趣文网 > 作文大全

学习编程时要克服的7个障碍

2021-01-01 00:35:01
相关推荐

目的不明确

在探究障碍之前,我想说明一下您的动机在学习过程中的重要性。不要仅仅为了编程而学习编程,或者因为听说过它很酷而且很划算,所以不要学习编程。

这样做是因为您想解决自己的问题。自动化并改善您的生活。构建一个可以帮助人们的应用程序。

如果您只喜欢编程并希望退出该行业,那么您可能会强烈希望放弃编程。当事情变得非常艰难而学习经历变得痛苦时,通常会发生这种情况。然后,您会对自己说,您不再喜欢编程,该编程不适合您,或者您不是天生就是一名程序员。

因此,您应该考虑为完成项目设定目标。如果您正在考虑一个项目,或者想解决一个更高的问题,您可以对自己说:“目前这可能不是一种令人愉快的体验,但是我真的想解决这个更大的问题,所以我将继续推动自己并克服这一障碍。”

纠结学习什么

很多人问:“我应该首先学习哪种编程语言?”。之所以存在此问题,是因为他们不知道为什么要学习编码。

一旦确定了要从事的项目,就很容易弄清楚以哪种编程语言开始:

如果要构建iOS应用,请使用Objective C或Swift。如果要构建Android应用程序,请使用Java或Kotlin。如果要构建Web应用程序,请使用JavaScript。如今,您实际上可以使用JavaScript来构建任何类型的项目,从简单的Web和移动应用程序到高级硬件项目。人们在大多数行业中使用它,例如:音乐,医疗,游戏,时尚。

如果仍然不确定要选择哪种语言,甚至可以向程序员寻求建议。一旦知道了要构建的项目,程序员就可以轻松推荐一种技术供您使用。

还请记住,语言是一通百通的,你可以轻松从一门语言转移到其他语言。

不去思考地编码

最好的情况是您解决了任务并且工作正常。然后人们通常会开始处理下一个任务。如果这样做,您将浪费学习的机会。

我鼓励您用以下问题挑战自己:

我的代码可能会失败吗?即使现在没有失败,是否有任何应用程序状态可能导致其中断?我的代码够干净吗?对于其他开发人员,甚至对我自己,是否容易理解和更改?将来,您可能需要解决此代码中的隐藏问题,或根据其他产品规格对其进行更改。我的方法是最好的方法吗?我还可以使用其他替代方法?每个替代方案的优缺点是什么?值得以其他方式解决任务吗?该模块如何与其他模块交互?它会以一种不好的方式影响他们中的任何一个吗?可以容易地被其他模块使用吗?

你不知道如何完成任务

你不知道从哪里开始吗?您可能会想尝试随机的东西,或者从您不理解的其他地方复制代码。但这没有帮助。即使您复制有效的代码也不行。因为将来您将要执行类似的任务时,您也将无法解决该任务。

如果要正确解决任务,则必须首先确定为什么会卡住。以下是一些可能的原因:

您不太了解该理论:语言语法库或API的工作方式,或特定方法或类的工作方式编程范例(例如:异步编程)系统的工作方式(例如:HTTP请求是Web开发中必须了解的关键内容)在这种情况下,只要再读一遍该理论,或者在仍然没有意义的情况下找人向您解释。

任务太大,需要分解成较小的任务。您不明白任务在问什么,因为您读得太快并且忽略了看起来很熟悉但实际上并不熟悉的概念。不知道如何调试

这是编程中最常见的问题。即使对于具有多年经验的程序员也是如此。解决方案不起作用的原因很可能是代码中的错误。

您如何解决?通过调试代码。这是您作为程序员可以学习的最重要的技能之一。这不是您随便做的事情,也不是靠幸运的猜测做的事情。您可以采取特定的步骤来查找代码中的错误。有整本书专门教这个技能。

不幸的是,这是许多新程序员失去动力并放弃的地方。很少有课程解释调试的重要性。如果您不知道如何正确执行操作,那么它似乎势不可挡。

许多人担心他们花太多时间调试代码。这很正常,在编程的头几年,您必须为此做好准备。

更好的是,您需要学习如何喜欢调试。将其视为解决您的误解并提高编程能力的机会。每当您解决错误时,都要问自己一个问题:“为什么我首先犯了这个错误?我如何防止自己将来出现这种情况?”。

保留编程日志是一个好主意,您可以在其中写下所有发现的错误。您将快速看到模式并从中学习。

不知道如何获取帮助

在学习编码或调试代码时,您将查阅许多材料:书籍,课程,教程,导师,开发人员社区。

例如:在您花了10个小时解决问题后,最后有人为您提供了解决方案后,很容易采用该解决方案,庆祝并跳到下一个任务。不要那样做!相反,您需要进行一些元认知:

考虑一下您以前的思考过程。问问自己自己做错了什么,以及可以做得更好的特定解决方案。请对方告诉您他们自己的思考过程。她/他如何解决的?从中学到东西,下次自己应用。您无法找出人们如何提出解决方案。您只能采取解决方案,并希望能理解它们。但是您永远不会知道这些解决方案背后的思考过程。

理论和实践无法结合

一旦选择了一个技术栈,就很容易上手并学习理论。互联网上有大量的免费和付费课程。

我们的大多数学生实际上都了解该理论,并且可以解释某些代码是如何工作的。该理论只是一组有限的概念。如果他/她真的愿意,任何人都可以在几天内记住它。那是什么问题呢?

学生面临的最大问题实际上是将理论应用于解决问题和编写新代码。这意味着差距实际上是技能差距。

比如游泳,你可以阅读关于技术的各种信息,并且可以像专业教练一样向某人解释它。但是应用这一理论需要大量的实践,努力和错误,否则下水后你只会喝水。

我知道很多人看了很多编程书籍,也看了很多网上的教程,但是依然写不好代码,那就是他们眼高手低,写基本的代码都能bug百出。我们一定要养成用键盘思考的习惯,才思泉涌,代码行云流水,需要的是不断地实践。

最后送上我最喜欢的一句话,实践是检验真理的唯一标准。

阅读剩余内容
网友评论
相关内容
延伸阅读
小编推荐

大家都在看

关于公园的作文 一处风景作文 母爱作文开头 作文200字四年级 中考作文800字 600字满分作文 人生作文500字 校园美景作文 煮饭作文 风景的作文600字 优秀作文写景 介绍自己的作文英语 难忘的事情作文 什么是作文素材 作文 我的书包 作文幸福400字 小作文是什么 350个字的作文 坚持作文结尾 写叙事的作文 四年级200字作文 英语作文感谢信 中国历史作文 介绍学校的作文 新朋友作文 校园青春作文 我的一生作文 冬天600字作文 一直都在作文 坚持作文开头