最近突然对Go语言产生了兴趣,主要是因为在使用python的时候遇到了一些不爽的问题,然后发现了Go。Go是Google出的一个动态语言,语法和C++接近性能也非常的好,而且还支持编译成exe发布,并且不依赖任何虚拟机(其实是打包在exe里面了),这种好语言怎么能够错过?所以便一时兴起,开始学习了起来。由于本人还处于异常小白的阶段,所以文章中可能不免有些错误,欢迎大家各种指正。

安装Go

前往Go语言的官方网站:http://golang.org/, 下载对应平台的安装包。如果是x86的系统可以就下载i386的,如果是x64的系统,那么就安装amd64的就可以了。另外Go语言在Windows下 的的安装包有两种:msi和zip的。zip的是免安装的,解压在配置一些环境变量之后就可以使用,msi的则是安装包版本的,安装的时候会设置好对应的 环境变量。为了方便,我就下了x64上的msi安装包:go1.1.2.windows-amd64.msi。下好安装包后,安装过程就很简单了,下一步 到底就好了。 虽然msi会自动配置一些环境变量,但是本人在安装完之后还是遇到了部分环境变量丢失的情况,所以在安装完Go之后,我们最后还是检查一些所有的环境变量 是否正常。主要的环境变量有以下几个:

  • GOROOT:Go的安装目录
  • GOPATH:用于存放Go语言Package的目录,这个目录不能在Go的安装目录中
  • GOBIN:Go二进制文件存放目录,写成%GOROOT%\bin就好
  • GOOS:操作系统
  • GOARCH:指定系统环境,i386表示x86,amd64表示x64
  • PATH:需要将%GOBIN%加在PATH变量的最后,方便在命令行下运行Go
  • 我们还可以使用go env来查看所有其他的环境变量的定义

当环境变量都配置正常之后,Go就已经安装完毕了。现在打开命令行,运行go,大家应该就可以看到如下的提示了。

Hello Go!

现在就让我们一起来Hello World吧!

1
2
3
4
5
package main
import "fmt"
func main() {
    fmt.Println("Hello, World!")
}

将上面的程序保存成hello.go,然后在命令行中执行:

1
go run hello.go

Tada!结果就出来了!

而且Go语言还可以将go程序直接编译成exe,再发布出去,相比python更为方便(需要使用py2exe),只需要在命令行中运行:

1
go build hello.go

就可以看到并执行编译好的exe了。

另外,我们还可以看到,这个hello.exe居然有1.5M之多,这个应该是因为go把整个虚拟机都打包到了exe里面的缘故,从exe的依赖上来看,他对go已经完全没有依赖了,只有几个系统的dll了。

IDE

关于IDE每个人的喜好都不同,你可以使用较为独立的开发环境LiteIDE,也可以是VS或者Eclipse,甚至是notepad++,当然更不用说vim和emacs了。在这里,介绍两种比较常见的IDE:LiteIDE和Eclipse。

LiteIDE

