围绕编程艺术存在许多误解和神话。 许多人认为这只是为有才华的人提供的工作。 过程,有条不紊,回报丰厚,光荣。 仅适合极客或数学倾向的职业,以及不能容忍错误的职业。
在这篇文章中,我们将调试,探索和修复关于成为程序员的误解,对于那些想知道编程是否是他们的职业道路的人来说,这也许可以缓解他们的困扰 。 如果您还有其他神话要添加到列表中,请在下面的评论部分中为它们命名。
1.我必须精通数学才能学习编程语言
人们混淆了数学和程序设计之间的关系,因为他们想要一个明确的答案是“是”或“否”。 实际上,答案更多是针对“它取决于,但大多数情况下不是”。 作为程序员,我们将大部分时间都花在编写代码上,而不是在数学公式上 ,您在数学方面的知识与您的编程技能并不成正比 。
不要误会我的意思, 我们仍然需要基本的代数,但这是基本的,而且,这只是代数。 此外,还有库和插件 ,您可以将它们直接应用于代码中,以帮助您解决数学和算法问题。
![数学的厄运](https://i-blog.csdnimg.cn/blog_migrate/4eb79bf9ebf5a1917a7c590455047886.png)
![数学的厄运](https://i-blog.csdnimg.cn/blog_migrate/4eb79bf9ebf5a1917a7c590455047886.png)
但是,如果您要创建需要高级数学计算或物理学或计算机图形学的知识 ,则肯定需要掌握一些数学知识(但不必担心,该行业中已经有大量的物理学和图形学解决方案)。
2.我必须是一个天才(智商为160)
智商是160还是90都不重要,编程与生物学因素无关,但与您的兴趣有关 。 如果您已经通过测试来确定您的IQ得分,则要知道仅凭测试得分来识别您喜欢做什么或获得多大的收获就没什么用。
我不是MENSA成员,但是我有4年的编程经验,并且我之所以可以编程,是因为我不介意反复失败,也不会从错误中学习 ,这基本上是程序员无论如何学习的方法。
现在,为此设置一个阈值, 任何知道如何进行通信的人都可以学习编程 。 因为编程的核心内容是一种具有自己的语法和词汇的“语言”,它的存在纯粹是为了帮助您与机器进行通信以完成特定的目的或行动 ,就像我们对每个人所做的一样。 真的很简单。
3.我必须去大学学习编码
他们说,为了最大限度地提高您的功夫编码水平,您需要一个真正的大师来指导您的学习之路。 在该层次结构的顶峰是教授的标签(在您学习任何东西时,它都尽可能地高)。 但是,这些天来,并借助Internet,您可以在热情洋溢的程序员中学习如何编程 ,而大学讲师则几乎没有参与。
![密码学](https://i-blog.csdnimg.cn/blog_migrate/3cb9816cfeb11aaea1deecf49b37f2e4.png)
![密码学](https://i-blog.csdnimg.cn/blog_migrate/3cb9816cfeb11aaea1deecf49b37f2e4.png)
在诸如Codecademy之类的交互式学习网站中选择一个入门课程,或者阅读诸如Nettuts +之类的教程网站,这些网站都以文本和视频格式进行了清晰的解释。 有问题并想直接回答吗? Stack Overflow和Stackexchange是您最好的朋友。 Google搜索可以帮助您建立正确的联系(我们还要在这里忘记很多开发资源 )。
看,我们并不是说大学不能教你任何东西。 教授或讲师当然可以加快您对诸如面向对象编程之类的理论和概念的理解 ,并且您也需要考虑一些关键的优点 。
但是,无论您选择哪种方式,最好是掌握自学能力,因为与大多数行业不同,编程总是以非常快的速度发展,只有您才能确定是否可以跟上。
4.我必须是成年人才能学习编程语言
父母,请不要以您孩子的年龄作为他们学习 编程语言的威慑力量,而这不仅仅是我个人的看法。 在Code.org上 ,有一份请愿书要求将编程作为必修的科目,因此孩子们可以学习分析思维。
但是,儿童和成人之间的学习模式有所不同。 最好让孩子们以更直观的方式学习 ,因为他们的视觉感知更加发达。 为此, Scratch和Alice非常适合孩子们进行视觉编程(这比古老的编程书更好)。
而且,如果他们更喜欢交互式环境(因为谁不愿意?),那么像Khan Academy这样的代码社区就是一个理想的选择。 家长还可以帮帮忙,通过保持与他们的孩子的进步的循环,并与解释,提示和资源,以及促进主动学习的父母支持引导他们 。
5.我必须只学习最好的语言
“最好的”编程语言? 这有点误导,因为最适合您学习的语言是适合您当前目的 (无论是工作还是学习)的语言。 换句话说, 没有最好的编程语言 ,这取决于您要使用的语言 。
![Python](https://i-blog.csdnimg.cn/blog_migrate/cf63c38704ac277029a3a34e573eee14.png)
![Python](https://i-blog.csdnimg.cn/blog_migrate/cf63c38704ac277029a3a34e573eee14.png)
不过,对于初学者来说,还有很棒的编程语言。 由于Python的简单性,可读性和灵活性 ,它是一个很好的入门者。 Java也很容易学习,而且最重要的是,它具有广泛的文档和顽固的社区,或者您可以像我一样深入C# 。 之后,取决于语言的速度,专有功能,兼容性,可维护性等,由您决定选择哪种工具。
6.只需数周即可学习和掌握编程语言
不要相信这个标语。 这是可悲的看到最有抱负的青年尝试一种编程语言的时间很短,才发现他们无法创造星期内MMORPG。 然后,他们拔掉插头,称自己为“无才”,然后放弃成为游戏程序员的梦想。
实际上,您可以花费数周的时间来学习编程,但是精通编程需要花费数年。 就像绘图一样, 编程需要兴趣和耐心 ,而您最初创建的大多数东西可能用处不大。 但是,如果您继续前进,则只需一次迈出一步。 要成为一名优秀的程序员, 每次失败都应该感觉很好,因为这是进步的唯一途径。
7.我应该记住所有语法并避免帮助
心理是,如果您在没有外部指导的情况下进行编程,那么您将记住所有内容,并成为真正的专业人员,可以从头开始构建任何东西。 但是事实是, 您不必担心存储语法 ,因为在翻转表并自己创建框架之前,您将要编写数千次相同的代码 。
![aptana工作室](https://i-blog.csdnimg.cn/blog_migrate/a871d3909e3d1a0881233454b7b5cd79.png)
![aptana工作室](https://i-blog.csdnimg.cn/blog_migrate/a871d3909e3d1a0881233454b7b5cd79.png)
Google , IDE和Framework并非无聊而创建-它们是专门为帮助您更快地进行编程而设计的 。 最好的做法是在遇到问题时使用带有语法建议的IDE并咨询Google水晶球。
采用框架可以帮助您了解编程语言的功能以及可以施加的限制。 然后,当您取得足够的进步后,尝试使用特定的编程功能。 探索,炸毁某物(象征性地),并弄乱自己。
8.我就是不能写那么多代码
我是第一次浏览网页源时就感到害怕的人之一,因为您可以打赌4000行代码可能会让人不知所措。 但是,尽管HTML不是一种编程语言,但其内容在很大程度上反映了每个代码文件通常包含的内容。 如果您注意的话,您会发现它们只是由重复的语句,方法和循环组成的一堆代码。
而已; 程序员大多使用在初学者和中级课程中学到的相同知识来做简单和复杂的解决方案。 一旦习惯了,您会觉得10,000行代码是孩子们的游戏。 它会很快上瘾!
我无法编码。
冒着进入危险水域的危险,我直说我是女程序员的粉丝。 我班上的女生同时拥有我们的数学和科学专业,我的编程生涯进一步证实了这一信念。 在有影响力的程序员榜单上 ,女性一直是头号人物 ,以下是对您的简短介绍,目的只是为了说明这一点:
- Ada Lovelace是世界上第一位程序员。
- Grace Murray Hopper开发了第一个用于编程语言的编译器。
- Adele Goldstine的帮助创造了世界上第一台电子数字计算机。
- Jean E. Sammet开发了FORMAC编程语言,这是FORTRAN的变体。
- Marissa Mayer是Google最早的程序员之一。
![玛丽莎·梅耶(Marissa Mayer)](https://i-blog.csdnimg.cn/blog_migrate/480534f87c172279874eef32f7221f3b.png)
![玛丽莎·梅耶(Marissa Mayer)](https://i-blog.csdnimg.cn/blog_migrate/480534f87c172279874eef32f7221f3b.png)
女性在程序设计领域的影响是显而易见的,但就像大多数男性不被香水行业吸引一样,该领域女性与男性程序员的比例较低可能也归因于其他因素,例如社会和经济压力作为人生的不同观点和兴趣等
10.我只有在掌握编程后才能开始赚钱
大致了解一下程序员的大部分职位空缺,您会发现该职位需要数年的经验,需要大量其他编程语言。 但是现实并不那么苛刻。 您总是可以得到与您的编程经验相当的编程工作 ,但您不能只是坐在那里等一下。
如果直接申请不起作用, 实习是获得工作经验并争取成为永久雇员的一种健康方法 ,但最重要的是,面试官要检查的地方是您的工作档案,其中包括出色的能力展示。 信誉会有所帮助,因此请立即开始开源项目。
自由职业者也是一个不错的起点,因为这里的大多数客户要宽容得多(只是要警惕地狱的客户 )。 无论哪种方式,总有一个讨论的空间,每个人都必须从某个地方开始,但是您必须做点什么。
欢迎来到编程世界!
总而言之,编程就像其他任何行业一样,勤奋和决心是成功的资产。 因此,在清除所有疑虑之后,立即迈出第一步,并开始您的第一门编程课程 。