你好,我是郝林,今天我分享的内容是:0基础的你,如何开始入门学习Go语言。

1. 你需要遵循怎样的学习路径来学习Go语言?

我们发现,订阅本专栏的同学们都在非常积极的学习和讨论,这让我们非常欣慰,并且和你一样干劲十足。不过,我在留言中发现,大家的基础好像都不太一样,大致可以分为这么几类。

  • 零基础的同学:可能正准备入行或者刚刚对编程感兴趣,可以熟练操作电脑,但是对计算机、操作系统以及网络方面的知识不太了解。
  • 无编程经验或者编程经验较少的同学:可能正在从事其他的技术相关工作,也许可以熟练编写脚本,但是对程序设计的通用知识和技巧还不太了解。
  • 有其他语言编程经验的同学:可能已成为程序员或软件工程师,可以用其他的编程语言熟练编写程序,但是对Go语言还不太了解。
  • 有一定Go语言编程经验的同学:已有Go语言编程基础,写过一些Go语言程序,但是急需进阶却看不清途径。

基于以上分类,我为大家制定了一份Go语言学习路径。不论你属于上面的哪一类,都可以按照此路径去学习深造。具体请看下面的思维导图。

(长按保存大图)

2. 学习本专栏前,你需要有哪些基础知识储备?

在这个专栏里,我会假设你有一定的计算机基础,比如,知道操作系统是什么、环境变量怎么设置、命令行怎样使用,等等。

另外,我还会假定你具备一点点编程知识,比如,知道程序是什么、程序通常会以怎样的形式存在,以及程序与操作系统和计算机有哪些关系,等等。

对了,还有在这个早已成熟的移动互联网时代,想学编程的你,一定也应该知道那些最最基本的网络知识。

我在本专栏里只会讨论Go语言的代码和程序,而不会提及太多计算机体系结构或软件工程方面的事情。所以你即使没有专门学过计算机系统或者软件工程也没有关系,我会尽量连带讲一些必要的基础概念和知识。

从2018年开始,随着Google逐渐重回中国,Go语言的官方网站在Google中国的域名下也有了镜像,毕竟中国是Go语言爱好者最多的国家,同时也是Go语言使用最广泛的一片土地。如果你在国内,可以敲入这个网址来访问Go语言的官网。

这个专栏专注于Go语言的核心知识,因此我并不会深入说明所有关于语法和命令的细枝末节。如果你想去全面了解Go语言的所有语法,那么可以去Go语言官网的语言规范页面仔细查阅。

当然了,这里的语言规范是全英文的,如果你想看汉化的内容也是有选择的,我记得先后有几拨国内的Go语言爱好者自发组织翻译过。不过我都没有仔细看过,不知道质量如何,所以在这里就不特别推荐了。

对于从事计算机和软件开发相关工作的同学,我强烈建议你们要有意地训练快速阅读英文文档的能力,不论是否借助字典和翻译工具。

不过,如果你想专门学习一下Go命令方面的知识和技巧,那么我推荐你看看我之前写的免费开源教程《Go命令教程》。这份教程的内容虽然稍显陈旧,但是帮助你学会使用Go语言自带的常用命令和工具肯定是没问题的。

好了,其实即使你是个编程小白也不用过于担心,我们会一起帮助你的。至于我刚刚说的Go语言规范和Go命令教程,你也可以在学习本专栏的过程中根据实际需要去有针对性的阅读。

3.这里有一份基础知识列表,请查收

如果你阅读本专栏的第一个模块时感觉有些吃力,那可能是你还没有熟悉Go语言的一些基础概念和知识。我为你精心制作了一张Go语言基础知识的导图,里面几乎包含了入门Go语言所需的所有知识点。


(长按保存大图)

有了这些,你是否已经感觉学习本专栏会更加轻松了呢?

总之,教程、资料和助推就交给我和极客时间的编辑、运营们来共同负责。而你需要做的,就是保存好这一份对Go语言学习的决心,你可以自己去尝试整理一份Go语言的学习笔记,遇见不懂的地方,你也可以在文章下面留言,我们一起讨论。

好了,感谢你的收听,我们下期再见。

戳此查看Go语言专栏文章配套详细代码。

