在开始环境搭建之前,我们先一起来看看:

Go有什么优势:

  • 不用虚拟机,它可直接编译成机器码,除了glibc外没有其他外部依赖,部署十分方便,就是扔一个文件就完成了。

  • 天生支持并发,可以充分的利用多核,很容易实现并发。

  • 25个关键字,但是表达能力很强大,几乎支持大多数你在其他语言见过的特性:继承、重载、对象等。

  • 内置强大的工具,Go语言里面内置了很多工具链,最好的应该是gofmt工具,自动化格式化代码,能够让团队review变得更加简单。

  • 跨平台编译,如果你在windows上想生成linux上的可执行文件,只需要一条命令(set GOOS=linux),即可以做到windows系统编译linux的应用。

Go适合做什么

  • 服务器编程,用Go来做很合适,例如处理日志、数据打包、虚拟机处理、文件系统等

  • 分布式系统,数据库代理器等

  • 网络编程,这一块目前应用最广,包括Web应用、API应用、下载应用

Go成功的项目

  • nsq:bitly开源的消息队列系统,性能非常高,目前他们每天处理数十亿条的消息

  • docker:基于lxc的一个虚拟打包工具,能够实现PAAS平台的组建

  • packer:用来生成不同平台的镜像文件,例如VM、vbox、AWS等,作者是vagrant的作者

  • skynet:分布式调度框架

  • doozer:分布式同步工具,类似ZooKeeper

  • heka:mazila开源的日志处理系统

  • cbfs:couchbase开源的分布式文件系统

  • tsuru:开源的PAAS平台,和SAE实现的功能一模一样

  • groupcache:memcahe作者写的用于Google下载系统的缓存系统

  • god:类似redis的缓存系统,但是支持分布式和扩展性

如果你觉得Go语言很强大,也想去学习它,那么现在可以跟我一起来学习环境搭建过程。

1、 相关软件准备:

  • Git:一个开源的分布式版本控制系统,可以有效、高速的处理从很小到非常大的项目版本管理,分为32和64位安装包。

  • Go:go语言安装包,分为32和64位。

  • liteIde:国人开发的一款简单、开源、跨平台的 Go 语言IDE。

2、 安装go安装包:

1、根据操作系统是32位或64位选择对应的go1.8.3.windows-XXX.msi文件,双击开始安装,一路下一步,即可完成安装。安装到选择目标文件夹时,可以选D盘。

2、配置环境变量。选择计算机 -> 属性 -> 高级系统设置 -> 环境变量,看系统环境变量里是否有GOROOT(默认刚才安装好后GOROOT是设置好了的,即刚才的安装目录)。为了后续工作的方便,这里配置一下GOPATH,在环境变量里新增一个GOPATH系统变量,如下图所示:

最后在Path中在添加上” %GOPATH%bin”(默认go安装包安好,这个也是设置好的)如下图所示:

然后确定就行。

3、在控制台中查看Go语言环境是否安装完成,windows中,用快捷键

win + R,输入cmd,打开命令提示符,输入“go”,出现下图即可:

顺带说一句,Go程序的目录结构是在GOPATH文件夹下的,分为bin, pkg, 和src三个子文件夹 。

  • bin文件夹:Go的每个项目生成的二进制可执行程序。windows下会生成.exe文件,linux下会生成可执行文件。Go的最大特色之一就是可移植性,就是说,当生成一个demo.exe之后,将这个exe文件放在任意一台windows系统上(即使没有安装go安装包),也是可以执行的。这是让PHP,Python等脚本语言望成莫及的。

  • pkg文件夹:第三方库。里面存放你的项目中引用的第三方库(非官方已经提供的库)

  • src文件夹:每个次级文件夹就是代表一个go项目,里面存放源程序。

3、 Go语言开发IDE工具LiteIDE的使用:

解压我们下载好的 liteidex32.1.windows-qt5 ,把liteide文件夹放在你喜欢的位置,找到\LiteIDE\bin路径下的liteide.exe,非常帅气的一个太极图标,双击运行即可。

对于LiteIDE,有一些简单的设置:(以windows10的64位版本为例)

1、如下,选择win64,这个选项决定编译后生成哪个平台的可执行文件。这里选择win64,编译后将生成exe文件。

2、点击如下图标,查看GOROOT的路径是否为Go的安装路径。

