|
原文: [url=http://coolxing.iteye.com/blog/1674164]http://coolxing.iteye.com/blog/1674164
假如你对golang感兴趣, 却尚未开始入门, 这篇文章就是为你准备的.
为什么要学习golang? 游说开发者尝试golang的文章很多. 比如golang主要设计者的[url=http://www.mikespook.com/2012/06/%E7%BF%BB%E8%AF%91%E5%B0%91%E6%98%AF%E6%8C%87%E6%95%B0%E7%BA%A7%E7%9A%84%E5%A4%9A/]演讲, 某个德国人的[url=http://www.mikespook.com/2011/06/go%E7%BC%96%E7%A8%8B%E8%AF%AD%E8%A8%801/]吐槽, 国内golang布道者[url=http://www.ituring.com.cn/book/967]所著书籍的前言. 我不想重复一遍大牛们的观点, 只想说一说自己朴素的感受. 在学习golang之前, 我是java的爱好者, 犹如iteye的大多数用户一样. 是的, 我喜欢java, 开源, 跨平台, 强大的IDE支持, 最重要的是--工作机会很多. 但是同时我也讨厌java. 臃肿又不可或缺的IDE, 总是让我生起逃离的冲动. 语言缺乏表达力让我觉得自己是一个啰嗦的大婶. 繁琐的配置让我看到xml文件就想吐. 后来接触到golang, 才发现我对编程语言的大多数畅想都在golang身上实现了: 1. 不需要IDE支持, 只需要简单的步骤就可以配置出完美的编辑环境. 2. 兼具动态语言的开发效率和静态语言的运行效率. 有人说golang是c和python的合体, 这是非常贴切的形容. 3. 远离xml. 4. 和*nix系统天然的亲和力. 5. 享受与语言一同成长, 进步, 成熟的乐趣. 现在我白天在公司编写java代码, 而业余学习时间则全部给了golang.
安装与环境配置 [url=http://golang.org/doc/install]点击下载golang安装包, 如果链接无法访问(好奇葩的墙), 请尝试将: 173.194.71.141 golang.org 加入hosts文件. 需要配置的环境变量有(以linux为例): Sh代码
- export GOROOT=$HOME/go # go安装目录
- export PATH=$PATH:$GOROOT/bin # 将安装目录的bin文件夹加入PATH变量
- export GOPATH=~/Dropbox/source/go # GOPATH下存放个人源码
在命令行下输入go version验证是否一切顺利.
编辑器 强烈建议使用[url=http://www.sublimetext.com/2]Sublime Text 2 + [url=https://github.com/DisposaBoy/GoSublime]GoSublime + [url=https://github.com/nsf/gocode]gocode + [url=https://github.com/DisposaBoy/MarGo]Margo构建golang编辑环境. 其中GoSublime是Sublime Text 2的一款插件, 而gocode和MarGo则为GoSublime提供代码自动补全等功能. 关于Sublime Text 2的介绍请参考[url=http://lucifr.com/139225/sublime-text-2-tricks-and-tips/]这里. 推荐理由: 支持所有平台. Sublime Text 2界面清爽, 反应极快, 用起来非常舒心. 完全不会给人如IDE般臃肿的感觉. 安装步骤: 1. [url=http://www.sublimetext.com/2]下载安装Sublime Text 2. 2. 安装package control, 用来管理ST2的插件. 打开Sublime Text 2, 按下ctrl+~, 将以下命令输入到控制台中: Python代码
- 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. 至此, 编辑环境配置完成, [url=http://dl.iteye.com/upload/attachment/0073/5375/118a7cdb-a762-3b46-9daf-186ede3bd331.png]点击查看最后的界面.
文档 既可以直接访问golang.org/doc, 也可以在命令行中输入: godoc -http=:8080 后访问本地镜像: localhost:8080
入门书籍 最开始时, 建议学习官方网站上的[url=http://tour.golang.org/]a-tour-of-golang. 接下来, [url=http://www.miek.nl/downloads/2011/go-0.3.pdf]learning-go是一本不错的开源书籍, 其[url=http://www.mikespook.com/learning-go/]中文版由xingxing翻译和维护, 翻译质量非常不错. 也可以考虑最近出版的[url=http://www.ituring.com.cn/book/967]<<go语言编程>>, 该书作者是国内使用golang编写大型程序的先驱. 对web感兴趣的同学可以关注[url=http://jan.newmarch.name/go/]network program with go, [url=https://github.com/astaxie/build-web-application-with-golang]Go Web 编程等.
社区 建议加入[url=https://groups.google.com/forum/?fromgroups#!forum/golang-china]golang-china邮件列表, 这个社区非常活跃, 每天的讨论邮件基本上都在50封以上. 当然英文好的同学可以选择[url=https://groups.google.com/group/golang-nuts]golang-nuts.
希望大家学习开心. |