Go语言核心36讲01的更多相关文章

  1. Go语言核心36讲(导读)--学习笔记

    目录 开篇词 | 跟着学,你也能成为Go语言高手 导读 | 写给0基础入门的Go语言学习者 导读 | 学习专栏的正确姿势 开篇词 | 跟着学,你也能成为Go语言高手 Go 语言是由 Google 出品 ...

  2. Go语言核心36讲(Go语言进阶技术八)--学习笔记

    14 | 接口类型的合理运用 前导内容:正确使用接口的基础知识 在 Go 语言的语境中,当我们在谈论"接口"的时候,一定指的是接口类型.因为接口类型与其他数据类型不同,它是没法被实 ...

  3. Go语言核心36讲(Go语言进阶技术十六)--学习笔记

    22 | panic函数.recover函数以及defer语句(下) 我在前一篇文章提到过这样一个说法,panic 之中可以包含一个值,用于简要解释引发此 panic 的原因. 如果一个 panic ...

  4. Go语言核心36讲(Go语言实战与应用一)--学习笔记

    23 | 测试的基本规则和流程 (上) 在接下来的日子里,我将带你去学习在 Go 语言编程进阶的道路上,必须掌握的附加知识,比如:Go 程序测试.程序监测,以及 Go 语言标准库中各种常用代码包的正确 ...

  5. Go语言核心36讲(Go语言实战与应用三)--学习笔记

    25 | 更多的测试手法 在本篇文章,我会继续为你讲解更多更高级的测试方法.这会涉及testing包中更多的 API.go test命令支持的,更多标记更加复杂的测试结果,以及测试覆盖度分析等等. 前 ...

  6. Go语言核心36讲(Go语言实战与应用四)--学习笔记

    26 | sync.Mutex与sync.RWMutex 从本篇文章开始,我们将一起探讨 Go 语言自带标准库中一些比较核心的代码包.这会涉及这些代码包的标准用法.使用禁忌.背后原理以及周边的知识. ...

  7. Go语言核心36讲(Go语言实战与应用十四)--学习笔记

    36 | unicode与字符编码 在开始今天的内容之前,我先来做一个简单的总结. Go 语言经典知识总结 在数据类型方面有: 基于底层数组的切片: 用来传递数据的通道: 作为一等类型的函数: 可实现 ...

  8. Go语言核心36讲(Go语言实战与应用十八)--学习笔记

    40 | io包中的接口和工具 (上) 我们在前几篇文章中,主要讨论了strings.Builder.strings.Reader和bytes.Buffer这三个数据类型. 知识回顾 还记得吗?当时我 ...

  9. Go语言核心36讲(Go语言实战与应用二十二)--学习笔记

    44 | 使用os包中的API (上) 我们今天要讲的是os代码包中的 API.这个代码包可以让我们拥有操控计算机操作系统的能力. 前导内容:os 包中的 API 这个代码包提供的都是平台不相关的 A ...

  10. Go语言核心36讲(Go语言实战与应用二十四)--学习笔记

    46 | 访问网络服务 前导内容:socket 与 IPC 人们常常会使用 Go 语言去编写网络程序(当然了,这方面也是 Go 语言最为擅长的事情).说到网络编程,我们就不得不提及 socket. s ...

随机推荐

  1. C语言:多功能计算器程序说明书

    好家伙,3000字终于写完了 一.题目:多功能科学计算器 二.内容: (1)概述或引言 开发环境为Visual C++ 目前已实现的功能: (1)解二元一次方程.一元二次方程 (2)进行矩阵相加.相减 ...

  2. rh358 004 bind反向,转发,主从,各种资源记录 unbound ansible部署bind unbound

    通过bind实现正向,反向,转发,主从,各种资源记录 7> 部署反向解析 从ip解析到fqdn vim /etc/named.conf zone "250.25.172.in-addr ...

  3. Django 之复制粘贴必备命令(补)

    一.Django 常用命令 pip install django==3.2 pip show django pip list django-admin startproject mysite pyth ...

  4. Docker 与 Containerd 并用配置

    描述: 事实上,Docker 和 Containerd 是可以同时使用的,只不过 Docker 默认使用的 Containerd 的命名空间不是 default,而是 moby,此处为了更方便我们学习 ...

  5. ProxySQL(3):Admin管理接口

    文章转载自:https://www.cnblogs.com/f-ck-need-u/p/9281199.html ProxySQL的Admin管理接口 当ProxySQL启动后,将监听两个端口: (1 ...

  6. Ceph 有关知识简介

    Ceph 存储集群至少需要一个 Ceph Monitor 和两个 OSD 守护进程.而运行 Ceph 文件系统客户端时,则必须要有元数据服务器( Metadata Server ). Ceph OSD ...

  7. C#-8 数组

    一 关于数组 数组是由一个变量名称表示的一组同类型的数据元素.数组中的元素通过变量名和方括号索引来访问. int[] intArray = new int[] { 1, 2, 3 }; //声明了一个 ...

  8. Qt+ECharts开发笔记(五):ECharts的动态排序柱状图介绍、基础使用和Qt封装Demo

    前言   上一篇的demo使用隐藏js代码的方式,实现了一个饼图的基本交互方式,并预留了Qt模块对外的基础接口.  本篇的demo实现了自动排序的柱状图,实现了一个自动排序柱状图的基本交互方式,即Qt ...

  9. 局域网内搭建CentOS PHP 环境

    首先我们找到一台已经搭建好的CentOS,IP地址我就不说啦. 我们需要用到的几个工具,一个是SecureCRT用于远程连接,还有一个用于文件上传和下载就是filezilla 准备好了之后,我们就可以 ...

  10. cf1082 A. Vasya and Book

    中文题意: 思路:我们先看看能不能直接从x翻到y,abs(y-x)%d==0,可以就直接输出abs(y-x)/d咯,不行的话之后有2种操作 1.先翻回到第一页,从第一页看看能不能范到y,不能的话翻到最 ...