LiteIDE算是集成的非常好Go IDE了,编译,调试,代码补全,功能可谓应有尽有。而且免费,开源,基于QT所以还跨平台。其安装异常简单,从官网(https://code.google.com/p/liteide/)上下载对应平台的安装包,然后解压到指定目录即可。

Eclipse + GoClipse

Eclipse是非常著名的IDE了,所以具体要怎么安装,我就不太多说了,简单介绍一下过程。

  1. http://java.com/上下载并装好最新的JRE
  2. http://www.eclipse.org/上下载最新的Eclipse,解压即可

刚下载下来的Eclipse是不支持Go的,为了让其支持Go语言,我们需要安装一个插件:GoClipse。
项目地址:https://code.google.com/p/goclipse/

安装过程十分简单,只需要在Eclipse中添加一个源:http://goclipse.googlecode.com/svn/trunk/goclipse-update-site/,然后选中GoClipse,安装即可,如下图。

安装完之后,重启Eclipse,我们便可以使用Eclipse来编写Go语言的程序了。

GoCode

使用GoClipse写代码的时候,我们会发现其没有代码补全,为了增加代码补全,我们需要安装gocode。LiteIDE就不需要了,因为其已经内置了gocode。

GoCode是host在github上,使用go写的用来做go语言代码补全的工程,项目地址是:https://github.com/nsf/gocode,里面有非常详细的安装方法。由于go内置了和包管理器类似的工具,所以安装方式也就很简单了。

  1. 安装git:由于安装过程中由于需要用到git,所以需要先安装msysgit或者cygwin,如果你觉得这样很麻烦,有一个更为简单的方法:安装github for windows:http://windows.github.com/
  2. 启动git shell,并运行:go get -u -ldflags -H=windowsgui github.com/nsf/gocode。
  3. 现在到%GOBIN%目录下看一下,就会发现有gocode.exe了。

接下来就需要配置一下Eclipse。打开Windows->Preferences,找到Go->Gocode标签,设置好gocode.exe的路径即可。

完成,现在好好写代码吧。

Go语言学习笔记(一) : 搭建Windows下的Go开发环境的更多相关文章

  1. 搭建windows下的odoo开发环境

    odoo运行环境的必须要要求是 python环境 postgreSQL数据 数据库可以安装在别的机器上,比如服务器:当然对于开发环境,通常,数据库与代码调试安装在同一台机器上. 首先安装 postgr ...

  2. Android学习笔记03-搭建Win8下的Android开发环境

    一  配置环境变量 (绿色文字标出代码,路径换为自己的SDK路径) ANDROID_HOME =  C:\software\adt-bundle-windows-x86_64-20140702\sdk ...

  3. 搭建Windows下Java Web开发环境

      概要 1.SSH开发相关软件及开发包下载2.软件安装及相关设置3.最简单的Web程序 1.软件下载 在D盘建一个目录JavaTools,用来存放下载的软件和开发包.(本教程将使用D盘,你也可以使用 ...

  4. windows下vue.js开发环境搭建教程

    这篇文章主要为大家详细介绍了windows下vue.js开发环境搭建教程,具有一定的参考价值,感兴趣的小伙伴们可以参考一下 最近,vue.js越来越火.在这样的大浪潮下,我也开始进入vue的学习行列中 ...

  5. Windows下C,C++开发环境搭建指南

    Windows下C,C++开发环境搭建指南 前情提要 基于近一段时间很多网友发邮件反馈,说一些项目编译出现问题,诸如此类的情况. 就觉得很有必要写一篇C,C++开发环境的小指南,统一回复. 1.君欲善 ...

  6. [转]MonkeyRunner在Windows下的Eclipse开发环境搭建步骤(兼解决网上Jython配置出错的问题)

    MonkeyRunner在Windows下的Eclipse开发环境搭建步骤(兼解决网上Jython配置出错的问题)   网上有一篇shangdong_chu网友写的文章介绍如何在Eclipse上配置M ...

  7. 转:Windows下的PHP开发环境搭建——PHP线程安全与非线程安全、Apache版本选择,及详解五种运行模式。

    原文来自于:http://www.ituring.com.cn/article/128439 Windows下的PHP开发环境搭建——PHP线程安全与非线程安全.Apache版本选择,及详解五种运行模 ...

  8. Windows下的PHP开发环境搭建——PHP线程安全与非线程安全、Apache版本选择,及详解五种运行模式。

    今天为在Windows下建立PHP开发环境,在考虑下载何种PHP版本时,遭遇一些让我困惑的情况,为了解决这些困惑,不出意料地牵扯出更多让我困惑的问题. 为了将这些困惑一网打尽,我花了一下午加一晚上的时 ...

  9. windows下python web开发环境的搭建

    windows下python web开发环境: python2.7,django1.5.1,eclipse4.3.2,pydev3.4.1 一. python环境安装 https://www.pyth ...

随机推荐

  1. phpcms(3) V9 常用函数 及 代码整理(转)

    转自http://www.cnblogs.com/Braveliu/p/5103918.html 常用函数 及 常用代码 总结如下 <;?php //转换字符串或者数组的编码 str_chars ...

  2. 关于Linux 交互(用户操作接口)

    Linux 系统提供两种基本接口给用户操作:命令行,图形界面. 不同接口也有相应的访问终端. 一.命令行 Command Line Linux系统命令行,一般指 Shell. Shell 接受经键盘输 ...

  3. html中发送邮箱的链接

  4. php基础知识【函数】(4)时间date

    一.time() -- 返回当前的 Unix 时间戳 $nextWeek = time() + (7 * 24 * 60 * 60); echo 'Next Week: '. date('Y-m-d' ...

  5. 为什么使用"use strict"可以节约你的时间

    转: http://ourjs.com/detail/52f572bf4534c0d806000024 "use strict"是JavaScript中一个非常好的特性,而且非常容 ...

  6. bzoj1855: [Scoi2010]股票交易

    Description 最近lxhgww又迷上了投资股票,通过一段时间的观察和学习,他总结出了股票行情的一些规律. 通过一段时间的观察,lxhgww预测到了未来T天内某只股票的走势,第i天的股票买入价 ...

  7. winform窗体——布局方式

    一.默认布局 ★可以加panel,也可以不加: ★通过鼠标拖动控件的方式,根据自己的想法布局.拖动控件的过程中,会有对齐的线,方便操作: ★也可选中要布局的控件,在工具栏中有对齐工具可供选择,也有调整 ...

  8. Oracle数据库基础知识_字符串操作相关2

    6.LPAD,RPAD 作用:左/右边的字符串填充一些特定的字符语法: LPAD(string , n, [pad_String])          string:可是字符或者参数          ...

  9. Promise 让异步更优

    每个异步方法都返回一个Promise 更优雅. then方法 每一个Promise  都有一个叫then 的方法, 接受一对callback    被解决时调用,resolve, 被拒绝   reje ...

  10. cf D. Physical Education and Buns

    http://codeforces.com/contest/394/problem/D 题意:给你n个数,然后通过操作使得这n个数变为一个等差数列,操作是可以经过小于等于k次加1或减去1,要使得k尽量 ...