Be serious and learn go: 1. Learn the lead


“Go basic series” is a series of articles on the basis of go language. Before starting this series, I’ll “confess” about my work experience, and then explain a few questions about this series.


If you don’t want to read this paragraph, you can jump directly to the following to see the questions about this series

I majored in “computer science and technology” in University, which is also the reason why I am engaged in this industry. During college, I studied C, C + +, c#, HTML, CSS, JavaScript, Java, Python and PHP, and listed some languages I thought I was serious about learning. The so-called seriousness only stayed at the level of basic knowledge. Of course, the actual experience of the project is far from good.

Among these languages, I focus on c# and PHP. Why are these two? Keep looking down

In college, although I was quite serious about what I liked, I still couldn’t answer when asked what I would do in the future. That is, during this confused period, the training institution came to the door, which also made up for my vacancy for practical experience (it doesn’t mean that the training institution is good). In fact, I still don’t know what language to learn. It may be the guidance of training institutions or school courses. I chose to develop and use c# language. Later, because felt that there was nothing to learn in the training institution (I thought I knew it), I turned to PHP, which is also the stepping stone for my future work.

When I was a senior, I used my skills to find a job, and in school, I just took the exam, and the results were good.

I also successfully found a job with my PHP resume. My first job entered the P2P industry, and the following two jobs are also. One of them led the technology department. He often stayed up late and worked overtime without overtime pay. Of course, he didn’t complain. Now think about how failed your management is. I also regret the industry I am engaged in. At that time, I felt very good about the P2P financial industry. In fact, this inexplicability was just ignorance at that time. Because the probability of bankruptcy of enterprises in this industry is too high, so that their technology can not be well precipitated.

In the middle, he also ran to start a business with others and ended in failure. In this way, it took more than 3 years to develop PHP, so it turned to go language development.

Then why did you come to go again?

  1. Colleague’s proposal
  2. Looking for a deeper language to learn
  3. Think they have a good future (blockchain, microservices)
  4. I’ve done it before
  5. I like the language

After deciding to move to go development, he immediately relearned. After studying for some time, I went to find a job. It was also very smooth. I found a blockchain development. Due to the oppression of the environment, I found a new cross-border e-commerce company, which is also my current company. In the new company, I have been responsible for microservices and crawler related projects, and I often study the source code and engage in GitHub’s open source.

After reviewing these experiences, I also understand some of my problems. For the go language you choose now, you will always stick to it and keep your heart of continuous learning.

At present, we are learning the underlying source code of microservices, and there will be articles in the future.

Well, that’s all for the experience. Come down and officially enter the basic study of go language.

For whom

Master a development language, such as PHP, Java, C, etc. Just have the development experience of programmers, so it’s easy to learn the language analogy.

If you haven’t mastered any language, you can also tell me. I’ll do my best to tell you what I know. Make sure you can understand what I mean by the article I write (I’m confident, come on, I don’t advise).

Encounter something you don’t understand

Whether you are Xiaobai or great God, if you encounter any go related problems, you can comment at the bottom of the article and I will reply. If you encounter the shortcomings of the article, I hope to put it forward, and I will improve it to your satisfaction (it seems that the treatment is good).

content syllabus

It’s not a directory. The following is only a rough record, which may be added later with the improvement of the content.

  • Environment construction
  • Variables and types
  • Constants and operators
  • Process control
  • Array, slice, map
  • function
  • package
  • structural morphology
  • Interface
  • exception handling
  • Concurrency and channel
  • File operation

This work adoptsCC agreement, reprint must indicate the author and the link to this article

Handsome brother and Miao

Recommended Today

Game case | application evolution and practice of service mesh in happy games

author Chen Zhiwei, Tencent level 12 background expert engineer, is now responsible for the public background technology research and development and team management of happy game studio. Rich experience in micro service distributed architecture and game background operation and maintenance research and development. preface The background of happy game studio is a distributed micro service […]