go語言開發的程序有:1、GraphJin,用于Postgres的即時GraphQL API;2、go-fits,FITS格式圖像和數據讀取器;3、goenv,可提供Go版本和Go工作區管理工具;4、go-server,敏捷服務器框架;5、gows,Go工作區管理器;6、GVM,提供了一個管理Go版本的接口;7、oh,使用Go編寫的Unix shell;8、automi等等。
php入門到就業線上直播課:進入學習
Apipost = Postman + Swagger + Mock + Jmeter 超好用的API調試工具:點擊使用
本教程操作環境:windows7系統、GO 1.18版本、Dell G3電腦。
go語言開發的程序(項目)有哪些?下面本篇文章給大家分享一些Go語言的開源項目,下面一起看看:
API 服務和工具
圖形語言
- GraphJin – 用于 Postgres 的即時 GraphQL API。無需代碼,將 GraphQL 編譯為 SQL。
MTProto
- MTProto – 在純 Go 上編寫的 Telegram API 的完整本機實現。
天文學
- go-fits – FITS(靈活圖像傳輸系統)格式圖像和數據讀取器
- astrogo/fitsio – Pure Go FITS(靈活圖像傳輸系統)格式圖像和數據讀取器/寫入器
- cosmo – 常見宇宙學的宇宙距離和時間計算(Friedmann-Lema?tre-Robertson-Walker 度量)。
- gonova – libnova的包裝器 — 天體力學、天體測量學和天體動力學庫
- meeus – Jean Meeus 的“天文算法”的實現
- novas – 與海軍天文臺矢量天文測量軟件 (NOVAS) 的接口
- utdfgo – 航天器 UTDF 數據包讀取器和解碼器
構建工具
- beku – 在用戶環境(GOPATH 或供應商目錄)中管理包的庫和程序
- colorgo -著色go 構建輸出
- dogo – 監控源文件的變化并自動編譯和運行(重啟)
- fileembed-go – 這是一個命令行實用程序,用于獲取大量源文件,并將它們嵌入到 Go 包中
- gb – Go 的(另一個)構建工具,重點是多包項目
- gg – 一個小型的多 golang 項目 env/make 管理工具。
- GG – Go in Go 的構建工具
- Godag – Go 編譯器集合的前端
- goenv – goenv 提供 Go 版本和 Go 工作區管理工具
- gopei – 適用于 Unix / Linux 的簡單 Go 編譯器和 LiteIDE 安裝程序,它添加了許多功能,如 github 支持和演示器。
- go-pkg-config – pkg-config 的輕量級克隆
- goscons – Go 的另一組 SCons 構建器
- go-server – 敏捷服務器框架。
- gotgo – 實現“泛型”的實驗性預處理器
- gows – Go 工作區管理器
- goxc – 一個專注于交叉編譯、打包、版本控制和分發的構建工具
- GVM – GVM 提供了一個管理 Go 版本的接口
- Realize – 具有文件觀察器、輸出流和實時重新加載的 Go 構建系統。使用自定義路徑運行、構建和觀察文件更改。
- SCons Go Tools – 一組構建器,可以輕松地在 SCons 中編譯 Go 項目
- Task – 一個任務運行器 / Make 的簡單替代方案
緩存
- cache2go – 具有過期功能和訪問計數器的并發安全緩存庫
- cache – Go 的 LevelDB 風格 LRU 緩存,支持非 GC 對象緩存。
- go-cache – Go 的內存鍵:值存儲/緩存(類似于 Memcached)庫,適用于單機應用程序
- golibs/cache – 一個很小的緩存包
- gomemcached – go 中的 memcached 服務器
- gomemcache – 一個 memcached 客戶端
- go-slab – go 的Slab 分配器。
- groupcache – 緩存和緩存填充庫,旨在在許多情況下替代 memcached
- libmemcache – 使用 memcache 協議的快速客戶端和服務器庫
- memcached-bench – 內存緩存服務器的基準工具
- memcached – 快速的 memcache 服務器,支持超過可用 RAM 的持久性和緩存大小
- memcache – 轉到 memcached 客戶端,從 YouTube Vitess 分叉
- rend – 管理數據分塊和 L1/L2 緩存的 memcached 代理
- YBC 綁定- YBC 庫的綁定為快速進程內 blob 緩存提供 API
- g2cache – 協調的本地和外部兩級緩存方案
云計算
- aws-sdk-go – 適用于 Go 編程語言的 AWS 開發工具包。
- Docker – Linux 容器運行時。由 dotCloud 開發。
- 適用于 Go 的Enduro/X ASG應用服務器。為分布式事務處理提供應用服務器和中間件設施。支持基于微服務的應用架構。由 ATR Baltic 開發。
- Flamingo – 輕量級云實例上下文化器。
- gocircuit – 一種分布式操作系統,位于數據中心部署中多臺機器上的傳統操作系統之上。它提供了一個干凈統一的抽象,將整個硬件集群視為一個單一的、單一的計算資源。由 Tumblr 開發。
- gosync – 用于將數據同步到 S3 和從 S3 同步數據的包。
- juju – 由 Canonical 開發的編排工具(部署、配置和生命周期管理)。
- Kubernetes – 來自 Google 的容器集群管理器。
- 基于 liblxc 的LXD守護進程提供 REST API 來管理容器
- mgmt – 由@purpleidea(紅帽員工)和 mgmt 社區開發的下一代配置管理工具(并行、事件驅動、分布式系統)。
- rclone – “用于云存儲的 rsync” – Google Drive、Amazon Drive、S3、Dropbox、Backblaze B2、One Drive、Swift、Hubic、Cloudfiles、Google Cloud Storage、Yandex Files
- ShipBuilder – ShipBuilder 是一個極簡的開源平臺即服務,由 Jay Taylor 開發。
- swift – Swift / Openstack Object Storage / Rackspace 云文件的 Go 語言接口
- Tsuru – Tsuru 是由 Globo.com 開發的開源多語言云計算平臺即服務 (PaaS)。
命令行選項解析器
- argcfg – 使用反射從命令行參數填充結構中的字段
- autoflags – 從配置結構填充 go 命令行應用程序標志
- cobra – 現代 go CLI 交互的指揮官,支持命令和 POSIX/GNU 標志
- cli – 用于實現命令行界面的 Go 庫。
- cmdline – 一個簡單的解析器,支持短選項和長選項、默認值、參數和子命令。
- command – 將子命令添加到您的 CLI,提供幫助和使用指南。
- docopt.go – 用 Go 編程語言實現的 docopt。
- flaq – 命令行選項解析庫,符合 POSIX/GNU 標準,支持結構標記以及 Go 的標志方法。
- getopt – Go 風格的全功能傳統(BSD/POSIX getopt)選項解析
- getopt – 另一個用于 Go 的 getopt 庫。這個就像 Python 的一樣。
- gnuflag – GNU 兼容的標志解析;與flag基本兼容。
- go-commander – 使用命令和子命令、參數檢查和上下文使用幫助簡化 Go 命令行界面的創建。從“go”工具代碼分叉。
- go-flags – go 的命令行選項解析器
- go-getoptions – 受 Perl 的 GetOpt::Long 靈活性啟發的 Go 選項解析器.
- goopt – 用于解析命令行標志的 getopt 克隆
- go-options – Go 的命令行解析庫
mellium.im/cli
用于解析現代 CLI 應用程序的庫,包括可能具有自己的標志和內置幫助系統的子命令。旨在使用最少的 API。- options – 自記錄 CLI 選項解析器
- opts.go – 輕量級 POSIX 和 GNU 風格的選項解析
- pflag – Go 的標志包的直接替代品,實現了 POSIX/GNU 風格的 –flags。
- subcommands – 一個并發的、經過單元測試的子命令庫
- uggo – 另一個選項解析器,提供類似 gnu 的選項解析。這個包裝(嵌入)flagset。它還提供基本的管道檢測(像 ls 這樣的命令在通過管道傳輸時表現不同)。
- writ – 具有全面測試覆蓋率的靈活選項解析器。它的意思是“只是工作”并且不礙事。
命令行工具
- amqp-message-remover – 通過正則表達式模式從 AMQP 隊列中刪除不需要的消息
- Arduino-cli – Arduino CLI 是一種一體化解決方案,提供構建器、板/庫管理器、上傳器、發現以及使用任何 Arduino 兼容板和平臺所需的許多其他工具。
- awless – 亞馬遜網絡服務(AWS)的強大命令行界面。
- 鍋爐- 一個極快的 CLI 工具,用于從樣板模板創建項目。
- box-cli-maker – 為您的 CLI 制作高度定制的 Box。
- comb-go – Golang 實現的 CLI 工具,用于管理CloudComb資源。
- coshell – GNU 'parallel' 的替代品。
- dasel – 使用命令行中的選擇器查詢和更新數據結構。與jq / yq相當,但支持 JSON、YAML、TOML 和 XML,運行時依賴為零。
- DevTodo2 – 每個項目的小型命令行任務列表管理器。
- dsio – Google Cloud Datastore 的命令行工具。
- efs2 – 一個非常簡單的配置管理工具,由愚蠢的 shell 腳本提供支持。
- enumeration – 簡單的枚舉代碼生成。
- fzf – 命令行模糊查找器
- gich – 用 Go 編寫的跨平臺實用程序
- gister – 從命令行管理你的 github gist
- git-time-metric – 簡單、無縫、輕量級的 Git 時間跟蹤
- gmail2go – 簡單的 gmail 多帳戶 cli 郵件檢查器
- go-amqp-sniffer -偵聽AMQP 交換并將消息流式傳輸到 mongoimport 兼容的 JSON 中的標準輸出
- gocreate – 從模板創建文件的命令行實用程序。
- godocdoc – 啟動 godoc 并在瀏覽器中將其打開到當前目錄中的項目。
- gojson – 用于操作 JSON 以用于開發 Go 代碼的命令行工具。
- golor – golor 是一個用于 golang 源代碼著色的命令行工具
- GoNote – 命令行 SimpleNote 客戶端。
- gopass – 具有 git 同步功能的命令行密碼管理器
- GoPasswordCreator – 創建隨機密碼的小工具
- Grozilla – 具有恢復功能的文件下載器實用程序。
- JayDiff – 用 Go 編寫的 JSON diff 實用程序。
- jsonpp – 一個快速的命令行 JSON 漂亮的打印機。
- lsp – 一種更人性化的替代方案
ls
- ltst – 在您的終端中查看您選擇的最新消息
- passhash – 用于創建安全密碼哈希的命令行實用程序
- passman – 命令行密碼管理器
- pdfcpu – PDF 處理器。
- pjs – 漂亮的打印和快速搜索 JSON 數據結構。
- project – 非常簡單的 CLI 工具,用于從樣板模板設置新項目。
- redis-view – 樹狀工具可幫助您探索 redis 服務器中的數據結構
- remote-torrent – 一個簡單的工具,用于遠程下載 Torrent 并通過 HTTP 全速檢索文件,而不受 ISP Torrent 限制
- restic – 一個快速、高效和安全的備份程序
- runtemplate – 一個非常簡單的用于執行 Go 模板的命令行工具,對于與
go generate
. - runtemplate – 用于執行 Go 模板以支持為您的類型生成 Go 代碼的簡單工具。
- sift – 快速而強大的開源替代品
grep
- tecla – 命令行編輯庫
- Terracognita – 從現有的云提供商(反向 Terraform)讀取并生成您的基礎設施作為 Terraform 配置上的代碼。
- wlog – 一個簡單的日志記錄界面,支持跨平臺顏色和并發。
- wmenu – 一個易于使用的 cli 應用程序菜單結構,提示用戶做出選擇。
- mani – 幫助您管理多個存儲庫的 CLI 工具
壓縮
- brotli – Brotli 算法的綁定。
- compress – 更快地替換 gzip、zip、zlib、deflate。
- dgolzo – LZO 綁定。
- go-lzo – Pure-Go LZO 壓縮器/解壓器,忠實地翻譯了 C 代碼庫。
- dictzip – 隨機訪問
dictzip
格式文件的讀寫器。 - fast-archiver – 對大量小文件具有快速性能的替代歸檔工具。
- gbacomp – 用于(解)壓縮與 GBA BIOS 兼容的數據的 Go 庫。
- go-lz4 – LZ4 無損壓縮算法的端口。
- go-lzss – 在 Go 中實現 LZSS 壓縮算法。
- go-sevenzip – 包 Sevenzip 實現對 7-zip 檔案的訪問(包裝 LZMA SDK 的 C 接口)。
- go-zip – C 庫 libzip 的包裝器,提供修改現有 ZIP 檔案的能力。
- lz4 – 高性能,并發 LZ4 實現。
- lzma – Go 的壓縮/lzma 包。
- pgzip – 多核 gzip,與標準庫兼容。
- ppmd-go – LZMA SDK 庫的 Golang 綁定。(僅綁定 PPMD)
- s2 – 高吞吐量 Snappy 擴展。
- snappy-go – 谷歌在 Go 中的 Snappy 壓縮算法。
- yenc – yenc 解碼器包。
- zappy – 包 zappy 實現了 zappy 基于塊的壓縮格式。它旨在結合良好的速度和合理的壓縮。
- zstd – Pure Go Zstandard 壓縮/解壓縮。
并發和 Goroutines
- grpool – 輕量級 Goroutine 池。
- pool – Go 消費者 goroutine 池,可輕松處理 goroutine + 節省時間。
- tunny – 一個 goroutine 池。
- worker – 一個簡單輕量級的并發作業框架。
配置文件解析器
- awsenv – 一個小二進制文件,用于為配置文件加載 Amazon (AWS) 環境變量
code.soquee.net/env
— 從.env
或類似文件中加載環境變量,或從任何文件中加載環境變量io.Reader
并填充本地環境。- confl – nginx 配置語法,寬松,編碼/解碼,自定義編組
- configor – 支持 YAML、JSON、TOML、Shell 環境的 Golang 配置工具
- fig – 用于從文件和環境變量(帶有驗證和默認值)讀取配置的微型庫。
- flagfile – 向標準庫標志包添加解析和序列化支持(添加 –flagfile 選項)
- gcfg – 將 INI 風格的配置文件讀入 Go 結構體;支持用戶定義的類型和小節
- globalconf – 毫不費力地堅持并從 ini 配置文件中讀取標志值
- goconf – 配置文件解析器
- goconfig – 基于結構自省的配置,支持環境變量、命令行參數等。
- hjson – 人類 JSON,人類的配置文件格式。寬松的語法,更少的錯誤,