当前位置: 首页 > 编程笔记 >

go语言工程结构

丰智
2023-03-14
本文向大家介绍go语言工程结构,包括了go语言工程结构的使用技巧和注意事项,需要的朋友参考一下

Go是一门推崇软件工程理念的编程语言。

Go的代码必须放在工作区中。工作区其实就是一个对应于特定工程的目录,它应该包含三个子目录: src 用于以代码包的形式组织并保存Go源码文件。应该分为三类:库源码文件、命令源码文件、测试源码文件。
pkg 用于存放由go install命令构建安装后的代码包(库源码文件)的“.a"归档文件。与GOROOT目录下的pkg功能类似,区别在于,工作目录中的pkg目录专门用来存放用户代码的归档文件。 bin 在通过go install命令完成安装之后,保存由Go命令源码文件生成的可执行文件。

ps:所谓命令源码文件,就是可以独立运行,可被go build或go install命令转换成可执行文件。库源码文件指某个代码包中的普通源码文件。

设置GOPATH


$vim /etc/profile export GOPATH=$HOME/golang/lib:$HOME/golang/learngo

$source /etc/profile

$HOME/golang/lib用于存放第三方代码库(go get命令获得) $HOME/golang/learngo 用于存放学习代码

以上就是本文的全部内容了,希望大家能够喜欢。

 类似资料:
  • 主要内容:目录结构,源文件一般的编程语言往往对工程(项目)的目录结构是没有什么规定的,但是Go语言却在这方面做了相关规定,本节我们就来聊聊Go语言在工程结构方面的有关知识。 我们前面讲搭建Go语言开发环境时提到的环境变量 GOPATH,项目的构建主要是靠它来实现的。这么说吧,如果想要构建一个项目,就需要将这个项目的目录添加到 GOPATH 中,多个项目之间可以使用 分隔。 如果不配置 GOPATH,即使处于同一目录,代码之

  • 在我们开始学习 Go 编程语言的基础构建模块前,让我们先来了解 Go 语言最简单程序的结构。 Go Hello World 实例 Go 语言的基础组成有以下几个部分: 包声明 引入包 函数 变量 语句 & 表达式 注释 接下来让我们来看下简单的代码,该代码输出了"Hello World!": package main import "fmt" func main() { /* 这是我的

  • 问题内容: 我正在尝试学习Go并遵循现有的约定,但是,作为每个约定,您都需要先了解它们,然后才能很好地使用它们,经过一些研究,我没有找到以下问题的确切答案: 我已经在自己的内部建立了一个类似以下结构的项目: 我的主要是: 因此,问题是: 我读到我需要在每个package文件夹中都有一个文件,对吗? 如果是这样,在内部,我将如何导入,以及? 然后,是否可能会有类似的内容: …并且主要是做什么的? 问

  • Go 语言中数组可以存储同一类型的数据,但在结构体中我们可以为不同项定义不同的数据类型。 结构体是由一系列具有相同类型或不同类型的数据构成的数据集合。 结构体表示一项记录,比如保存图书馆的书籍记录,每本书有以下属性: Title :标题 Author : 作者 Subject:学科 ID:书籍ID 定义结构体 结构体定义需要使用 type 和 struct 语句。struct 语句定义一个新的数据

  • 主要内容:for 中的初始语句——开始循环时执行的语句,for 中的条件表达式——控制是否循环的开关,for 中的结束语句——每次循环结束时执行的语句与多数语言不同的是,Go语言中的循环语句只支持 for 关键字,而不支持 while 和 do-while 结构,关键字 for 的基本使用方法与C语言和 C++ 中非常接近: 可以看到比较大的一个不同在于 for 后面的条件表达式不需要用圆括号 括起来,Go语言还进一步考虑到无限循环的场景,让开发者不用写无聊的  和 ,而直接简化为如下的写法:

  • 主要内容:举例,特殊写法在Go语言中,关键字 if 是用于测试某个条件(布尔型或逻辑型)的语句,如果该条件成立,则会执行 if 后由大括号 括起来的代码块,否则就忽略该代码块继续执行后续的代码。 如果存在第二个分支,则可以在上面代码的基础上添加 else 关键字以及另一代码块,这个代码块中的代码只有在条件不满足时才会执行,if 和 else 后的两个代码块是相互独立的分支,只能执行其中一个。 如果存在第三个分支,则可以使