当前位置:首页 > 开发 > 编程语言 > go语言 > 正文

开启golang之旅

发表于: 2012-09-09   作者:coolxing   来源:转载   浏览次数:
摘要: 假如你对golang感兴趣, 却尚未开始入门, 这篇文章就是为你准备的.     为什么要学习golang? 游说开发者尝试golang的文章很多. 比如golang主要设计者的演讲, 某个德国人的吐槽, 国内golang布道者所著书籍的前言. 我不想重复一遍大牛们的观点, 只想说一说自己朴素的感受.

假如你对golang感兴趣, 却尚未开始入门, 这篇文章就是为你准备的.

 

 

为什么要学习golang?

游说开发者尝试golang的文章很多. 比如golang主要设计者的演讲, 某个德国人的吐槽, 国内golang布道者所著书籍的前言. 我不想重复一遍大牛们的观点, 只想说一说自己朴素的感受.

在学习golang之前, 我是java的爱好者, 犹如iteye的大多数用户一样. 是的, 我喜欢java, 开源, 跨平台, 强大的IDE支持, 最重要的是--工作机会很多. 

但是同时我也讨厌java. 臃肿又不可或缺的IDE, 总是让我生起逃离的冲动. 语言缺乏表达力让我觉得自己是一个啰嗦的大婶. 繁琐的配置让我看到xml文件就想吐.

后来接触到golang, 才发现我对编程语言的大多数畅想都在golang身上实现了:

1. 不需要IDE支持, 只需要简单的步骤就可以配置出完美的编辑环境.

2. 兼具动态语言的开发效率和静态语言的运行效率. 有人说golang是c和python的合体, 这是非常贴切的形容. 

3. 远离xml.

4. 和*nix系统天然的亲和力.

5. 享受与语言一同成长, 进步, 成熟的乐趣.

现在我白天在公司编写java代码, 而业余学习时间则全部给了golang.

 

 

安装与环境配置

点击下载golang安装包, 如果链接无法访问(好奇葩的墙), 请尝试将:

173.194.71.141 golang.org

加入hosts文件.

需要配置的环境变量有(以linux为例):

export GOROOT=$HOME/go 				# go安装目录
export PATH=$PATH:$GOROOT/bin 		# 将安装目录的bin文件夹加入PATH变量
export GOPATH=~/Dropbox/source/go 	        # GOPATH下存放个人源码

 在命令行下输入go version验证是否一切顺利.

 

 

编辑器

强烈建议使用Sublime Text 2 + GoSublime + gocode + Margo构建golang编辑环境.

其中GoSublime是Sublime Text 2的一款插件, 而gocode和MarGo则为GoSublime提供代码自动补全等功能.

关于Sublime Text 2的介绍请参考这里

推荐理由:

支持所有平台.

Sublime Text 2界面清爽, 反应极快, 用起来非常舒心. 完全不会给人如IDE般臃肿的感觉.

安装步骤:

1. 下载安装Sublime Text 2.

2. 安装package control, 用来管理ST2的插件. 打开Sublime Text 2, 按下ctrl+~, 将以下命令输入到控制台中:

import urllib2,os;
pf='Package Control.sublime-package';
ipp=sublime.installed_packages_path();
os.makedirs(ipp) if not os.path.exists(ipp) else None;
open(os.path.join(ipp,pf),'wb').write(urllib2.urlopen('http://sublime.wbond.net/'+pf.replace(' ','%20')).read())

3. 重启ST2, 如果在Preferece-Package Settings中看到Package Control说明安装成功.

4. 通过Package Control安装GoSublime插件. 按下ctrl+shift+p, 输入install后回车. 等待响应后输入gosublime, 选择进行安装.

5. 在bash/dos命令行中输入:

go get -u github.com/nsf/gocode

go get -u github.com/DisposaBoy/MarGo

go install github.com/nsf/gocode

go install github.com/DisposaBoy/MarGo

安装完gocode和MarGo后, 切换到$GOPATH/bin目录, 运行./MarGo. 

至此, 编辑环境配置完成, 点击查看最后的界面.

 

 

文档

既可以直接访问golang.org/doc, 也可以在命令行中输入:

godoc -http=:8080

后访问本地镜像:

localhost:8080

 

 

入门书籍

最开始时, 建议学习官方网站上的a-tour-of-golang

接下来, learning-go是一本不错的开源书籍, 其中文版由xingxing翻译和维护, 翻译质量非常不错.

也可以考虑最近出版的<<go语言编程>>, 该书作者是国内使用golang编写大型程序的先驱.

对web感兴趣的同学可以关注network program with goGo Web 编程等.

 

 

社区

建议加入golang-china邮件列表, 这个社区非常活跃, 每天的讨论邮件基本上都在50封以上. 当然英文好的同学可以选择golang-nuts.

 

 

希望大家学习开心.

开启golang之旅

  • 0

    开心

    开心

  • 0

    板砖

    板砖

  • 0

    感动

    感动

  • 0

    有用

    有用

  • 0

    疑问

    疑问

  • 0

    难过

    难过

  • 0

    无聊

    无聊

  • 0

    震惊

    震惊

编辑推荐
先说下自己的软件开发经历 2009年开始接触软件,稀里糊涂的就报了计算机应用专业。对自己将来要学习
移动市场风起云涌,只是好像和悲催的.net程序员隔绝。我们内心中一直期待的Windows Phone终究不能匹
【渲云渲染农场推荐】过去好莱坞大片《侏罗纪公园》全球公映的时候,在世界各地迅速刮起了一阵恐龙
当你打算通过Azure Machine Learning(简称“AML”) Studio构建一个预测模型,你需要做的第一步就
gob是Golang包自带的一个数据结构序列化的编码/解码工具。编码使用Encoder,解码使用Decoder。一种
本文的目的是对mymysql进行单元测试和性能测试 准备工作: 1 go get github.com/ziutek/mymysql/thr
Golang Gob编码 2012-08-24 09:47 by 轩脉刃, 5119 阅读, 1 评论, 收藏, 编辑 gob是Golang包自带的
越来越多的人开始注意到golang的高效性,于是很公司开始使用golang去做业务。这方面七牛成为了第一
golang环境搭建 好久没写博客了,最近加班好厉害,加到自己都觉得不太适合这个行业了,每天头都是沉甸
从Goroot的代码出发,里面有很多代码非常复杂,一点点看吧。最重要的概念就是runtime,golang的程序
版权所有 IT知识库 CopyRight © 2009-2015 IT知识库 IT610.com , All Rights Reserved. 京ICP备09083238号