什么是Go?
Go是一门并发支持、垃圾回收的编译型系统编程语言,旨在创造一门具有在静态编译语言的高性能和动态语言的高效开发之间拥有良好平衡的一门编程语言。

Go的主要特点有哪些?
* 类型安全 和 内存安全
* 以非常直观和极低代价的方案实现高并发
* 高效的垃圾回收机制
* 快速编译(同时解决C语言中头文件太多的问题:去除掉实际上没有用的头文件,如果头文件没有用会跳出编译异常)
* 为多核计算机提供性能提升的方案
* UTF-8编码支持

Go存在的价值是什么?
Go在谷歌:以软件工程为目的的语言设计 http://blog.jobbole.com/36480/

Go是记事本编程吗?
包括VIM、IDEA、Sublime Text、Eclipse等IDE均已支持

Go目前有多少实际应用和资源?
* 全球最大视频网站Youtube(谷歌)
* 七牛云存储以及旗下网盘服务(Q盘)
* 爱好者开发的Go论坛及博客
* 已在服务端使用Go开发的著名企业:谷歌、盛大、七牛、360
* 其他开源项目,可以在这三个网站上找到:go-wiki,GoDoc,Go Language Resources

Go发展成熟了吗?
作为一门2009年才正式发布的编程语言,Go是非常年轻的,因此不能称为一门成熟的编程语言,但开发社区每天都在不断更新其核心代码,给我们这些爱好者很大的学习和开发动力。

Go的爱好者多吗?
以Google Group为主的邮件列表每天都会更新10到20贴,国内的Go爱好者QQ群和论坛每天也在进行大量的讨论,因此可以说目前Go爱好者群体足够壮大。

安装Go语言
* Go源码安装
* Go标准包安装 https://golang.org/doc/install?download=go1.6.3.windows-amd64.msi
* 第三方安装

配置环境变量GOROOT为Go的安装位置,为这里为D:\Program Files\Go
在环境变量Path中添加:%GOROOT%\bin
添加环境变量GOPATH(下面会介绍)

Go环境变量与工作目录(命令行输入go env可以看到Go的环境变量们)
* bin(存放编译后生成的可执行文件)
* pkg(存放编译后生成的包文件)
* src(存放项目源码)

Go命令
在命令行或终端输入go即可查看所有支持的命令

Go常用命令简介
* go get:获取远程包(需提前安装git或hg)
* go run:直接运行程序
* go build:测试编译,检查是否有编译错误
* go fmt:格式化源码(部分IDE在保存时自动调用)
* go install:编译包文件并编译整个程序
* go test:运行测试文件
* go doc:查看文档(CHM文档)(比如我要查看一个fmt包,我就输入:go doc fmt)
输入godoc -http=:8080可以在本地localhost:8080打开参考网页。

Windows搭建Sublime Text 3 + Go开发环境:http://blog.csdn.net/cyxcw1/article/details/10329481