3、点击如下图标查看GOPATH,确定系统GOPATH是否为刚才环境变量里设置的GOPATH,点击确定。

然后重启liteIDE即可。

国人大牛Visualfc制作的这个IDE真的很帅气,智能提示、各种调试都有,速度也很快。

4、 Git工具安装:

双击安装我们下载的Git-2.15.1.2-XX-bit.exe,一路下一步安装。安装完成后,鼠标右键可以看到如下图标即可:

5、 Beego框架环境搭建:

Beego这个框架是国人大牛谢孟军写的轻量级应用框架,在他的书《Go Web编程》中就有对这个框架的说明,各种写的好。

项目地址如下:

https://github.com/astaxie/beego

在前面我们安装好了Git,这下要发挥作用了。

1、安装beego

右键点击“Git Bash”,输入go get -u -v github.com/astaxie/beego 如下图:

等一会儿即可。安装完成后,在GOPATH路径下(我这里GOPATH的路径是
D:\SoftwareAndProgram\program\Go\Development)在D:\SoftwareAndProgram\program\Go\Development\pkg\windows_amd64\github.com\和D:\SoftwareAndProgram\program\Go\Development\src\github.com\路径下能看到astaxie文件夹,还有下级beego文件夹。

2、安装bee工具(框架生成工具)

为了方便的生成框架,右键点击“Git Bash”,输入go get -u -v github.com/beego/bee,如下图:

同样也是等一会儿即可。完成后,在D:\SoftwareAndProgram\program\Go\Development\src\github.com\beego路径下能看到bee文件夹。

同时,在GOPATH路径下的src同级的bin中,有“bee.exe”文件。

3、使用bee工具生成框架工程代码

在“开始”中找到“命令提示符”,右键“以管理员身份运行”,先进入到GOPATH的bin路径下,再输入“bee new 工程名”,如下图所示:

在GOPATH的src目录下会生成以刚才的工程名命名的文件夹。这样一个Beego框架的工程就生成成功了。

4、使用LiteIDE打开运行。

LiteIDE的“文件”中找到“打开目录”,找到刚才生成的工程文件夹,如下图:

点击“选择文件夹”,加载整个工程。

清晰的MVC一目了然。Ctrl+R编译并执行。当然你也可以各种设置断点各种调试。

打开浏览器,输入“http://127.0.0.1:8080”就看到了运行的结果

要结束运行,点击LiteIDE上的“编译输出”后面的红色小按钮即可。

本文用到的软件,可以关注公众号后,后台回复:go环境搭建 ,获得。

参考自:http://www.cnblogs.com/iflytek/p/3366282.html

并加以修正。



本公众号免费提供csdn下载服务,海量IT学习资源,如果你准备入IT坑,励志成为优秀的程序猿,那么这些资源很适合你,包括但不限于java、go、python、springcloud、elk、嵌入式 、大数据、面试资料、前端 等资源。同时我们组建了一个技术交流群,里面有很多大佬,会不定时分享技术文章,如果你想来一起学习提高,可以公众号后台回复【2】,免费邀请加技术交流群互相学习提高,会不定期分享编程IT相关资源。


扫码关注,精彩内容第一时间推给你

