学习Go语言的前置知识

前言

Go语言具有以下的特点:

  • 语法简洁,相比其他语言更容易上手,开发效率更高;
  • 自带垃圾回收(GC,不用再手动申请释放内存,能够有效避免 Bug,提高性能;
  • 语言层面的并发支持,让你很容易开发出高性能的程序;
  • 提供的标准库强大,第三方库也足够丰富,可以拿来即用,提高开发效率;
  • 可通过静态编译直接生成一个可执行文件,运行时不依赖其他库,部署方便,可伸缩能力强;
  • 提供跨平台支持,很容易编译出跨各个系统平台直接运行的程序。

对比其他语言,Go 的优势也显著。比如 Java 虽然具备垃圾回收功能,但它是解释型语言,需要安装 JVM 虚拟机才能运行;C 语言虽然不用解释,可以直接编译运行,但是它不具备垃圾回收功能,需要开发者自己管理内存的申请和释放,容易出问题。而 Go 语言具备了两者的优势!

正是Go具备JavaC不具备的能力,Go目前越来越多地用在微服务云原生游戏领域。

Go的生态圈

方向

名称

项目地址

Web框架

beego

https://github.com/astaxie/beego

gin

https://github.com/gin-gonic/gin

echo

https://github.com/labstack/echo

Iris

https://github.com/labstack/echo

微服务框架

Istio

https://istio.io/

go kit

http://gokit.io/

micro

https://micro.dev/

容器编排

Kubernetes

https://github.com/kubernetes/kubernetes

swarm

https://github.com/docker/classicswarm

服务发现

consul

https://github.com/hashicorp/consul

etcd

https://github.com/coreos/etcd

中间件

zinx(长链接框架)

https://github.com/aceld/zinx

gPRCRPC框架)

https://grpc.io/

nsq(消息队列)

https://github.com/nsqio/nsq

codisredis集群)

https://github.com/CodisLabs/codis

leaf(游戏服务器)

https://github.com/name5566/leaf

存储引擎

TiDB

https://github.com/pingcap/tidb

爬虫框架

goquery

https://github.com/PuerkitoBio/goquery

学习资料

官网无法下载的,可以去https://studygolang.com/dl 下载go的安装包。

名称

地址

Go中文社区

https://studygolang.com/topics

Go 程序设计

https://www.yuque.com/qyuhen/go

Go语言圣经

https://books.studygolang.com/gopl-zh/

Go语言高级编程

https://chai2010.cn/advanced-go-programming-book/

Go 语言高性能编程

https://geektutu.com/post/high-performance-go.html

#笔记#
全部评论
go语言可以用在linux下的脚本使用吗?
点赞
送花
回复
分享
发布于 2022-08-19 19:00 陕西

相关推荐

猿辅导 Java后端日常实习 800一天
点赞 评论 收藏
转发
投递字节跳动等公司10个岗位
点赞 评论 收藏
转发
5 31 评论
分享
牛客网
牛客企业服务