前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >go语言学习之环境安装(一)

go语言学习之环境安装(一)

原创
作者头像
暮雨
修改2018-10-15 17:15:02
5340
修改2018-10-15 17:15:02
举报
文章被收录于专栏:云端漫步云端漫步

go语言介绍

go语言出身豪门,有IT界三位大佬合作开发。是一种C系语言。具有高并发的特性。性能优越。

go语言在云计算领域有着极大的市场空间,在云计算领域。明星项目,docker,eted, kubernetes,harbor皆使用go编写。go强大的网络编程,原生支持高并发。

go的优点

  • 可直接编译成机器码,不依赖其他库
  • 静态类型语言,但是有动态语言的感觉,静态类型的语言就是可以在编译的时候检查出来隐藏的大多数问题,动态语言的感觉就是有很多的包可以使用,写起来的效率很高
  • 语言层面支持并发,这是Go语言的最大的特色,天生支持并发
  • 内置runtime,支持垃圾回收机制
  • 简单易学,有C语言的基因,Go语言有25个关键字,但是表达能力极强
  • 丰富的标准库,内置大量库,特别是网络库非常强大
  • 内置强大工具,使review变的简单,可以使代码格式一模一样
  • 跨平台编译,可以不依赖与系统信息
  • 内置C支持

go存在的不足

当然go相对其它语言也有很多的不足,可能最大的一点就是很多程序员入门时遇到的一个问题GOPATH,需要配置工作空间。

另一个大的不足之处就是第三方包的管理,虽然现在有一些方案,但都不十分完美。

多版本环境安装

go运行环境安装文章很多,在此介绍一种多版本管理的安装方式gvm.

gvm 是一个go语言多版本管理工具,可以方便的切换语言版本环境。

安装gvm

代码语言:txt
复制
bash < <(curl -s -S -L https://raw.githubusercontent.com/moovweb/gvm/master/binscripts/gvm-installer)  

使用 GVM

代码语言:txt
复制
$gvm
Usage: gvm [command]

Description:
  GVM is the Go Version Manager

Commands:
  version    - print the gvm version number
  get        - gets the latest code (for debugging)
  use        - select a go version to use (--default to set permanently)
  diff       - view changes to Go root
  help       - display this usage text
  implode    - completely remove gvm
  install    - install go versions
  uninstall  - uninstall go versions
  cross      - install go cross compilers
  linkthis   - link this directory into GOPATH
  list       - list installed go versions
  listall    - list available versions
  alias      - manage go version aliases
  pkgset     - manage go packages sets
  pkgenv     - edit the environment for a package set

GOPATH管理

在多项目环境下开发时,常设置多个workspace,通过gvm可以动态的切换环境变量。

  • 创建pkgset
代码语言:txt
复制
 gvm pkgset create dev1 

``



- 切换到该配置下

gvm pkgset use dev1

代码语言:txt
复制
- 设置GOPATH

gvm pkgenv dev1

会显示dev1的相关环境变量的配置信息,修改其中的GOPATH和PATH的环境变量的信息,将要设置的workspace的工作目录的路径添加到对应配置信息的前边。

代码语言:txt
复制

原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。

如有侵权,请联系 cloudcommunity@tencent.com 删除。

原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。

如有侵权,请联系 cloudcommunity@tencent.com 删除。

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • go语言介绍
  • 多版本环境安装
相关产品与服务
容器服务
腾讯云容器服务(Tencent Kubernetes Engine, TKE)基于原生 kubernetes 提供以容器为核心的、高度可扩展的高性能容器管理服务,覆盖 Serverless、边缘计算、分布式云等多种业务部署场景,业内首创单个集群兼容多种计算节点的容器资源管理模式。同时产品作为云原生 Finops 领先布道者,主导开源项目Crane,全面助力客户实现资源优化、成本控制。
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档