我是如何开始学习编码的:前三个月我用过的资源

本贴最后更新于 2064 天前,其中的信息可能已经天翻地覆

我是如何开始学习编码的:前三个月我用过的资源

想学习如何编程?本文将指导你经过技术和资源的丛林,帮助你从无知识到构建快速、互动、现代的编码知识,沿着我走过的林间小径。

从八月底到十二月初

我花了三个月的时间学习编码,虽然有时候很有挑战性,但这是一次非常有益的体验。

最棘手的一个挑战是选择_什么样_的学习和_在那里_学习它。有这么多的语言,框架和库 - 以及许多相互矛盾的建议。

此外,一些学习资源比其他学习资源要好得多。如果我知道要关注哪些资源,我的进展可能会更快。

本着这种精神,我想我会分享对我有用的东西。如果感觉很多,我很幸运,我每天可以花几个小时学习这些材料。你做得多快并不代表你作为开发者的潜力,所以不要担心是否需要更长的时间来完成这些材料。但是,如果你能投入时间,可以在半个月内完成。

这些是我经历过的路程,并不代表你需要全部走过

第一部分:HTML,CSS 和 JavaScript

这些是所有 Web 应用程序的三种核心语言,并且(几乎)不可能在不使用它们的情况下在 Internet 上构建任何内容。

HTML


如果你以前从未做过任何编码,那么 HTML 就是一个很好的起点。它是互联网的核心构建块,与大多数其他语言不同,它为学习者提供了他们正在编写的代码的即时可视反馈。

CSS

CSS 是 HTML 的自然伴侣。从表面上看,它非常简单,虽然有一些概念 - 特别是与布局和定位有关 - 可能需要一些时间来解决问题。

CSS 最困难的部分是理解布局。用户在 StackOverflow 上询问了我的大多数布局问题,因此快速的 Google 搜索解决了我的大多数问题。

H5 和 CSS 大概花去了我两天时间,通常你想了解一个编码方面的事物时,直接上手总是最快捷的方式。

JavaScript

HTML 和 CSS 不是完全成熟的编程语言,因此在开始学习编程语言之前,您将无法完全了解编程。JavaScript 是 Web 的编程语言。

平心而论,虽然我在初中时期尝试过 js 编程,然而连真正的编码都算不上,直至现在我也是 JavaScript 的菜鸟,所以这上面我并不能给予一些帮助建议

由于我开始学习后端,js 从熟悉拼写到知道历史花了我一小段时间。

GO

Go 是极其酷的语言,尤其是在现代进行高效的 Web 编程方面

Go 是我学习后端被选择的语言,同时也是我越学越看好的语言。作为语言初学者的时候我还无法分辨各种语言的特性和好坏,这通常需要多年的编码经验或者有过使用多种语言的经历才能清楚。我经历过 C++ STL 的使用和一定的 Java 编码,但是从过来的眼光看待,不过是十数天就能达到的程度。

在 《The Way To Go》上我花费了大概三天时间,在此之前我阅读了菜鸟教程上关于 Go 语言的入门指南。虽然这本书对于 Go 语言的高级特性讲的比较简略,作为入门无疑是够的。即使我看的是英文,或许你也更喜欢拿着中文书籍看,但是作为编码人员,无疑英语才是必须学习的语言。

之后我进行了一个小爬虫的练习,涉及到 goquery,gocolly 先爬取的飞卢的小说网站,之后爬取的各个地区的各种商业信息。这大概花费了我一天的时间。(从这里学会的阅读文档的知识)

随后我开始了 Go 源码包的阅读,将每一个包的每一个函数遍历了一下他们的 godoc ,在我开始每一个函数的内在逻辑阅读时,我被中止了,由于庞大的知识体系。这大概花费了我三到四天。(从这里学会的画图技巧)

我这个时候开始使用社团的 Mac 电脑,开始了一个关于发送短信的云 API 接入服务的开发。当时了解并接入阿里云市场给我带来了麻烦,从需求找到解决方法向来非易事。这大概使用了一个星期,了解了关于 go 与 mysql 的接入,和不同终端的 HTTP 通信

随后是轮播图的后台管理搭建,这里开始学习了表的设计,更多的了解了 mysql 的各种情况。

完成轮播图(考虑的越多需要做的越多,但是编码不一定会变多,应该是遵循幂律的)开始订单系统的设计,这是关于学习后台功能最难的一个部分了,同时我也花费了不少时间来进行查阅和设计,也接触有 gorm 的使用。做完订单系统的设计让我得到了极大的提升因为考虑了很多实际情况的适应。之后想必更困难的业务是游戏服务端了吧。

之后我完成了一个 app 后台的搭建,通过各个模块的组合拼接。这里的难点主要是在团队协作上故不在此详述。

到这里我的 go 学习历程就告一段落了。

第 2 部分:任何开发人员工具包的其他必备部分

Git 和 GitHub

Git 是所谓的“版本控制系统”,GitHub 是最受欢迎的基于云的 Git 服务。
简单来说,Git 允许您备份文件,跟踪更改,与其他开发人员分享您的进度,以及协作项目。
当你刚刚学习,并且不需要使用 Git 时,它可以感觉像是一件苦差事。但这是值得的:绝大多数专业开发人员不仅依赖 GitHub(或类似服务),而且拥有活跃的 GitHub 配置文件可以帮助您确保工作安全。
越早开始将您的工作交给 GitHub,您作为开发人员的经验就会越多。

命令行

命令行可以说是最重要的部分,通常了解命令行的操作是非常必要的。同时想要学习也很简单,不仅网上有很多教程,鸟哥的 Linux 私房菜也涉及很多,不过我对于工具的建议是如非必要,仅需了解。

使用 Git 的最佳方式是通过“终端”或“命令行”,这对现代 Web 开发人员也很重要,允许您通过 NPM(节点包管理器)或 Yarn 轻松地将第三方包添加到您的网站。也有很多网站能够帮助你迈出这一步

第 3 部分:下一步是什么?

这就是我在前三个月学到的一切。

我要学习的内容包括 Kubernetes,Istio,gRPC 等等。这是很多技术,而我(还没有!)能够告诉你任何有关于它们。最好也了解它们!

  • golang

    Go 语言是 Google 推出的一种全新的编程语言,可以在不损失应用程序性能的情况下降低代码的复杂性。谷歌首席软件工程师罗布派克(Rob Pike)说:我们之所以开发 Go,是因为过去 10 多年间软件开发的难度令人沮丧。Go 是谷歌 2009 发布的第二款编程语言。

    497 引用 • 1387 回帖 • 294 关注

相关帖子

欢迎来到这里!

我们正在构建一个小众社区,大家在这里相互信任,以平等 • 自由 • 奔放的价值观进行分享交流。最终,希望大家能够找到与自己志同道合的伙伴,共同成长。

注册 关于
请输入回帖内容 ...