一、关于GO开发环境的安装和配置
 
     在linux环境中安装编译好的go安装包,参考官方指南的步骤一步步走下来就可以了。需要注意的是以下几个环境变量的配置:
       GOROOT - go编译库的目录,类似于java的JAVA_HOME
       PATH - 注意把$GOROOT/bin添加上去
       GOPATH - go工作目录,类似于eclipse的workspace
 
       以下是具体的安装步骤和环境配置
 
       $ wget https://storage.googleapis.com/golang/go1.6.linux-amd64.tar.gz
 
       $ tar -C /usr/local -xzf go1.6.linux-amd64.tar.gz
 
        安装目录是/usr/local/go, 工作目录是/usr/local/golang/work。把环境变量添加到/ect/profile文件中以便对全局生效。
        
 
二、GO工程的代码组织
 
     典型的GO工作目录一般包含3个目录  
 
    $GOPATH/
        bin/                                    # 二进制执行文件的输出路径,一般由go编译器自动生成
 
        pkg/                                   # 中间库文件,由go编译器自动生成,按照不同OS架构平台分目录输出
            linux_amd64/                     # linux 64bit
            windows_amd64/                # windows 64bit
 
        src/                                    # 手工创建,存放所有的go源码文件,按package存放在不同子目录下
            github.com/[user]/xxx         # 需要git管理版本的情况,建议的目录结构
 
  • 建议把所有的go代码都放到单一的工作目录下(即$GOPATH指向的目录)
  • 一个工作目录下可以包含不同的版本控制库(git repository)
  • 每个版本控制库可以包含一个或多个包(package)
  • 每个包(package)包含一个或多个go源代码文件(注意同一个包的多个go文件需放到同一目录下,包名需相同,建议包名为当前目录路径的最后一层。举例如 go文件存放在$GOPATH/src/test1/stringutil目录下,则包名为stringutil)
  • 引入一个包(import)时引入路径就是这个包所在的目录路径(相对于$GOPATH/src的相对路径)

GO1.6语言学习笔记2-安装配置及代码组织的更多相关文章

  1. GO1.6语言学习笔记3-工具篇(SublimeText 3+GoSublime组合)

    选择SublimeText作为开发工具的原因,最最主要的是它够轻巧,搭配GO开发才能有飞一般的感觉.当然作为开发工具之一,Sublime组合工具也提供足够强大的功能. 自动化提示代码 保存的时候自动格 ...

  2. Node.js 学习笔记 (一) 安装配置

    Node.js 安装配置 本安装教程以Node.js v4.4.3 LTS(长期支持版本)版本为例 Window 上安装Node.js 你可以采用以下两种方式来安装. 1.Windows 安装包(.m ...

  3. Hadoop学习笔记: 安装配置Hive

    1. 在官网http://hive.apache.org/下载所需要版本的Hive,以下我们就以hive 2.1.0版为例. 2. 将下载好的压缩包放到指定文件夹解压,tar -zxvf apache ...

  4. Hadoop学习笔记: 安装配置Hadoop

    安装前的一些环境配置: 1. 给用户添加sudo权限,输入su - 进入root账号,然后输入visudo,进入编辑模式,找到这一行:"root ALL=(ALL) ALL"在下面 ...

  5. [Freescale]E9学习笔记-LTIB安装配置

    转自:http://blog.csdn.net/girlkoo/article/details/44535979 LTIB: Linux Target Image Builder Freescale提 ...

  6. blfs(systemd版本)学习笔记-编译安装配置dhcpcd

    我的邮箱地址:zytrenren@163.com欢迎大家交流学习纠错! dhcpcd项目地址:http://www.linuxfromscratch.org/blfs/view/stable-syst ...

  7. blfs(systemv版本)学习笔记-编译安装配置dhcpcd

    我的邮箱地址:zytrenren@163.com欢迎大家交流学习纠错! dhcpcd项目地址:http://www.linuxfromscratch.org/blfs/view/8.3/basicne ...

  8. MySQL学习笔记-MHA安装配置

    一.配置主从同步   1. 本例中主从ip及端口 Master:10.1.5.8:3306 Slave1:10.1.5.9:3306 (候选master) Slave2:10.1.5.195:3306 ...

  9. GO1.6语言学习笔记1-基础篇

    一.GO语言优势   可直接编译成机器码,Go编译生成的是一个静态可执行文件,除了glibc外没有其他外部依赖 静态类型语言,但是有动态语言的感觉 语言层面支持并发.Goroutine和channel ...

随机推荐

  1. 20个代码生成框架 (.NET JAVA)

    1.1 CodeSmith 一款人气很旺国外的基于模板的dotnet代码生成器 官方网站:http://www.codesmithtools.com 官方论坛:http://forum.codesmi ...

  2. IE浏览器无法直接识别input的type="hidden"问题

    原问题: <td class="formValue" id="in-checkbox"> <label class="checkbo ...

  3. JSON与XML

    XML——这种用于表示客户端与服务器间数据交换有效负载的格式,几乎已经成了Web services的同义词.我们知道AJAX技术能够使得每一次请求更加迅捷,对于每一次请求返回的不是整个页面,也仅仅是所 ...

  4. [Unity-6] GameObject有时候渲染不出来

    问题描写叙述:在做游戏的过程中遇到了这样一个问题.一个怪物,假设让他出如今屏幕的中央是没问题的,可是让他出如今屏幕的边缘的位置发现他没有出现. 问题原因:经过检查发现,我给这个GameObject加入 ...

  5. iOS 事件传递及响应过程

    iOS 事件传递及响应过程 -->>事件到来-->>事件分发 -->>事件响应 事件( Events) 官方文档( Events(iOS)) 是这样描写叙述的: U ...

  6. 解决 只能通过chrome网上应用商店安装该程序

    第一种方法: 右击 Chrome 桌面快捷方式,选择-”属性”-”快捷方式”,然后在”目标”一栏尾部添加参数 -enable-easy-off-store-extension-install 第二种方 ...

  7. Exif介绍

    Exif是一种图像文件格式,它的数据存储与JPEG格式是完全相同的.实际上Exif格式就是在JPEG格式头部插入了数码照片的信息,包括拍摄时的光圈.快门.白平衡.ISO.焦距.日期时间等各种和拍摄条件 ...

  8. SQL Server 2012 “阻止保存要求又一次创建表”的更改问题的设置方法

    我们在用SQL Server 2012 建完表后,插入或改动随意列时,提示:当用户在在SQL Server 2012企业管理器中更改表结构时.必需要先删除原来的表.然后又一次创建新表,才干完毕表的更改 ...

  9. CMake 基本用法--写CMakeList.txt

    http://techbase.kde.org/Development/Tutorials/CMake_(zh_CN) http://www.cmake.org/Wiki/CMake 这一章将从软件开 ...

  10. 所有标准API

    序号 系统版本 模块 应用场景 类型 API/接口 参数规格 样例代码 备注 登记者 登记时间 关键字 1 12.1.3 AP 付款核销 API ap_pay_invoice_pkg.ap_pay_i ...