Go语言入门篇-环境准备
一。GO语言特点
静态类型:首先要明确变量类型,如上所示。
编译型:指GO语言要被编译成机器能识别机器代码。
GO语言开源。
编程范式:支持“函数式”和“面向对象”
GO语言原生的支持并发编程:即GO语言中有一些语法里面有一种方法支持把一些代码片断并发的交给CPU支持。
注意:原生支持和函数库支持的区别。
GO语言的优势:
【1】。脚本化的语法
【2】。静态类型+编译型,程序运行速度快。
静态类型+编译型 >动态类型+解释型 (运行效率)
【3】原生的支持并发编程
使得GO语言在服务端开发上更优势
降低开发,维护成本;程序可以更好的执行。
GO语言劣势:
【1】语法糖没有python和Ruby多。
【2】目前程序运行速度不及C。
GO语言运行效率>c++和java
【3】第三方函数库暂不像绝对主流编程语言那么多。
二。GO语言安装与设置
1。linux下的安装方法
(1)。下载GO压缩包
//进入/user/local目录下面
cd /usr/local //下载go二进制代码包
sudo wget https://dl.google.com/go/go1.9.2.linux-amd64.tar.gz //或者 wget -P /usr/local https://dl.google.com/go/go1.9.2.linux-amd64.tar.gz //将文件下载到指定目录下面
(2)。解压
//直接在/usr/local目录下面解压缩
sudo tar -xzf go1.9.2.linux-amd64.tar.gz //或者 //指定目录解压缩 sudo tar -C /usr/local -xzf go1.9.2.linux-amd64.tar.gz
解压缩后,在/usr/local目录中有一个go目录。
验证安装结果:
//进入go目录下(必须go目录下,因为还未设置环境变量)
cd go //验证安装结果 bin/go version //若显示go的版本号,则代表成功。
(3)。设置环境变量
【1】GOROOT:GO语言的安装目录
export GOROOT=/usr/local/go
【2】GOBIN:GO程序可执行文件目录
export GOBIN=$GOROOT/bin
【2】GOPATH:GO语言工作区的集合
//工作区
export GOPATH=~/goworkspace
【4】PATH:方便使用GO语言命令和程序GO程序的可执行文件。需要追加其值。
export PATH=$PATH:$GOBIN
(4)。验证是否安装成功
//配置文件生效
source ~/.profile //任意目录执行
go version //显示版本信息即代表成功
2。mac下的安装方法
【1】。下载GO
//step1:应用brew安装GO brew install go //step2:查看go目录 cd /usr/local/Cellar //step3:验证是否安装成功 /usr/local/Cellar/go/1.10./libexec bin/go version //输出版本号则代表安装成功
【2】。配置环境变量
//修改用户级环境变量
vim ~/.bash_profile //添加如内容
export GOROOT=/usr/local/Cellar/go/1.10./libexec
export GOBIN=$GOROOT/bin
export GOPATH=/Users/shiyufeng/Documents/kaixinyufeng/GoWorkspace
export PATH=$PATH:$GOBIN:$GOROOT/bin //配置文件生效
source ~/.bash_profile //任意处
go version //显示版本号则代表配置成功。 //也可以使用 echo $GOROOT 输出GOROOT的环境变量路径
验证是否安装成功
配置环境变量
安装成功后,写个测试示例:
手动下载GO版本:https://golang.org/dl/ 配置环境变量
//Step1:下载go https://golang.org/dl/
//Step2:将go解压缩,置于目录/usr/local/go目录下
//Step3:配置环境变量
export GOROOT=/usr/local/go/go1.11.1
export GOBIN=$GOROOT/bin
export GOPATH=/Users/shiyufeng/Documents/kaixinyufeng/goworkspace
export PATH=$PATH:$GOBIN:$GOROOT/bin //step4:任意位置
go version #显示版本号,则代表环境变量配置成功。
三。Goland-IDEA安装
下载Goland: https://www.jetbrains.com/go/
获取注册码地址:http://idea.lanyus.com/
goland需要配置:
1。Edit Configuration:
2.Goland->preferences...
四。安装docker-MAC
安装docker:https://yeasy.gitbooks.io/docker_practice/install/mac.html
ubuntu安装docker参见:https://www.cnblogs.com/kaixinyufeng/p/9426619.html
手动安装
【1】如果需要手动下载,请点击以下链接下载 Stable 或 Edge 版本的 Docker for Mac(本人选Edge版本)
【2】安装docker后,启动docker(小鲸鱼)
【3】打开终端,验证是否安装成功。
$ docker --version
//Docker version 18.06.0-ce, build 0ffa825 $ docker-compose --version
//docker-compose version 1.22.0, build f46880f $ docker-machine --version
//docker-machine version 0.15.0, build b48dc28d //执行
$ docker version $ docker info //上述均成功,则可尝试运行nginx服务
$ docker run -d -p : --name webserver nginx //服务运行后,可以访问 http://localhost,如果看到了 "Welcome to nginx!",就说明 Docker for Mac 安装成功了。
要停止 Nginx 服务器并删除执行下面的命令:
$ docker stop webserver
$ docker rm webserver
五。下载fabric
具体参见:
https://www.cnblogs.com/kaixinyufeng/p/9352997.html
https://www.cnblogs.com/kaixinyufeng/p/9426619.html
六。GO框架
Gin - 高性能 Golang Web 框架的介绍和使用
初学Golang:Gin 框架中文文档教程
Go语言入门篇-环境准备的更多相关文章
- 优雅的go语言--入门篇
1.特点 1.静态类型,编译型的开源语言 2.脚本华的语法,支持多种编程范式(函数式&面向对象) 3.原生,给力的并发编程的支持 2.优势 1.脚本化的语法 2.静态类型+编译型,程序运行速度 ...
- Go语言入门篇-gRPC基于golang & java简单实现
一.什么是RPC 1.简介: RPC:Remote Procedure Call,远程过程调用.简单来说就是两个进程之间的数据交互. 正常服务端的接口服务是提供给用户端(在Web开发中就是浏览器)或者 ...
- Go语言入门篇-使用Beego构建完整web应用
使用Beego构建完整web应用 一.GO简介(Beego应用go编写) 1.为什么用GO (1).语法简单 (2).简洁的并发 (3).开发和执行效率快(编译型语言) 2.GO语言环境 下载go & ...
- 明解C语言 入门篇 第五章答案
练习5-1 /* 依次把1.2.3.4.5 赋值给数组的每个元素并显示(使用for语句) */ #include <stdio.h> int main(void) { int i; ]; ...
- Go语言入门篇-JSON&http调用
一.Decoder /(一)Decoder func DecoderExample(){ const jsonStream = ` { "Name" : "Ed" ...
- Go语言入门篇-网络经验
Go语言学习手册 golang*看云 golang圣经 wuYinIO 1.go语言开发中的坑 go新手容易犯的三个致命错误 Golang 需要避免踩的 50 个坑 2.go语言数据类型 map ...
- Go语言入门篇-项目常见用法&语法
一.导入包用法: //_表示仅执行该包下的init函数(不需要整个包导入) import _ "git.xx.xx/baases/identity/cachain/version" ...
- Go语言入门篇-基本数据类型
一.程序实体与关键字 任何Go语言源码文件都由若干个程序实体组成的.在Go语言中,变量.常量.函数.结构体和接口被统称为“程序实体”,而它们的名字被统称为“标识符”. 标识符可以是任何Unicode编 ...
- Go语言入门篇-命令 与 语法
一.命令基础 1. go run : 用于运行命令源码文件(如:go run helloworld.go) 只能接受一个命令源码文件以及若干个库源码文件作为文件参数 其内部操作步骤: (1)先编译源码 ...
随机推荐
- 4.华为路由交换技术_IP路由选择原理(上)
初始化时,路由表上只有直连路由 查看路由表 严格来讲任何一个具有三层路由功能的设备都有路由表 数据通信往往是双向的的,来回都要考虑. 路由是逐跳的,每一跳都要设置. 实际路由是根据已经分配的网络段进行 ...
- 【优化】SPA项目的基础优化
开启gzip压缩功能 引入CDN 路由懒加载 某些第三方组件按需加载而不是全部加载 较小的图片资源用base64嵌入src中,减少http请求
- gitlab搭建之互备模式
gitlab搭建之互备模式 gitlab搭建之互备模式 前言:gitlab目前默认的部署方式是本地单机部署,为了提高gitlab环境的可靠性和稳定性,必须构建一套互备搭建方案:借助gitolilt ...
- 浅谈Java回收对象的标记和对象的二次标记过程_java - JAVA
文章来源:嗨学网 敏而好学论坛www.piaodoo.com 欢迎大家相互学习 一.对象的标记 1.什么是标记?怎么标记? 第一个问题相信大家都知道,标记就是对一些已死的对象打上记号,方便垃圾收集器的 ...
- jvm——CodeCache
https://juejin.im/post/5c890f21f265da2d993dc692 CodeCache是热点代码的暂存区,经过即时编译器编译的代码会放在这里,它存在于堆外内存.除了JIT编 ...
- PHP入门(四)
1.数组 1. array() 函数用于创建数组 在 PHP 中,有三种类型的数组:数值数组 - 带有数字 ID 键的数组 关联数组 - 带有指定的键的数组,每个键关联一个值 多维数组 - 包含一个或 ...
- 查看有没有绑这个host
1.查看有没有绑这个host ping broker.vs.amap.com
- MoreExecutors工具类使用
MoreExecutors是guava提供的工具类,是对jdk自带的Executors工具类的扩展,主要方法如下: 1.addDelayedShutDown()方法的两个重载: public stat ...
- html area标签 语法
html area标签 语法 作用:带有可点击区域的图像映射 说明:<img> 中的 usemap 属性可引用 <map> 中的 id 或 name 属性(由浏览器决定),所以 ...
- Linux系统安装时分区的介绍
一般来说,在linux系统中都有最少两个挂载点,分别是/ (根目录)及 swap(交换分区),其中,/ 是必须的: 建议挂载的几大目录: /-------根目录,唯一必须挂载的目录.不要有任何的犹豫, ...