去项目目录管理-研发项目管理

>>去项目目录管理-研发项目管理

去项目目录管理-研发项目管理

引言:当今社会市场竞争激烈,软件开发企业想要占据前列需要在研发管理上下功夫,“向管理要效益”已经成为软件开发企业的共识,研发项目管理在软件企业中的普及也是大势所趋。国内做软件项目管理工具的开发商翼发云近几年发展十分迅速,越来越多的软件开发企业认识到研发项目管理的重要性,能切实有效降低成本,规范软件开发流程,提高软件产品质量。国内研发项目管理系统、敏捷开发管理工具的领导品牌翼发云敏捷项目管理系统采用可视化业务流程技术,支持瀑布模型等传统软件研发项目管理,同时也支持scrum等敏捷开发流程,是理想的敏捷开发管理工具,涵盖软件项目管理工作的整个生命周期。为提高国内软件开发企业的项目管理水平,分享一篇企业管理相关的知识文章。

的官网文档How to Write Go Code中,已经介绍了的项目目录一般包含以下几个:

  • 包含项目的源代码文件;
  • PKG 包含在编译生成的包/库文件;
  • bin:包含编译后生成的可执行文件。

可以通过下面的例子来说明工程目录的组织管理。(Windows 7 64位,go version go1.3.3 windows/amd64) scrum

1。创建库文件

创建一个库文件a.go并保存在SCR目录的一个子目录下面。

包MyFunc进口“FMT”功能afunc(字符串){ fmt.println(“a.go包装)} }

这时候目录结构如下: 软件项目管理

<;dirtest >;|——<;SRC >;|——<;mufunc >;| --a.go

2。创建主

关于main包的位置,可以参照参考资料2,个人建议放在可控硅/主下面,毕竟官方推荐包名和文件存放的文件夹名称最好相同(虽然包名和文件夹名可以不相同,也就是说一个文件夹下可以包含多个包的去。文件)。

包的主要进口“MyFunc”功能主要(){ myfunc.afunc(“B.包装为主。”})}

这时候目录结构如下: 敏捷开发流程

<;dirtest >;|——<;SRC >;|——<;mufunc >;| --a.go |——<;主要>;| --b.go。

三.使用去建立

如果这时候使用去建造,你会发现下面的输出:

E:/ dirtest >;建立SRC /主/ B. SRC /主/ B.:3:8:找不到包,myfunc,任何,和MyFunc。

从输出中我们可以看到,先是从goroot美元中查找包MyFunc,如果没找到就从gopath美元中查找,结果都没有找到,我们可以使用去膜输出的环境变量设置: 研发项目管理

E:/ dirtest >;去env设置gOArch = AMD64套扇=集gochar = 6套goexe = .exe设置gohostarch = AMD64集gohostos =窗口设置好= Windows设置gopath = D / GoLang集gorace = GOROOT = C:/程序文件/去设置gotooldir = C:/程序文件/去/设备/工具/ windows_amd64集CC = GCC组gogccflags = 64 - mthreads - fmessage长度= 0 = G +集集cxx cgo_enabled = 1

显然E:/ dirtest这个目录没有加到gopath美元中,在环境变量中添加该目录:

Go项目目录管理

保存后,重新执行(可能需要重新打开控制台,让环境变量生效)去建造,就在当前目录生成了一个可执行文件就是

E:/ dirtest / SRC /主>;去env设置gOArch = AMD64套扇=集gochar = 6套goexe = .exe设置gohostarch = AMD64集gohostos =窗口设置好= Windows设置gopath = D / E / dirtest Golang集gorace = GOROOT = C:/程序;文件走集gotooldir = C:/程序文件/去/设备/工具/ windows_amd64集CC = GCC组gogccflags = 64 - mthreads - fmessage长度= 0 = G +集集cxx cgo_enabled = 1 E:/ dirtest >;建立SRC /主/ B. E:/ dirtest & gt;dirE: / dirtest dir >;<目录2015 / 01 / 13 23:11;23:11。2015 / 01 / 13 & lt;目录>;2015 / 01 / 13 / 01 / 13就是2015 22:52 23:11 1958912。<;目录>;SRC E:/ dirtest >;就是a.go包装mufunc。B.主要是包。

虽然成功运行,但是没有按照期待的那样生成在箱子目录下面。为了达到这样的效果,你需要去安装。注意去安装是针对package,而不是针对单个去。文件。

但是如果是当前状态执行去安装,虽然可以成功,但你会发现,并没有在项目根目录E:/ dirtest中创建斌/ main.exe,反而是在D:/ GoLang中创建了。

如果对main包执行去安装呢?

E:/ dirtest / SRC /主>;走去安装:安装没有安装位置为:/ dirtest / SRC /主营:隐藏

可以看到,输出提示当前目录被隐藏。显然这个顺序是对应gopath美元的设置的,把gopath美元中的路径顺序改一下:

Go项目目录管理

然后在执行去安装myfunc,发现成功地在一包目录下面生成了Myfunc的。。同样执行去安装主,也成功的在箱子目录下生成了main.exe。此时的目录结构如下:

<;dirtest >;|——<;SRC >;|——<;mufunc >;| --a.go |——<;主要| --b.go >;|——<;PKG >;|——<;windows_amd64 >;|——myfunc,|——lt;仓>;| --main.exe

