如何开始学习编程——14年老程序员经验分享

如何开始学习编程——14年老程序员经验分享如何开始学习编程我被问过几次关于如何开始编程以及如何通过自学来学习的问题。所以我决定写这篇文章,并基于我 14 年以上的编程经验。在其中,我将介绍:我是如何开始的我们为什么要开始?现在开始太晚了吗?我应该从哪里开始?我能做些什么来保持进步?

大家好,欢迎来到IT知识分享网。

如何开始学习编程

我被问过几次关于如何开始编程以及如何通过自学来学习的问题。所以我决定写这篇文章,并基于我 14 年以上的编程经验。在其中,我将介绍:

  • 我是如何开始的
  • 我们为什么要开始?
  • 现在开始太晚了吗?
  • 我应该从哪里开始?
  • 我能做些什么来保持进步?
  • 我能做些什么来保持动力?

我不会讨论如何找到软件工作,因为这超出了本文的范围。但希望这篇文章能让你对编程感到兴奋,并让你迈出学习终生技能的第一步。

我是如何开始的

许多年前,我通过将 Microsoft Excel 文件与 VBA 宏组合在一起来学习如何编程,这些宏可以在电子表格中自动计算并更新单元格的颜色。我没有学位,也从未编程过。很多人只是出于好奇:这是如何工作的,我如何将这些东西放在一起?这让我很感兴趣,因为我自学了使用方法 Microsoft 的 Excel 手册进行编程。当然,从那时起,我已经走了很长一段路,并且在大学里学习了正式的编程(计算机科学),但我掌握了很多编程知识——我的意思是很多!- 来自作为产品工程师的工作编程。

如何开始学习编程——14年老程序员经验分享

编程很像玩乐高。我需要一个 4×4 件……我可以使用两个 2×2 好吗?把所有的积木放在一起后,你就有了你的乐高房子。编程显然比这更深入一些,但从本质上讲,您正在创建和重用代码块来帮助您构建一个(希望如此!)有用的系统。

❓我为什么要开始?

好问题!你不必。很多人没有,并且非常高兴不需要或不想编程。但你可能想为了好玩而学习它。或者你在大学学习时可能需要它。你可能想发展你的事业。你甚至可能想改变职业。以下是学习编码的一些好处:

  • 如果您知道足够多的危险编(例如数据分析师等),就会出现有趣的工作
  • 当你真正擅长时,就会出现令人兴奋的工作(例如软件工程师、数据工程师等)
  • 高薪可能是必然的结果。2021 年,全栈工程师的全球平均工资为 5.6 万美元。在美国,同一职位的平均工资为 12 万美元 [ * ]。
  • 这是一种可转移的技能,你可以把它带到不同的国家。大多数软件工作也是远程的
  • 乐趣!可以成为推动者,并允许您创建有趣的项目。我喜欢制作东西,并且一直在进行项目。

现在开始太晚了吗?

有些人可能会问,现在开始是否为时已晚——我说当然不会!直到高中毕业,我才开始学习。在大学正式学习之前,我是自学的,几乎我所有的同学都已经有多年的编程经验。我被吓坏了,但凭借好奇心和坚韧,我想方设法跟上我的同学,并真正享受学习过程。我今天还在继续学习。以下是为时不晚的原因:

  • 好奇心就是你所需要的。如果您真的有兴趣学习如何编写代码并且让您兴奋不已,那么现在开始永远不会太晚。
  • 大多数人不知道如何编所以学习一些东西会让你很快领先。
  • 工作比人多。每年都有很多创业公司诞生。最近的公司将专注于技术并招聘技术职位。现有的公司需要更多的技术人员来保持创新。作为一名软件工程师,每周让招聘人员与您联系几次并提供工作职位并不罕见。
  • 您可以选择自己的利基市场。编程和编中有很多领域。有很多利基市场没有很多开发人员,你可以成为其中之一。例如,您可以成为 WordPress 开发人员或 Low-Code 开发人员

我今天应该从哪里开始?

为了这篇博文,我们假设您正在构建一个 Web 应用程序或网站,并坚持使用最流行的语言(请参阅开发人员调查):JavaScript。我们所说的语言是指编程语言。在开发中,我们经常说前端开发来描述用户界面的编程,后端开发来描述服务器的编程。对于前端,我们将使用React.js——迄今为止流行的前端 Web 框架——而对于后端,我们将使用Node运行时和一个名为Koa.js的后端框架. 简而言之,Node 是为您运行 JavaScript 的程序,因为编程语言不会自行运行。Koa.js 使用 JavaScript 编写的运行在 Node 上的服务器程序……我希望这是有道理的!

我们从哪里开始使用 JavaScript、React.js、Node 和 Koa.js?最好的方法——在我看来——就是尽快动手并开始编写代码。对我们来说幸运的是,有大量的资源可以帮助我们。在下面的资源中,您会发现也使用了 HTML/CSS。如果您不熟悉 HTML 和 CSS,请不要太担心,并尽可能多地按照教程进行操作。事不宜迟,以下是可以帮助您学习 JavaScript 和 Node 的资源列表:

让您的第一个程序(“Hello World”)在您的浏览器中运行

  • javascript.info包含大量学习 JavaScript 的好材料

开始使用 React.js,这是一个 JavaScript “框架”或工具,可帮助您编写 Web 应用程序(即网站)

  • React.js 是迄今为止最流行的 Web 框架

使用 Koa.js 编写你的第一个后端服务器程序

上面的教程将引导您了解前端(JavaScript、React)和后端开发(Node、Koa)的基础知识。为什么要做前后端开发?因为一旦您精通编写 JavaScript 和使用框架,您就可以创建一个与后端通信的前端。这是网络中最重要的(初学者)概念——客户端-服务器模型

  • 很简单,前端是客户端,后端是服务器
  • 客户端通常是用户的浏览器。这是我们运行 JavaScript/React.js 程序的地方
  • 服务器是后端。这是我们的 Node/Koa.js 程序运行的地方

当我们让前端与后端进行通信时,会发生很多事情:

  • 客户端可以向服务器请求数据
  • 服务器可以从数据库中获取一些东西并将其发送给客户端
  • 等等

这一切的关键在于,一旦你开始学习一点 JavaScript、一点 React.js 和一点 Koa.js,你就会越来越多地了解 Web 的工作原理,这将成为一个跳板了解有关编程的更多信息!

我该怎么做才能不断进步?

编程和软件开发是一项持续的学习活动。这不是您将在一节课堂课程中涵盖并完成的事情。软件从早期开始就发生了巨大的变化,并且在今天继续发展。

有大量的资源可以自学编程。然而,与所有其他事情一样,Reddit 是一个很好的起点:请参阅/r/programming 中的这篇文章。它列出:

  • 很棒的网站和应用程序,您可以免费学习
  • 游戏化学习资源
  • 让您保持参与的 YouTube 频道

要保持领先地位,您要做的是不断学习和尝试新事物。构建有趣的东西来内化你的学习并将它们应用到你的工作中。这里有一些具体的建议可以帮助你继续学习:

非常非常好地学习你的编程语言。这将帮助您以闪电般的速度编写代码,并使程序达到您想要的效果

  • 阅读书籍(例如JavaScript: The Good Parts)、在线文档(例如MDN 文档)以帮助您理解语言
  • 当您对自己的编程语言感到满意时,请转向另一种语言(例如 Python)。您会注意到每种语言都略有不同,并且用于不同的目的

好好学习你的网络框架。了解它的附加组件和库。您会注意到已经编写了很多好的代码,您不需要重新发明(每个)轮子

  • 阅读文档(例如React.js 文档
  • 了解生态系统中的附加组件和库(例如React.js 生态系统
  • 加入聚会(例如React.js 聚会),向其他人学习
  • 参加课程并观看教程视频
  • 在业余时间制作 Web 应用程序!

当您对编程和 Web 框架感到满意时,您可以考虑更多选择:

  • 获得软件开发人员的工作。有时最好的学习方式就是在工作中!
  • 去代码训练营。但是请注意那些声称可以做很多事情的训练营(最终为您提供出色的工作等)但实际上并没有
  • 通过UdemyThe Odin Project 的课程在线学习 JavaScript、Python 和编程
  • 在学术层面学习它——学习计算机科学或类似的。还有哈佛的CS50:计算机科学概论以及赫尔辛基大学的Mooc等课程
如何开始学习编程——14年老程序员经验分享

我该怎么做才能保持动力?

学习编程可能是一项艰巨的任务,并且可能会让人感到非常具有挑战性。就像任何其他技能一样,除了锻炼和磨练你的技能之外,没有简单的方法来学习编程。有时事情会变得有点艰难,但这里有一些技巧可以让你保持动力:

当你被卡住时:

  • 与某人交谈。通常大声说出来会有所帮助(请参阅Rubber Duck Debugging
  • 睡在上面。有很多次,当我醒来并知道前一天晚上遇到的问题的解决方案时
  • 去博物馆或做一些不寻常的事情来摆脱路障。有时你会带着一个新想法回来

当你在自学时感到孤独时:

  • 与某人交谈。那里有许多编论坛(例如dev.to、Slack、Reddit 等)
  • 参加聚会,认识新朋友

当你感到泄气时:

  • 尝试新的编程语言,学习新的框架
  • 读一本书。知识并不总是需要来自实践

结论

有很多方法可以开始编程!我只触及了学科的表面。希望这篇文章可以帮助您了解可以从哪里开始,并迈出学习一项伟大技能的第一步。

免责声明:本站所有文章内容,图片,视频等均是来源于用户投稿和互联网及文摘转载整编而成,不代表本站观点,不承担相关法律责任。其著作权各归其原作者或其出版社所有。如发现本站有涉嫌抄袭侵权/违法违规的内容,侵犯到您的权益,请在线联系站长,一经查实,本站将立刻删除。 本文来自网络,若有侵权,请联系删除,如若转载,请注明出处:https://yundeesoft.com/89803.html

(0)

相关推荐

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注微信