赞
踩
链接:https://www.zhihu.com/question/30461290
学习任何一门语言,都要学习好基础,把基础打牢,那些框架对你来说都是工具,你自己的基础好,懂得了他们的原理,自己就可以创造更优秀的框架。
基础推荐官方文档,没有什么比这个更清晰了。官方文档可以看这个中文的,比较快一些 https://go-zh.org/doc/
其次参考这个Go指南,练习一遍 https://tour.go-zh.org/welcome/1
现在对Go语言应该有了一个全面的认识,然后你再结合Go语言圣经这本书,深入理解Go的基础。
Go语言圣经中文版 https://www.gitbook.com/book/yar999/gopl-zh/details
然后通过《Go语言实战》这本书,In Action系列都是比较经典的,看这本书的实习可以参考我《Go语言实战》这本书的读书笔记,一共近30篇文章,15万字,非常全面,书里没有的我这里也讲到了很多。这里列其中几篇:
最终再通过一些别的第三方库源代码和实践,就可以完全掌握了。我最近也在分析一些经典库,可以保持关注:
基础进阶:
web编程:直接看go web编程这本书籍。
除了上面的几个合集,再具体补充一些放在下面。
书籍
视频
Go官方资料
无论学习什么知识,第一手资料基本都是首发于官网。进入到官网后,会看到很多资源。
GO 社区
一门语言的发展需要有大批牛人的分享布道,也需要我们这些菜鸟学习有更多的参考路径。这一切都离不开社区。国内外也有很多优秀的go语言社区;
1.熟悉最基本的知识。例如语言发展历史,基本语法,在武侠里是基本招式
2.看官网。网上经常有人问,Go牛逼在哪?或者Go到底有什么优点?看到大家你一言我一句,可是看看官网第一段话:
- The Go programming language is an open source project to make
- programmers more productive.
-
- Go is expressive, concise, clean, and efficient. Its concurrency
- mechanisms make it easy to write programs that get the most out
- of multicore and networked machines, while its novel type system
- enables flexible and modular program construction. Go compiles
- quickly to machine code yet has the convenience of garbage
- collection and the power of run-time reflection. It's a fast,
- statically typed, compiled language that feels like a dynamically
- typed, interpreted language.
很清晰,很简洁的已经总结了,何必问来问去。官方网站是这门知识最正宗最前沿的知识,一定要追随。
3.多研究,多思考,多问自己问题。我们可以看到不同的学习者,遇到一个东西有的问题很多,有的没有问题,这是为什么?是他都会了?不是,是他没有去思考。没有问自己为什么?有了为什么没有动力去找答案。差距就出来了。
4.多练习,我们可以看到张无忌就算有神功也需要练习啊。多练习才会遇见问题,才会收获经验。
5.多总结,多交流。例如写博客,做分享,讨论等等。
学习Go语言建议还是系统的学习,先从基本语法开始。
step1:基础阶段:
先看看这个,是Golang基础的,虽然是英文版,但是说的简单明了。
https://golangbot.com/learn-golang-series/
然后配合练习代码:
https://github.com/GoesToEleven/GolangTraining
中文版的可以看看这套,是我在上一家公司写的go的入门级教程《Go语言入门指南》,在github上还有配套代码:
https://www.chaindesk.cn/witbook/13
step2:web阶段
可以直接看https://astaxie.gitbooks.io/build-web-application-with-golang/
配合练习内容:
https://github.com/GoesToEleven/golang-web-dev
或者看看我写的web教程《GoWeb开发实战(Beego框架实现项目)》:
https://www.chaindesk.cn/witbook/17
step3:框架和项目
老司机带你飞系列:
https://github.com/happyer/distributed-computing
还有我写的Gin框架的教程:《Gin框架开发与实战》
https://www.chaindesk.cn/witbook/19
对了, 我还写了一个爬虫的:《golang实现网络爬虫》
推荐阅读:
茹姐:go语言如何入门?三分钟了解Go语言的前世今生
茹姐:go语言基础入门教程:Go语言logo和版本
茹姐:go入门如何入门?入门学习教程系列:Go语言的核心特性
茹姐:转行IT该学哪门编程语言?Go语言和Java、Python等其他语言的对比分析
由于安全性高、语法简单、编译快速等诸多特点,Go语言人气日渐高涨,越来越多的大公司开始使用Go语言,包括Google、Facebook、腾讯、百度、阿里巴巴、今日头条等等。
万事开头难,所以入门的书籍最好是深入浅出,通俗易懂又饶有趣味。
这本《Go语言趣学指南》就是为初学者量身打造,帮助初学者顺利入门Go语言的!
内容简介:
本书循序渐进地介绍了使用Go语言必需的基础知识,书中的内容首先从变量、循环、分支、类型等基础知识开始,逐渐进阶至函数、方法、收集器和结构,最后再深入到指针、错误处理和并发等高级特性,并且每个单元都包含相应的章节和单元测试。
为了让起步的过程变得更容易一些,书中的所有代码清单和练习都可以在 Go Playground 里面执行,你在阅读这本书的时候甚至不需要安装任何东西。
全书不到300页,初学者读起来真的是毫!无!负!担!
作者在书中列举了大量跟天文以及航天有关的例子,读者不仅可以计算从地球乘坐宇宙飞船航行至火星所需的天数,还可以在火星上放置探测器以便查找生命存在的痕迹,甚至还要想办法改造火星,使它能够适宜人类居住。
书中很多地方都带有可爱的Go语言吉祥物地鼠(gopher)插图,为读者的学习旅途增添乐趣。
无论你是打算使用Go编写大型的并发Web服务,还是只想用Go编写小型脚本和简单的工具,《Go语言趣学指南》这本书都会帮助你打下坚实的基础!
内容简介:
本书分为24章,讲解了使用Go语言编写高质量程序的方法,其内容涵盖了Go语言特性和标准库安装包,Go与JavaScript的对比,Go命令行工具,Go中的基本概念(比如类型、变量、函数、控制结构、指针、接口等),错误处理,Goroutine和通道,Go代码测试,使用Go编写HTTP客户端与服务器,处理JSON和文件,部署Go代码等。
本书适合想要掌握Go语言的零基础读者以及对Go语言感兴趣的程序员学习,还可作为高等院校教授Go语言课程的教材。
内容简介:
本书首先概览了Go语言的诞生和发展历程,从面向过程编程特性入手介绍Go语言的基础用法,让有一定C语言基础的读者可以非常迅速地入门并开始上手用Go语言来解决实际问题,之后介绍了Go语言简洁却又无比强大的面向对象编程特性和并发编程能力,至此读者已经可以理解为什么Go语言是为互联网时代而生的语言。
从实用性角度出发,本书还介绍了Go语言标准库和配套工具的用法,包括安全编程、网络编程、工程管理工具等。
对于希望对Go语言有更深入了解的读者,本书也特别组织了一系列进阶话题,包括语言交互性、链接符号、goroutine机理和接口机制等。
这本书面向的读者是所有打算用Go语言的开发者,主要包括目前使用C、C++、Java、C#的开发人员,甚至一些Python、PHP开发人员也可能转为 Go 程序员。
精选书评:
Go语言具有简洁有力的语言表达能力、强大的系统开发能力、极高的运行效率、卓越的并发和并行能力、优秀的工程管理支持,以及美好的编程体验。我们曾经在其他语言中花费大量气力才能获得的一些能力,在Go中可以轻松得到。
许式伟在Go语言出现后很快就把它用于大型项目,带领七牛团队积累了大量Go编程经验。这本书除了完整介绍Go语言特性以外,还深入剖析了语言实现机制。作为服务器软件开发者和编程语言爱好者,我强烈推荐此书。
——李杰,盛大文学首席架构师
内容简介:
本书从实践出发讲解Go语言的进阶知识。本书共6章:
第1章简单回顾Go语言的发展历史;
第2章和第3章系统地介绍CGO编程和Go汇编语言的用法;
第4章对RPC和Protobuf技术进行深入介绍,并讲述如何打造一个自己的RPC系统;
第5章介绍工业级环境的Web系统的设计和相关技术;
第6章介绍Go语言在分布式领域的一些编程技术。
书中还涉及CGO和汇编方面的知识,其中CGO能够帮助读者继承的软件遗产,而在深入学习Go运行时,汇编对于理解各种语法设计的底层实现是必不可少的知识。此外,本书还包含一些紧跟潮流的内容,介绍开源界流行的gRPC及其相关应用,讲述Go Web框架中的基本实现原理和大型Web项目中的技术要点,引导读者对Go语言进行更深入的应用。
本书适合对Go语言的应用已经有一些心得,并希望能够深入理解底层实现原理或者是希望能够在Web开发方面结合Go语言来实现进阶学习的技术人员学习和参考。
作者:[美]William Kennedy,Brian Ketelsen,Erik St. Martin 译者:李兆海
内容简介:
Go语言结合了底层系统语言的能力以及现代语言的高级特性,旨在降低构建简单、可靠、高效软件的门槛。
本书向读者提供一个专注、全面且符合语言习惯的视角,同时关注语言的规范和实现,涉及的内容包括语法、类型系统、并发、管道、测试,以及其他一些主题。
本书适合有一定其他编程语言经验,想要开始学习Go 语言或者更深入了解Go 语言及其内部机制的中级开发者。
内容简介:
本书首先介绍了Go语言的优势特性、安装设置方法、工程结构、标准命令和工具、语法基础、数据类型以及流程控制方法,接着阐述了与多进程编程和多线程编程有关的知识,然后重点介绍了goroutine、channel以及Go提供的传统同步方法,之后通过一个完整实例——网络爬虫框架进一步阐述Go语言的哲学和理念,同时分享作者在多年编程生涯中的一些见解和感悟。
本书适用于有一定计算机编程基础的从业者以及对Go语言编程感兴趣的爱好者,非常适合作为Go语言编程进阶教程。
精选书评:
Go语言的掌握过程是一个渐进过程,需要一本实战型的百科全书来应对。我一直和团队推荐这本《Go并发编程实战》,反馈好评度高。现在第2版推出,继续强力推荐!
——肖德时,数人云联合创始人 & CTO
由于Go语言拥有优异的并发编程支持、函数式编程、简洁且极具可读性的语法以及灵活且清晰的包管理系统等特点,使用Go语言进行Web开发已经日益流行。
内容简介:
本书将教读者运用现代化设计理念构建Go Web应用的方法。
阅读本书能让读者学会如何通过依赖注入设计模式来编写测试替身,如何在Web应用中使用并发特性,还有如何在Web服务中创建以及处理JSON数据和XML数据。除此之外,读者还将学会如何尽可能地减少应用对外部框架的依赖,并了解大量与应用测试以及应用部署有关的有价值的生产技术。
Docker是一个开源的应用容器引擎,开发者可以利用Docker打包自己的应用以及依赖包到一个可移植的容器中,然后发布到任何流行的Linux机器上,也可以实现虚拟化。
Go语言部署简单,对第三方的依赖少,这使Go语言成为开发Docker的首选语言。
内容简介:
这是一本关于Docker的图书。本书的宗旨是从零开始学习Docker,因此读者无须任何前置知识储备。
全书分为17章,从 Docker 概览和 Docker 技术两部分进行全面解析,深入浅出地介绍了 Docker 的相关知识,清晰详细的操作步骤结合大量的实际代码帮助读者学以致用,将Docker知识应用到真实的项目开发当中。
本书适合对Docker感兴趣的入门新手、Docker技术开发人员以及运维人员阅读,也可作为Docker认证工程师考试的参考图书。
内容简介:
这是一本带领读者进入Docker世界的入门书。本书专注于Docker 1.9及以上版本,指导读者完成Docker的安装、部署、管理和扩展,带领读者经历从测试到生产的整个开发生命周期,让读者了解Docker适用于什么场景。书中先介绍Docker及其组件的基础知识,然后介绍用Docker构建容器和服务来完成各种任务:利用Docker为新项目建立测试环境,演示如何使用持续集成的工作流集成Docker,如何构建应用程序服务和平台,如何使用Docker的API,如何扩展Docker。
精选书评:
本书系统而又深入浅出地介绍了与Docker部署和应用相关的各个方面,体现了Docker的最新进展,并附有大量详尽的实例。无论系统架构师、IT决策者,还是云端开发人员、系统管理员和运维人员,都能在本书中找到所需的关于Docker的内容。本书非常适合作为进入Docker领域的第一本书。
——商之狄,微软开放技术(中国)首席项目经理
内容简介:
本书由浅入深地讲解了Docker的相关内容,涵盖从开发环境到DevOps流水线,再一路到生产环境的整个落地过程以及相关的实用技巧。书中介绍Docker的核心概念和架构,以及将Docker和开发环境有机、高效地结合起来的方法,包括用作轻量级的虚拟机以及构建和宿主机编排、配置管理、精简镜像等。不仅如此,本书还通过“问题/解决方案/讨论”的形式,将“Docker如何融入DevOps流水线”“如何在生产环境落地”等一系列难题拆解成101个相关的实用技巧,为读者提供解决方案以及一些细节和技巧方面的实践经验。阅读本书,读者将学到的不只是Docker,还包括持续集成、持续交付、构建和镜像管理、容器编排等相关领域的一线生产经验。本书编写时一些案例参考的Docker版本是Docker 1.9。
《Docker实践》要求读者具备一定的容器管理和运维的基础知识,适合想要将Docker投入实践的相关技术人员阅读,尤其适合具有中 高 级DevOps和运维背景的读者阅读。
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。