现在就算是成功完成了一个示例“项目”吧…

4。常见的错误

除了上面的步骤中出现的错误,其实工程目录管理稍有不慎,就会出现其他问题,例如:

1。文件夹包含不同包的多个源文件。要把a.go和B.的MyFunc目录下什么?

这时候的目录结构如下:

<;dirtest >;|——<;SRC >;|——<;mufunc >;| --a.go | --b.go

那么执行去安装去建造,甚至去跑步都会是相同的错误:

E:/ dirtest / SRC / MyFunc >;去安装无法加载包:包MyFunc:发现包myfunc(a.go)和主体(B.)E:/ dirtest / SRC / MyFunc E:/ dirtest / SRC / MyFunc & gt去建立无法加载包:包MyFunc:发现包;MyFunc(a.go)和主(B.)E:/ dirtest / SRC / MyFunc E:/ dirtest / SRC / MyFunc & gt去B. B.:3:8:发现;包myfunc(a.go)和主体(B.)E:/ dirtest / SRC / myfunc

从参考资料3中可以看到,每个子目录中只有一个包,否则编译将是错误的。,所以一个子目录下面不能包含多个不同包的源文件。

可2。一个项目包含多个主()?

简单测试下,创建一个,并使用MyFunc包(没有导入其他包的情况类似):

包的主要进口“格式化”进口“MyFunc”功能主要(){ fmt.println(“这是单)} } }

执行相应的命令,结果如下:

E:/ dirtest / SRC /主>;去#建立主重新声明。/您:4:这一块以前的宣言。/ B.:5电子邮件:/ dirtest / SRC /主>;去建立您#成功,当前目录下生成c.exe E:/ dirtest / SRC /主>;去#安装主重新声明。/您:4:这一块以前的宣言。/ B.:5电子邮件:/ dirtest / SRC /主& gt去安装您去安装:;没有安装位置。去上市的命令文件(线扇不集E:/ dirtest / SRC /主& gt去您);这是一a.go您是包mufunc。您还包的主要。

显然只能是走跑Go build c.go可行。如果把移到单独的目录下面呢:

E:/ dirtest / SRC /海外华人互助会>;目录:/ / /海外华人互助会dirtest src目录& gt;& lt目录2015 / 01 / 14 11:27;11:27。2015 / 01 / 14和LT;迪尔&gt;2015 / 01 / 14。147您去建立24 E:/ dirtest / SRC /海外华人互助会>;E:/ dirtest / SRC /海外华人互助会>;去安装

均可以执行成功。去安装箱子目录下面生成了对应的exe文件。看来还是目录管理的问题。

三.go安装:命令行列出的go文件没有安装位置

从上面的示例输出中就能看到,使用去安装针对单个文件时,就会出现这个错误。默认情况下如果设置了goroot美元gopath美元,就会依次寻找goroot美元/桶gopath美元/桶。那么我们如果自定义设置了扇= E / dirtest美元/桶之后会怎样?

Go项目目录管理

E:/ dirtest / SRC /海外华人互助会>;去env设置gOArch = AMD64套扇= E / dirtest /本集gochar = 6集goexe = .exe设置gohostarch = AMD64集gohostos =窗口设置好= Windows设置gopath = E / dirtest D:/ GoLang集gorace = GOROOT = C:/程序;文件/去设置gotooldir = C:/程序文件/去/设备/工具/ windows_amd64集CC = GCC组gogccflags = 64 - mthreads - fmessage长度= 0 = G +集集cxx cgo_enabled = 1 E:/ dirtest / SRC /海外华人互助会& gt去安装您;#成功生成下E:/ dirtest /斌c.exe

虽然成功了,但是去安装应该是作用于包级别,而非单个文件。

4之间的区别。去构建,去安装和运行

详细的可以查看参考资料4,这里简单说一下:

  • 编译编译包,如果一个主包在当前目录中生成一个可执行文件,其他包不生成一个文件;
  • 去安装编译的软件包,并将结果复制到gopath美元/桶,gopath美元/包和其他相应的目录;
  • 去gofiles…编译所列出的文件并生成可执行文件并执行它们。通知只能用于主包,否则运行:不能运行非主包将是错误的。

此外,走跑是不需要设置gopath美元的,但去建造去安装必须设置。走跑常用来测试一些功能,这些代码一般不包含在最终的项目中。

5。总结

  1. 一定要管理好目录。
  2. 许多项目都是一个gopath美元,那是最好的,SRC / proj1,SRC / proj2,等
  3. 使用尽可能多的安装,这样可以规范项目的总体结构。

6。参考资料

  1. Golang项目目录结构组织
  2. 把主要包裹放在哪里的问题
  3. 两个或三个关于Golang中包(包)
  4. 运行多文件主包

文章从互联网整理而来,旨在传播scrum、软件项目管理、研发项目管理、敏捷开发管理工具的知识与应用,帮助软件开发企业真正了解研发项目管理的价值和意义,如果本文侵犯了您的权益或者您需要具体了解更多国内做研发项目管理系统的公司翼发云敏捷项目管理系统的相关信息,欢迎和我们联络:

【网址】www.effapp.com

2018-03-05T07:33:06+08:002018-03-05 07:33:06|Categories: scrum项目管理|