简介

go语言是由Google进行维护的一个编程语言,发布自2009年。其以良好的编程风格、优秀的并发机制被广大的技术人员所接受。

使用go语言开发的优秀的产品:

  • Docker
  • gocode
  • lime

go语言的优秀框架:

  • Beego --- web framework
  • Martini --- web framework base on Restful
  • mgo --- data driver fot mongodb
  • gorp --- orm
  • termbox-go --- UI in command line
  • golua --- use lua in go
  • nsq --- message queue

安装go

官方网站下载最新的go安装包,并开始安装。

Windows

打开从官网下载的MSI安装文件,然后打开安装文件进行安装即可。

设置环境变量

GOROOT

GOROOT用于指定Go的__安装目录__,比如我们安装再Windows下面的C:\go目录,我们需要再Windows的环境变量PATH中加入c:\go\bin以便可以使用go。

GOPATH

GOPATH用于指定我们的__开发目录__,比如我们的项目文件主要在e:\workplace中,我们需要创建环境变量GOPATH然后再设置环境变量的值为e:\workplace

Hello World!

GOROOT\src文件夹中创建hw文件夹,并在其中创建main.go文件:

package main

import "fmt"

func main(){
fmt.print("Hello, World!")
}

在命令行中执行go install hw

配置开发环境

这里我们使用Sublime Text 3 + gocode + gosublime作为我们的开发环境

首先我们需要下载Sublime Text 3,然后安装。

然后我们需要启用Sublime Text 3的包管理工具,我们可以使用Ctrl + ~命令打开命Sublime Text 3的命令行工具,然后输入如下命令:

import urllib.request,os; pf = 'Package Control.sublime-package'; ipp = sublime.installed_packages_path(); urllib.request.install_opener( urllib.request.build_opener( urllib.request.ProxyHandler()) ); open(os.path.join(ipp, pf), 'wb').write(urllib.request.urlopen( 'http://sublime.wbond.net/' + pf.replace(' ','%20')).read())

再之后,我们就可以使用Ctrl + Shift + P的方式打开Sublime Text 3的包管理工具进行包管理了。

然后我们需要安装gocode,gocode主要用于我们在Sublime Text 3中的代码提示以及自动格式化代码的功能。

go get -u github.com/nsf/gocode

获取到gocode之后,我们需要对其进行编译

go install github.com/nsf/gocode

编译后,我们可以再GOPATH\bin中找到gocode的可执行文件,我们需要把这个文件放到GOROOT\bin当中,以使其生效。

ps: Windows中要使用go get我们需要安装git

最后,我们需要安装Sublime Text 3的插件gosublime,以便启用进行代码提示等功能。

『Golang』Go简介以及环境搭建的更多相关文章

  1. 1、Golang基础--Go简介、环境搭建、变量、常量与iota、函数与函数高级

    1 Go语言介绍 1 golang-->Go--->谷歌公司 2009年 golang:指go语言,指的go的sdk goland:软件,ide:集成开发环境 Java写的 2 Go是静态 ...

  2. 简介及环境搭建跑通Hello

    简介及环境搭建跑通Hello Spring Spring是一个开放源代码的设计层面框架,他解决的是业务逻辑层和其他各层的松耦合问题,因此它将面向接口的编程思想贯穿整个系统应用.是为了解决企业应用程序开 ...

  3. Redis入门很简单之一【简介与环境搭建】

    Redis入门很简单之一[简介与环境搭建] 博客分类: NoSQL/Redis/MongoDB redisnosqlmemcached缓存中间件  [Redis简介] <一>. NoSQL ...

  4. go语言之行--简介与环境搭建

    一.Go简介 Go 是一个开源的编程语言,它能让构造简单.可靠且高效的软件变得容易. Go是从2007年末由Robert Griesemer, Rob Pike, Ken Thompson主持开发,后 ...

  5. 1.SpringMVC的简介和环境搭建

    SpringMVC的简介: SpringMVC 和 Struts一样是一个MVC框架,和Spring无缝连接,和struts2类似, Spring MVC属于SpringFrameWork的后续产品, ...

  6. 一、springBoot简介与环境搭建

    前言:学习计划 1.springBoot环境搭建 2.springBoot入门 3.srpingBoot整合Mybatis 4.springBoot整合Redis,Redis集群 5.springBo ...

  7. Monkey简介及环境搭建(1)

    简介:Monkey是Android SDK自带的测试工具,是一个命令行工具,可以运行在模拟器中或者实际设备中,它向系统发送伪随机的用户事件流(如按键输入,触摸屏输入,手势输入等),实现对正在开发的应用 ...

  8. PyQT5速成教程-1 简介与环境搭建

    本文由 沈庆阳 所有,转载请与作者取得联系! PyQt简介 一个良好的界面是人机交互中十分重要的一环. Python作为脚本语言,起初并未拥有GUI开发的部分.但随着其开放的扩展性,使得Python不 ...

  9. Mybatis简介、环境搭建和详解

    简介: 1.Mybatis  开源免费框架,原名叫iBatis,2010在google code,2013年迁移到github 2.作用: 数据访问层框架 2.1  底层是对JDBC的封装 3.myb ...

随机推荐

  1. 如何设置活动监视器中的可见作业数能显示更长范围之内的作业(如何让bpdbjobs/Active Monitor显示更多作业信息)

    一.问题:     如何设置可以使得活动监视器中的可见作业数能显示更长范围之内的作业(即NBU软件不要自动删除活动监视器中短时间内(如8天)内的作业记录)? 二.解决方法:      默认情况下在Ac ...

  2. 配置文件和mybatis文件存放位置导致系统启动不了

    1.web.xml <!-- 加载spring容器 --> <context-param> <param-name>contextConfigLocation< ...

  3. iview(DatePicker)时间转入后台少一天 解决方案

    后台注解 前台: 加个事件 @on-change @on-change="getStartTime" getStartTime(starTime) { this.leaveReco ...

  4. Msql数据库连接写一个共有的连接工具

    为了避免在每一个DAO中都需要自行连接connection,有多个DAO里都需要获取数据库的连接,并且在很多项目中都是一样的数据库连接. 所以就可以把获取数据库连接的代码重构到一个类里. 这样做的好处 ...

  5. python -- @classmethod @staticmethod区别和使用

    python中的定义: class MyClass: ... @classmethod  # classmethod的修饰符 def class_method(cls, arg1, arg2, ... ...

  6. HDU 1284 钱币兑换问题(普通型 数量无限的母函数)

    传送门: http://acm.hdu.edu.cn/showproblem.php?pid=1284 钱币兑换问题 Time Limit: 2000/1000 MS (Java/Others)    ...

  7. 极光IM简单接入步骤

    最近生接触了一下android,尝试导入极光的demo到android study 各种错误,然后下载极光生成的项目也是各种错误,感觉好像有点脱离时代了,记得以前用eclipse写android只需要 ...

  8. ffmpeg 从mp4上提取H264的nalu

    转自http://blog.csdn.net/gavinr/article/details/7183499 1.获取数据 ffmpeg读取mp4中的H264数据,并不能直接得到NALU,文件中也没有储 ...

  9. init/loadView/viewDidLoad/initWithNibName/awakeFromNib/initWithCoder的用法

    init/loadView/viewDidLoad/viewDidUnload 这么细节的东西想来大家都不在意,平时也不会去关系,但是在面试时却常常被提到,所以了解viewController的生命周 ...

  10. peripheralStateNotificationCB

    /********************************************************************* * @fn peripheralStateNotifica ...