首页 > 其他分享 >GO 学习笔记之零 (一)GO推荐的工程目录结构

GO 学习笔记之零 (一)GO推荐的工程目录结构

时间:2024-12-17 15:13:28浏览次数:4  
标签:文件 包含 代码 笔记 go GO 目录

1、工程目录结构

GOPATH/
    src/
        myproject/
            cmd/
                myapp/
                    main.go
            pkg/
                utils/
                    utils.go
            internal/
                secret/
                    secret.go
api/
web/
scripts/
configs/
test/ vendor/ .gitignore LICENSE README.md go.mod go.sum

 

2、说明

  • GOPATH:这是你的工作目录,所有Go项目代码都会放在这个目录下的src子目录中。
  • myproject:你的项目名,这个目录会在GOPATH/src下创建。
  • cmd:包含所有的命令行应用入口文件。
  • myapp:你的应用名,包含了应用的入口文件main.go
  • pkg:包含可以被其他项目导入和使用的代码。
  • utils:工具包名,包含了一些公共的工具函数。
  • internal:包含不打算被其他项目导入和使用的内部代码。
  • secret:包含秘密信息的代码,比如配置文件等。
  • api:包含 API 定义文件,如 OpenAPI/Swagger 规范、gRPC 文件等。
  • web或ui目录:如果项目包含前端代码,通常会有这个目录。
  • configs:包含配置文件模板或默认配置。
  • test:包含额外的外部测试应用程序和测试数据。这与单元测试不同,单元测试通常与它们测试的代码位于同一个目录中。
  • scripts:包含用于执行各种构建、安装、分析等操作的脚本。
  • vendor:用于存放依赖的第三方库。
  • .gitignore:Git版本控制忽略文件列表。
  • LICENSE:项目许可证。
  • README.md:项目的README文件。
  • go.mod:Go模块依赖定义文件。
  • go.sum:Go模块依赖的校验和记录文件。

 

 

标签:文件,包含,代码,笔记,go,GO,目录
From: https://www.cnblogs.com/sandyflower/p/18612499

相关文章

  • 数据模型管理、元数据管理、主数据管理、数据质量管理、数据目录管理、数据资产管理
    数据模型管理定义与目的:数据模型管理是对数据模型的创建、维护、版本控制和发布等一系列活动的管理。数据模型是对数据结构和数据关系的抽象描述,数据模型管理的目的是确保数据模型能够准确反映业务需求,并且在整个数据生命周期中保持一致性和有效性。管理流程:模型创建:根据业......
  • 使用 Go 语言和 Tesseract 实现验证码识别
    步骤安装TesseractOCR引擎在使用Go编写验证码识别时,仍然需要安装TesseractOCR引擎。你可以通过以下命令在Linux上安装Tesseract:bash更多内容访问ttocr.com或联系1436423940sudoapt-getupdatesudoapt-getinstalltesseract-ocr对于macOS,可以通过Homebrew......
  • Spring Framework存在目录遍历漏洞(CVE-2024-38819)
    免责声明:本文旨在提供有关特定漏洞的深入信息,帮助用户充分了解潜在的安全风险。发布此信息的目的在于提升网络安全意识和推动技术进步,未经授权访问系统、网络或应用程序,可能会导致法律责任或严重后果。因此,作者不对读者基于本文内容所采取的任何行为承担责任。读者在使用本......
  • 切换Docker本地目录
    背景:df-h,发现docker默认的路径在/var/lib下,而且容量即将满掉。对于欧拉系统来说,目录在/home,需要把docker目前的目录切换到/home下。解决方法:1.Docker的版本是1.12或以上的,可以修改或新建daemon.json文件.vim/etc/docker/daemon.json{"graph":"/home/docker......
  • MongoDB备份脚本
    #!/bin/bash#backupMongoDB#mongodump命令路径DUMP=/home/mongodb/bin/mongodump#临时备份目录OUT_DIR=/home/mongodb_bak/mongodb_bak_now#备份存放路径TAR_DIR=/home/mongodb_bak/mongodb_bak_list#获取当前系统时间DATE=`date+%Y_%m_%d`#数据库账号DB_USER=root#......
  • MongoDB|TOMCAT定时切割日志文件的脚本
    MongoDB用过一段时间后,日志较大,需要定时进行日志切割。一、切割bash:splitlogmongo.sh#!/bin/bashlog_dir="/home/mongodb/logs"file_name="/home/mongodb/logs/mongodb.log"if[!-d$log_dir];thenmkdir-p$log_dirfiif[!-f$file_name];thentouch$file_name......
  • 《Vue3笔记》第05节:Vue3项目引入Axios插件实现网络通信
    这篇文章基于前一个小节的代码基础之上,介绍如何在Vue3项目中引入Axios插件实现网络通信的功能。Vue3项目开发(微信文章集合)1.1、安装依赖Axios是一款实现网络通信的插件,在前后的分离的项目中,要和后端接口进行数据通信,就可以采用Axios这个插件。首先安装Axios插件所需要的......
  • jquery目录树插件
    file-explore是一款简单的jquery目录树插件。它使用嵌套的无序列表作为目录树的结构,结合font-awesome图标可以制作出非常漂亮的jquery目录树效果。 在线预览 下载 使用方法在页面中引入file-explore.css和font-awesome文件,以及jquery和file-explore.js文件。<lin......
  • 修改网站logo在哪里修改,如何在网站后台修改logo
    如何在网站后台修改logo登录后台管理:首先,使用管理员账号登录网站的后台管理界面。通常在网站的底部或顶部导航栏可以找到登录入口。导航至外观设置:登录后台管理界面后,在左侧菜单栏中找到“外观设置”、“主题设置”或类似选项。选择logo设置:在外观设置页面中,找到“logo设置”......
  • 网站文件夹权限修改,确保文件和目录的安全性
    网站文件夹的权限设置对于网站的安全性和正常运行至关重要。以下是一些步骤和技巧,帮助您修改网站文件夹的权限:了解权限模式:Unix/Linux系统:使用权限模式表示文件和目录的权限,例如755和644。755:所有者可读、写、执行;组用户和其它用户可读、执行。644:所有者可读、写;组用户和......