00 Preface Written for Beginners of Go Language Learning

00 Preface Written for Beginners of Go Language Learning #

Hello, I’m Haolin. Today I’m going to share with you how to start learning Go language for those with zero prior experience.

  1. What learning path should you follow to learn Go? ————————

We have found that the students who subscribe to this column are very active in learning and discussing, which is very gratifying and inspiring. However, based on the comments, it seems that everyone’s foundation is different and can be roughly divided into several categories.

  • Students with zero programming knowledge: They may be preparing to enter the field or have just become interested in programming. They are familiar with operating computers but have little knowledge of computers, operating systems, and networks.
  • Students with little or no programming experience: They may be working in other technology-related jobs and may be familiar with writing scripts, but they have little knowledge of general programming concepts and skills.
  • Students with experience in other programming languages: They may already be programmers or software engineers and are proficient in writing programs in other programming languages but are unfamiliar with Go language.
  • Students with some experience in Go programming: They have a basic understanding of Go language and have written some Go programs but are looking for ways to advance and improve their skills.

Based on the above categories, I have created a learning path for learning Go language. Regardless of which category you belong to, you can follow this path to enhance your knowledge. Please see the mind map below for details.

(Long press to save the full-size image)

  1. What basic knowledge do you need before learning this column? ————————

In this column, I will assume that you have some basic computer knowledge, such as knowing what an operating system is, how to set environment variables, and how to use the command line, etc.

In addition, I will also assume that you have a little programming knowledge, such as understanding what a program is, how programs usually exist, and the relationship between programs, operating systems, and computers, etc.

By the way, in this era of mature mobile internet, if you want to learn programming, you should also have some basic knowledge of networks.

In this column, I will only discuss Go language code and programs, and will not mention too much about computer architecture or software engineering. So even if you have not studied computer systems or software engineering, it doesn’t matter. I will try to explain some necessary basic concepts and knowledge.

Since 2018, with Google gradually returning to China, the official website of Go language also has a mirror site under the domain name of Google China. After all, China has the largest number of Go language enthusiasts and is also the most widely used country for Go language. If you are in China, you can access the official website of Go language by entering this website.

This column focuses on the core knowledge of Go language, so I will not go into details about all the syntax and commands. If you want to learn all the syntax of Go language comprehensively, you can carefully review the language specification page on the official website of Go language.

Of course, the language specification is in English, and if you want to read a localized version, there are options. I remember that several groups of Go language enthusiasts in China have voluntarily translated it. But I haven’t looked at them in detail, so I don’t know the quality, so I won’t specifically recommend them here.

For students engaged in computer and software development related work, I strongly recommend that you consciously train your ability to read English documents quickly, whether with the help of dictionaries and translation tools or not.

However, if you want to specifically learn about Go commands and techniques, I recommend you take a look at the free and open-source tutorial I wrote called “Go Command Tutorial”. Although the content of this tutorial may be slightly outdated, it will definitely help you learn how to use the commonly used commands and tools provided by Go language.

Well, even if you are a programming novice, there is no need to worry too much because we will help you together. As for the Go language specification and Go command tutorial I mentioned earlier, you can selectively read them during the process of learning this column based on your actual needs.

3. Here is a list of fundamental knowledge, please check #

If you find the first module of this series a bit challenging, it’s probably because you are not yet familiar with some basic concepts and knowledge of the Go language. I have carefully prepared a mind map on the basics of Go language for you, which covers almost all the knowledge points needed to get started with Go language.

- (Long press to save the large image)

With these, do you feel that learning from this series will be easier?

In summary, I and the editors and operators at Geek Time will take care of the tutorials, materials, and promotion together. What you need to do is to keep this determination to learn Go language. You can try to organize your own learning notes for Go language and leave comments below the articles when you encounter something you don’t understand. We can discuss it together.

Well, thank you for listening, see you next time.

Click here to view detailed code for articles in the Go language series.