一。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 //显示版本信息即代表成功

注意:上述修改用户级~/.profile文件

2。mac下的安装方法

mac上安装GO环境

Go安装和配置+GoLand安装和使用之完整教程

【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 框架中文文档教程

Beego构建完整web项目

Go语言入门篇-环境准备的更多相关文章

  1. 优雅的go语言--入门篇

    1.特点 1.静态类型,编译型的开源语言 2.脚本华的语法,支持多种编程范式(函数式&面向对象) 3.原生,给力的并发编程的支持 2.优势 1.脚本化的语法 2.静态类型+编译型,程序运行速度 ...

  2. Go语言入门篇-gRPC基于golang & java简单实现

    一.什么是RPC 1.简介: RPC:Remote Procedure Call,远程过程调用.简单来说就是两个进程之间的数据交互. 正常服务端的接口服务是提供给用户端(在Web开发中就是浏览器)或者 ...

  3. Go语言入门篇-使用Beego构建完整web应用

    使用Beego构建完整web应用 一.GO简介(Beego应用go编写) 1.为什么用GO (1).语法简单 (2).简洁的并发 (3).开发和执行效率快(编译型语言) 2.GO语言环境 下载go & ...

  4. 明解C语言 入门篇 第五章答案

    练习5-1 /* 依次把1.2.3.4.5 赋值给数组的每个元素并显示(使用for语句) */ #include <stdio.h> int main(void) { int i; ]; ...

  5. Go语言入门篇-JSON&http调用

    一.Decoder /(一)Decoder func DecoderExample(){ const jsonStream = ` { "Name" : "Ed" ...

  6. Go语言入门篇-网络经验

    Go语言学习手册 golang*看云  golang圣经 wuYinIO 1.go语言开发中的坑 go新手容易犯的三个致命错误   Golang 需要避免踩的 50 个坑 2.go语言数据类型 map ...

  7. Go语言入门篇-项目常见用法&语法

    一.导入包用法: //_表示仅执行该包下的init函数(不需要整个包导入) import _ "git.xx.xx/baases/identity/cachain/version" ...

  8. Go语言入门篇-基本数据类型

    一.程序实体与关键字 任何Go语言源码文件都由若干个程序实体组成的.在Go语言中,变量.常量.函数.结构体和接口被统称为“程序实体”,而它们的名字被统称为“标识符”. 标识符可以是任何Unicode编 ...

  9. Go语言入门篇-命令 与 语法

    一.命令基础 1. go run : 用于运行命令源码文件(如:go run helloworld.go) 只能接受一个命令源码文件以及若干个库源码文件作为文件参数 其内部操作步骤: (1)先编译源码 ...

随机推荐

  1. 常用的webpack 配置

    const path = require('path'); let HtmlWebpackPlugin = require('html-webpack-plugin'); let VueLoaderP ...

  2. 微信小程序-饮食日志_开发日志

    针对假期作业为父母或者身边的人做一款“小软件”这个课题,由于对 android 开发不熟悉 ,所以决定做一款微信小程序. 项目名称:饮食管理日志 目的:身边的人群对摄入食物热量及消耗不清楚,对健康需求 ...

  3. 【NOIP2016提高组复赛day2】天天爱跑步

    题目 小 C 同学认为跑步非常有趣,于是决定制作一款叫做<天天爱跑步>的游戏. <天天爱跑步>是一个养成类游戏,需要玩家每天按时上线,完成打卡任务. 这个游戏的地图可以看作一棵 ...

  4. 使用net命令启动MongoDB服务发生系统错误,返回值为5

    使用net命令启动MongoDB服务发生系统错误,返回值为5 错误的截图如下: 解决的方案是以管理员的身份运行命令窗口,参考如下: https://www.cnblogs.com/fanblogs/p ...

  5. 对html2canvas的研究

    介绍 该脚本允许您直接在用户浏览器上截取网页或部分网页的“屏幕截图”.屏幕截图基于DOM,因此它可能不是真实表示的100%准确,因为它没有制作实际的屏幕截图,而是根据页面上可用的信息构建屏幕截图. 这 ...

  6. new/delete和malloc/free区别与联系

    1.基本概念 malloc/free (1).函数原型及说明 void *malloc(long NumBytes): 该函数分配了NumBytes个字节,并返回了指向这块内存的指针.如果分配失败,则 ...

  7. OI多项式 简单学习笔记

    咕咕咕 先开个坑(其实是存模板来了) 一些特别简单的前置东西qwq 复数的计算 复数相加:向量相加,复数相乘.复数相乘:模长相乘,旋转量相加(就是复平面坐标轴逆时针旋转的角度) (当然也可以直接使用c ...

  8. javac不是内部或外部命令在win10上的解决方案

    Path环境变量能够让你在任何路径都能使用命令,可能你百度谷歌了各种方案都无法解决javac无法使用的问题,那么你可以试试如下解决方案: 首先博主配置了JAVA_HOME 参数为 C:\Program ...

  9. [BZOJ2870]最长道路tree:点分治

    算法一:点分治+线段树 分析 说是线段树,但是其实要写树状数组卡常. 代码 #include <bits/stdc++.h> #define rin(i,a,b) for(register ...

  10. jconsole性能监控

    1.进入tomcat bin目录 vim catalina.sh #!/bin/sh下面加入: #!/bin/shJAVA_OPTS="-Dcom.sun.management.jmxrem ...