用go設計開發一個自己的輕量級登錄庫/框架吧(專案維護篇)
本篇將開始講講開發庫/框架的最開始階段,也就是搭建一個專案
原始碼:weloe/token-go: a light login library (github.com)
專案結構
專案結構,不是上一篇所說的代碼架構,而是分包,明確的分包更有助于我們的開發,本框架分包如下
├─.github
│ └─workflows GitHub作業流
├─auth 權限管理
├─config 配置
├─constant 常量
├─ctx web背景關系
│ └─go-http-context
├─error
├─examples 使用示例
├─log 日志
├─model 模型
├─persist 持久層
└─util 工具包
代碼托管以及自動化測驗
我們選擇使用GitHub進行代碼托管,同時也使用GitHub Actions進行代碼自動化測驗,運行測驗代碼以及使用lint檢查代碼規范,
token-go/go.yml at master · weloe/token-go · GitHub
name: Go-Build-Test
on: [push, pull_request]
jobs:
test:
runs-on: ubuntu-latest
strategy:
matrix:
go: [ '1.18', '1.19', '1.20' ]
steps:
- uses: actions/checkout@v2
- name: Set up Go
uses: actions/setup-go@v2
with:
go-version: ${{ matrix.go }}
- name: Run go test
run: go test -v ./...
benchmark:
runs-on: ubuntu-latest
strategy:
matrix:
go: [ '1.18' ]
steps:
- uses: actions/checkout@v2
- name: Set up Go
uses: actions/setup-go@v2
with:
go-version: ${{ matrix.go }}
- name: Run go test bench
run: go test -bench=.
lint:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v2
- name: Set up Go
uses: actions/setup-go@v2
with:
go-version: '1.20'
- name: golangci-lint
uses: golangci/golangci-lint-action@v3
with:
version: v1.51
測驗
在進行代碼開發的同時,我們也應該進行代碼測驗用例的撰寫,提高代碼測驗覆寫率,確保我們的代碼的健壯性,

檔案
檔案可以說是一個開源庫/框架必不可少的東西,我們開始學習一個開源庫/框架也往往是從檔案開始,我們可以使用Docsify,Vuepress等來快速搭建一個檔案網站,關于如何搭建檔案可以看看這篇隨筆https://www.cnblogs.com/weloe/p/17374287.html
轉載請註明出處,本文鏈接:https://www.uj5u.com/houduan/552197.html
標籤:其他
上一篇:Linux網路編程:socket實作client/server通信
下一篇:返回列表