go语言学习笔记1 Go开发环境的更多相关文章

  1. Hadoop学习笔记(4) ——搭建开发环境及编写Hello World

    Hadoop学习笔记(4) ——搭建开发环境及编写Hello World 整个Hadoop是基于Java开发的,所以要开发Hadoop相应的程序就得用JAVA.在linux下开发JAVA还数eclip ...

  2. C#学习笔记一:C#开发环境的设置

    C#是.NET Framework的一部分,用于编写.NET应用程序. C#集成开发环境(IDE) 微软提供了以下C#编程开发工具: Visual Studio 2010 (VS) Visual C# ...

  3. Vue学习笔记(五)——配置开发环境及初建项目

    前言 在上一篇中,我们通过初步的认识,简单了解 Vue 生命周期的八个阶段,以及可以应用在之后的开发中,针对不同的阶段的钩子采取不同的操作,更好的实现我们的业务代码,处理更加复杂的业务逻辑. 而在这一 ...

  4. NLP自然语言处理学习笔记三(集成开发环境)

    前言: 我们在做自然语言学习的过程中使用Python进行编程.是用解析器的方式确实有些麻烦.在这里给大家推荐一款集成开发环境IDE可以很方便的对Python进行项目管理,代码自动提示,运行调试等. 简 ...

  5. Egret学习笔记.2 (Egret开发环境)

    配置Egret的开发环境是很简单的,去https://www.egret.com/products/engine.html下载 然后基本就是下一步下一步,安装好了就好了,装好了选择Wing组件,然后下 ...

  6. 【EJB学习笔记】——EJB开发环境搭建(Eclipse集成JBoss)

    之前一直用的EJB开发环境是他们搭建好的,直接拿来用,不过还是感觉老吃别人嚼好的不太好吃,所以自己动手来玩一玩. EJB开发依赖的最基本的环境:JDK.Eclipse.JBoss,这里简单介绍一下最基 ...

  7. php 学习笔记之搭建开发环境(mac版)

    Mac 系统默认集成了很多开发工具,其中就包括 php 所需要的一些软件工具. 下面我们将搭建最简单的 php 开发环境,每一步都会验证上一步的操作结构,请一步一步跟我一起搭建吧! web 服务器之 ...

  8. 零基础Android学习笔记-01 安卓开发环境搭建

    安卓开发环境搭建. 1.首先准备JDK,从官网找到JDK下载地址,原来做.NET不熟悉JAVA,干脆用最新的,下载了JDK 1.7的版本.原来装过1.5还要配置环境变量什么的.但1.7好像很给力,装好 ...

  9. Cocos2d-x学习笔记之Cocos2d-x开发环境搭建

    作者:刘昊昱 博客:http://blog.csdn.net/liuhaoyutz Cocos2d-x源码包下载地址: http://cocos2d-x.org/projects/cocos2d-x/ ...

随机推荐

  1. Hadoop2之NameNode HA详解

    在Hadoop1中NameNode存在一个单点故障问题,如果NameNode所在的机器发生故障,整个集群就将不可用(Hadoop1中虽然有个SecorndaryNameNode,但是它并不是NameN ...

  2. Codeforces Round #443 (Div. 1) B. Teams Formation

    B. Teams Formation link http://codeforces.com/contest/878/problem/B describe This time the Berland T ...

  3. Python序列函数、高级特性及高阶函数

    序列函数: enumerate: for循环时记录索引,逐个返回元组(i, item) sorted:返回新的有序列表 zip:压缩将多个序列的对应位置的元素组成元组 zip(*元组列表): 解压缩 ...

  4. js扩展运算符(spread)三个点(...)

    常见用法: 1.该运算符主要用于函数调用. function push(array, ...items) { array.push(...items); } function add(x, y) { ...

  5. JS——事件流与事件处理程序

    1.事件流:从页面中接收事件的顺序 1.1 IE :事件冒泡流1.2 Netscape :事件捕获1.3 DOM事件流 :事件捕获阶段——事件目标阶段——事件冒泡阶段DOM2级事件规定 :捕获阶段不会 ...

  6. Linux如何快速跳转到文档开头或者末尾

    输入 gg 命令,光标会移动到文档开头 : 输入 G 命令,光标会移动到文档末尾: 另外可以敲击 上下键.Page UP.Page Down 键快速查看文档:

  7. MySQL体系结构图详解

    体系结构图如下: 连接层 思想为解决资源的频繁分配﹑释放所造成的问题,为数据库连接建立一个“缓冲池”.原理预先在缓冲池中放入一定数量的连接,当需要建立数据库连接时,只需从“缓冲池”中取出一个,使用完毕 ...

  8. shell编程学习笔记(十一):Shell中的while/until循环

    shell中也可以实现类似java的while循环 while循环是指满足条件时,进行循环 示例: #! /bin/sh index=10 while [ $index -gt 0 ] do inde ...

  9. 微信支付 python版

    需求: 微信打开商品列表页面-> 点击商品后直接显示付款页面-> 点击付款调用微信支付 说明 微信支付需要你申请了公众号(appid, key - 用于签名), 商户号(mch_id, A ...

  10. Linux 添加开机启动项的两种方法

      1.编辑文件 /etc/rc.localvim /etc/rc.local #!/bin/sh## This script will be executed *after* all the oth ...