Go语言及Beego框架环境搭建的更多相关文章

  1. Go语言及Web框架Beego环境无脑搭建

    [原]Go语言及Web框架Beego环境无脑搭建 本文涉及软件均以截至到2013年10月12日的最新版本为准 1. 相关软件准备: 1) go1.2rc1.windows-386.msi,对应32位w ...

  2. Go语言及Web框架Beego环境

    Go语言及Web框架Beego环境无脑搭建 [原]Go语言及Web框架Beego环境无脑搭建 本文涉及软件均以截至到2013年10月12日的最新版本为准 1. 相关软件准备: 1) go1.2rc1. ...

  3. eclipse中SSH三大框架环境搭建<三>

    相关链接: eclipse中SSH三大框架环境搭建<一> eclipse中SSH三大框架环境搭建<二> 引言:通过上两篇文章我们已经可以掌握struts2和spring的环境的 ...

  4. eclipse中SSH三大框架环境搭建<二>

    通过上一篇博客我们可以轻松搭建strtus2的环境,接下来由我来继续介绍spring的环境搭建以及spring注入的简单使用 相关链接:eclipse中SSH三大k框架环境搭建<一> ec ...

  5. eclipse中SSH三大框架环境搭建<一>

    这里先简单介绍一下我用的三大框架版本以及下载地址 相关链接:eclipse中SSH三大框架环境搭建<二> eclipse中SSH三大框架环境搭建<三> struts-2.3.3 ...

  6. 基于Maven的Springboot+Mybatis+Druid+Swagger2+mybatis-generator框架环境搭建

    基于Maven的Springboot+Mybatis+Druid+Swagger2+mybatis-generator框架环境搭建 前言 最近做回后台开发,重新抓起以前学过的SSM(Spring+Sp ...

  7. SSM(Spring+SpringMVC+Mybatis)框架环境搭建(整合步骤)(一)

    1. 前言 最近在写毕设过程中,重新梳理了一遍SSM框架,特此记录一下. 附上源码:https://gitee.com/niceyoo/jeenotes-ssm 2. 概述 在写代码之前我们先了解一下 ...

  8. 3/16 Django框架 环境搭建

    3/16 Django框架 环境搭建 环境搭建 Python解释器 Python代码通过Python解释器去执行. 编程语言 机器语言---汇编语言(助记符)---高级语言 解释型语言:解释器将代码一 ...

  9. 【原】Go语言及Web框架Beego环境无脑搭建

    本文涉及软件均以截至到2013年10月12日的最新版本为准 1. 相关软件准备: 1) go1.2rc1.windows-386.msi,对应32位windows系统安装使用 下载地址: https: ...

随机推荐

  1. UI自动化测试养成记

    <selenium自动化测试实战>PDF文档下载:https://pan.baidu.com/s/16dt8qPi-C4BOgKe6snAA0A 这几个月我都干了些什么? 当我打算写一本& ...

  2. Maven学习归纳(五)——继承与聚合实例讲解

    一.Maven的继承 1.1 什么是继承? 继承:父工程拆分出很多子工程,可以通过父工程,统一管理依赖的版本 1.2 为什么要使用继承呢? 在A.jar 依赖着——>B.jar依赖着——> ...

  3. 关于格林尼治时间(GMT)和DateTime相互转换的分享

    普及一下什么是格林尼治时间? 世界时UT即格林尼治 平太阳时间,是指格林尼治所在地的标准时间,也是表示地球自转速率的一种形式.以地球自转为基础的时间计量系统.地球自转的角度可用地方子午线相对于地球上的 ...

  4. FreeSql (十九)多表查询

    多表查询,常用的有联表 LeftJoin/InnerJoin/RightJoin ,这三个方法在上篇文章已经介绍过. 除了联表,还有子查询 Where Exists,和 Select 子表: IFre ...

  5. Golang error 的突围

    目录 error 的困局 尝试破局 Errors are just values handle not just check errors Only handle errors once 小结 胎死腹 ...

  6. 【第二十二篇】从客户端中检测到有潜在危险的 Request.Form 值

    提交数据的时候  用js的方法   escape(富文本框的值)    例:escape(UM.getEditor('Content').getContent()); 取值的时候   unescape ...

  7. git之rebase、merge和cherry pick的区别(面试常问)

    git flow图例镇楼 merge 这个简单,初学者常用.比如主分支是Dev,最新版本是01.然后小明基于此,搞了个feature 分支A,业务:打酱油.然后在上面多次提交,完成功能迭代开发,如A1 ...

  8. Hadoop数据收集与入库系统Flume与Sqoop

    Hadoop提供了一个中央化的存储系统,其有利于进行集中式的数据分析与数据共享. Hadoop对存储格式没有要求.可以存储用户访问日志.产品信息以及网页数据等数据. 常见的两种数据来源.一种是分散的数 ...

  9. "".equals(xxx)和xxx.equals("")的区别

    今天做项目发现如下这个问题 看见别人用 if ("abc".equals(str)),然后自作聪明地认为 if (str.equals("abc"))是等效的, ...

  10. flink有什么优势值得大家这么热衷

    flink 通过实现了 Google Dataflow 流式计算模型实现了高吞吐.低延迟.高性能兼具实时流式计算框架. 同时 flink 支持高度容错的状态管理,防止状态在计算过程中因为系统异常而丢失 ...