主頁 > 後端開發 > Go 語言優秀資源整理,為專案落地加速🏃

Go 語言優秀資源整理,為專案落地加速🏃

2020-09-16 20:59:15 後端開發

最后更新于2019.11.22

Go 語言優秀資源整理,為專案落地加速??

在 GitHub 上穩定更新,覺得不錯請點個 Star ??

如轉載分享,請保留出處,謝謝 ??

原文地址: https://shockerli.net/post/go-awesome

GitHub: https://github.com/shockerli/go-awesome


官網: https://golang.org

國內官網鏡像(訪問快~): https://golang.google.cn

GitHub: https://github.com/golang/go

開發者平臺: https://go.dev

Wiki: https://github.com/golang/go/wiki

指導原則

  • 簡單性

    復雜性把可讀的程式變得不可讀,復雜性終結了很多軟體專案,

  • 可讀性

    代碼是給人看的,代碼閱讀時長遠超撰寫,程式必須可維護,那可讀是第一步,

  • 生產率

    擁有眾多的工具集和基礎庫,可以很簡單方便的完成絕大多數作業,
    編譯速度足夠快,擁有動態語言的高效,但卻不會面臨動態語言不可靠的問題,
    自帶編程規范,使得團隊代碼一致,也幫助開發者發現和避免潛在的錯誤,

Awesome

  • GitHub Topic for Go
  • Awesome Go
  • golang-open-source-projects - 含描述的中文版 Awesome Go
  • Awesome Go Storage - Go 存盤相關開源專案
  • awesome-go-China - 專門收集華人寫的開源專案
  • Go Patterns - Go 版本的設計模式
  • go-algorithms - Go 版本的資料結構和演算法
  • Go 學習之路 - Go 學習資料匯集
  • Go 開發者路線圖

大牛

Go 語言方面的大牛,或者優秀 Go 專案的組織

  • mattn - 寫了數百個 Go 專案,盛產優質專案
  • Unknwon - gogs/macaron 等專案作者,《The Way to Go》譯者
  • Jinzhu - gorm/QOR 等作者
  • valyala - fasthttp/fastjson 等作者
  • vmihailenco - go-redis/go-pg 等作者
  • kataras - iris 作者
  • bep
  • spf13
  • Uber - Open Source Software at Uber
  • Gorilla web toolkit
  • Stretchr - Tame your unstructured data
  • Containous

檔案

  • Go 官方入門指南
  • Go 語言高級編程
  • Go 專家編程
  • Go 編程語言
  • Golang 標準庫檔案(官方/中文)
  • Go 語言標準庫 在線閱讀
  • 《The Way to Go》中文版
  • Go 語言圣經(中文版)
  • Go語言入門教程
  • Go 實戰開發
  • Go Web 應用開發
  • Go 學習技能樹
  • 實效 Go 編程
  • Go 語言語法詳解筆記
  • Go 語言學習資料與社區索引
  • Go database/sql tutorial
  • GO 命令教程
  • 深入決議 Go
  • Go 語言博客實踐
  • 學習 Go 語言
  • Go 夜讀 - Go 標準包、開源專案源代碼閱讀講解
  • Go2編程指南
  • Go database/sql tutorial - Go 資料庫(database/sql)開發使用教程
  • Go Web Examples - Go Web 開發示例
  • Go Assembly - 通過示例介紹 Go 匯編功能
  • Ultimate Go - 終極 Go 學習指南,包含大量檔案化的代碼和程式分析
  • Go 教程 - 騰訊云開發者手冊

指南

  • Uber Go Style Guide
  • Go 編程語言規范
  • 實效 Go 編程
  • Go Code Review Comments
  • Go Code Convention

文章

  • Go語言愛好者周刊
  • Go的50度灰:Golang新開發者要注意的陷阱和常見錯誤
  • Go 程式的性能優化及 pprof 的使用
  • gops - Go語言程式查看和診斷工具
  • Go原始碼分析——http.ListenAndServe()是如何作業的
  • GoConvey 框架使用指南
  • GoStub 框架使用指南
  • GoMock 框架使用指南
  • Monkey 框架使用指南

付費教程

  • 基于 Go 語言構建企業級的 RESTful API 服務 - 掘金小冊
  • Go語言核心36講 - 極客時間

成品專案

  • studygolang - Go 語言中文網
  • Hugo - 靜態網站生成器
  • 喧喧 - 由然之協同提供的面向企業即時通信解決方案
  • mkcert - 生成本地 HTTPS 加密證書的工具
  • Rainbond - 基于Docker、Kubernetes等容器技術的開源PaaS
  • NYADB2 - Go 實作的關系型資料庫, 值得用于學習
  • EiBlog - 國產 博客
  • pan-light - 不限速的百度網盤客戶端, 基于 Go + Qt5 開發

學習專案

  • 1m-go-websockets - 該專案演示了如何用 Go 撰寫一個可以提供超過一百萬個 websockets 連接、運行記憶體小于 1GB 的服務器
  • Go by Example - 通過實體學習 Go

開源類別庫

框架

  • Macaron - 一款具有高生產力和模塊化設計的 Go Web 框架 國產
  • Beego - 一個使用 Go 的思維來幫助您構建并開發 Go 應用程式的開源框架 國產
  • Gin - 輕量 Web 框架
  • Iris - Web 開發框架
  • Revel
  • echo
  • chi
  • Faygo - 國產
  • Teleport - Socket 框架
  • GoFrame - 國產
  • QOR - 系列應用開發組件包
  • Buffalo
  • DotWeb - 國產
  • REST Layer - REST API framework
  • Honeytrap
  • Ponzu
  • utron
  • muxie
  • go-admin - 與 laravel-admin 類似的后臺管理快速開發框架

中間件

  • Negroni - Web 中間件
  • csrf - CSRF 中間件
  • handlers - A collection of useful handlers for Go's net/http package

并發

  • SizedWaitGroup - 并發控制
  • concurrent - concurrency utilities

命令列

  • urfave/cli - 命令列程式構建工具
  • Cobra - 命令列構建包
  • GoTTY - 基于Web的命令列實時共享
  • progressbar - 在終端上輸出進度條
  • Color - 命令列文字顏色
  • termui - 終端儀表盤
  • gosu - 以指定的用戶權限來運行腳本
  • tui - 終端 UI
  • gotop - 類 top 系統監控顯示
  • go-colorable - Colorable writer for Windows
  • go-isatty - TTY 環境判斷
  • fzf - 命令列下的檔案 Finder
  • flaggy - 命令引數決議
  • go-daemon - daemon 行程包
  • pflag - 命令列引數處理
  • PIXterm - 在命令列終端中繪圖
  • WTF - 一個命令列的資訊儀表盤,可以定制顯示內容
  • go-prompt - 命令列互動式輸入

路由

  • HttpRouter
  • mux - URL 路由和調度器
  • gocraft/web

網路

  • fasthttp - 比 net/http 快 10 倍的 HTTP 工具包
  • Resty - HTTP & REST 客戶端包
  • DNS - DNS 庫
  • CoreDNS - DNS 服務器
  • Caddy - Web 服務器
  • RoadRunner - PHP 應用服務器、行程管理器、負載均衡,用于替代 Nginx + FPM
  • Tr?fik - 反向代理&負載均衡
  • GoReplay - 流量收集&回放
  • Vegeta - HTTP 負載壓測工具
  • hey - Web 壓測工具
  • bombardier - Web 壓測工具
  • p2pspider - 種子嗅探器
  • goim - 支持集群的 im 及實時推送服務
  • Proxy - golang 實作的高性能代理服務器
  • ProxyPool - 采集免費的代理資源為爬蟲提供有效的IP代理
  • frp - 可用于內網穿透的高性能的反向代理應用
  • torrent - BitTorrent 相關工具庫
  • httpteleport - Teleports 10Gbps http traffic over 1Gbps networks
  • FIND3 - WiFi 設備發現
  • SubFinder - 子域名發現工具
  • ggz - 短網址服務
  • httpstat

WebSocket

  • Gorilla WebSocket
  • websocketd - Go 開發的一鍵搭建 WebSocket 服務器命令列工具
  • ws - WebSocket 開發包
  • melody - WebSocket 服務框架

網關

  • GoKu API Gateway CE - eoLinker 開源的 API 網關

序列化

  • vmihailenco/msgpack - 支持 msgpack
  • go/codec - 支持 msgpack/binc/cbor/json
  • protobuf - Go 版本的 Protocol Buffers
  • Objx - 操作 map, slice, JSON 等資料的包

RPC

  • gRPC-Go - gRPC 官方包
  • gorpc
  • gorilla/rpc - 構建基于 HTTP 的 RPC 服務,比如 JSON-RPC
  • Lile - gRPC 服務構建包
  • rpcx
  • Twirp

郵件

  • Gomail - 郵件發送包
  • scorredoira/email

訊息

  • Tinode - 即時訊息服務器,通過 websocket/JSON 或 gRPC/TCP 等協議傳輸
  • NSQ - 分布式訊息平臺

檔案

  • Syncthing - 檔案同步
  • fsnotify - 檔案系統監控工具
  • gohttpserver - HTTP 靜態檔案服務器
  • XLSX - Excel 讀寫包
  • Excelize - 360 開源的 Excel 工具包
  • SeaweedFS - 分布式檔案系統
  • go-fastdfs - 分布式檔案存盤服務
  • Dragonfly - 基于 P2P 的分布式檔案系統
  • filetype - 檢測檔案型別
  • cae - 實作 ZIP/TAR.GZ 解壓縮
  • compress - Optimized compression packages
  • Afero - 檔案操作包
  • fsync - 檔案/目錄同步
  • filebrowser - Web File Browser
  • Bigfile - 檔案傳輸管理系統
  • statik - 靜態檔案服務

模板引擎

  • goTemplateBenchmark - 給各 Go 模板引擎做性能測驗,當然也就包含了最全的模板引擎包
  • Jet - 速度很快
  • amber - HTML 模板引擎
  • fasttemplate - Simple and fast template engine for Go
  • quicktemplate
  • mustache
  • Ace

文本

  • Blackfriday - Markdown 決議器
  • gpy - Go 語言漢字轉拼音工具
  • html2text - HTML 轉 text
  • go-hashids - hashids 的 Go 版本
  • go-pinyin - 漢語拼音轉換工具 Go 版
  • mahonia - 字符集編碼轉換
  • pangu.go - Go 版本的 pangu,給中英文之間加空格
  • goorgeous - A Go ORG syntax parser to HTML
  • go-diff - Go 版本的 diff 工具包
  • Chroma - 代碼語法高亮
  • Emoji
  • prose - natural language processing library
  • minify - Web 靜態資源壓縮(HTML/JS/CSS/JSON)
  • Lute - 結構化的 Markdown 引擎
  • docx2md 轉換 Word 為 Markdown
  • Inflection - Pluralizes and singularizes English nouns

檔案

  • swag - Swagger for Go
  • gin-swagger - Swagger for Gin
  • go-swagger - Swagger 2.0 implementation for go

數學計算

  • decimal - 解決浮點數計算精度問題
  • fixed

日期時間

  • now
  • when - 自然日期時間決議

配置

  • GoDotEnv - .env 組態檔決議
  • yaml
  • toml - TOML 決議&編碼包
  • INI - INI 組態檔決議
  • Viper - 支持 JSON, TOML, YAML, HCL, Java 等組態檔
  • Multiconfig
  • configor
  • envconfig
  • confd - 配置管理工具
  • HCL - configuration language
  • env - 決議 ENV 環境變數到結構體中

爬蟲

  • Crawlab - 基于Golang的分布式爬蟲管理平臺,支持Python、NodeJS、Go、Java、PHP等多種編程語言以及多種爬蟲框架
  • Colly - 網路爬蟲框架
  • Pholcus - 支持分布式的高并發、重量級爬蟲軟體
  • go_spider
  • goquery
  • Muffet - 網站鏈接檢查器
  • Creeper

資料庫相關

  • GORM
    • gorm2sql - 根據 Model Struct 生成建表陳述句
  • Xorm - 支持 MySQL、PostgreSQL、SQLite3 以及 MsSQL
  • GoRose
  • Go-MySQL-Driver
  • sqlx - database/sql 擴展包
  • qb - the database toolkit for go
  • Redigo - Redis 客戶端
  • go-redis
  • mongo-go-driver - MongoDB 官方出品的 Go 語言驅動
  • mgo
    • globalsign/mgo - The MongoDB driver for Go
    • mgo使用指南
  • amqp - Go client for AMQP 0.9.1
  • xo - a command-line tool to generate Go code based on a database schema or a custom query
  • kingshard - MySQL Proxy
  • SOAR - 對SQL進行優化和改寫的自動化工具
  • gh-ost - GitHub 開源的在線更改 MySQL 表結構的工具
  • go-mssqldb - MSSQL 驅動
  • pq - PostgreSQL 驅動
  • SQLer - write APIs using direct SQL queries with no hassle, let's rethink about SQL
  • gocraft/dbr
  • Gaea - 小米開源的基于 MySQL 協議的資料庫中間件
  • OctoSQL - 支持多資料庫的 SQL 查詢工具
  • goose - 資料庫遷移工具
  • ent - An Entity Framework For Go

資料庫引擎

  • etcd - KV 分布式存盤
  • InfluxDB
  • CockroachDB - SQL database
  • Cayley - 圖資料庫
  • RadonDB - 基于 MySQL 研發的新一代分布式關系型資料庫
  • AresDB - Uber 開源的 GPU 驅動的實時分析存盤&查詢引擎
  • leveldb - LevelDB 的 Go 實作
  • Dgraph - 分布式圖資料庫

搜索

  • wukong - 全文搜索引擎
  • go-elasticsearch - 官方 ES 客戶端
  • elastic - Elasticsearch 客戶端
  • go-mysql-elasticsearch - Sync MySQL data into elasticsearch
  • gse - Go 語言分詞
  • sego - Go 中文分詞
  • Riot - 全文搜索引擎

表單

  • validator
  • go-tagexpr - 位元組跳動開源的結構體標簽運算式解釋器
  • schema - converts structs to and from form values

Auth

  • Casbin - 權限控制管理
  • pam-ussh - Uber's SSH certificate pam module
  • jwt-go - JWT for Go
  • sessions - 后端 SESSION 服務
  • securecookie - cookie 加密/解密
  • Goth - Multi-Provider Authentication for Go

快取

  • GCache
  • bbolt - key/value store
  • BigCache
  • go-cache - KV 記憶體快取
  • gomemcache - Memcache 客戶端
  • cache2go

圖片

  • barcode - 條形碼/二維碼生成器
  • picfit - 圖片操作、裁剪、管理服務器
  • gmfs - 圖片操作、裁剪、管理服務器
  • besticon - favicon 服務
  • Caire - 圖片操作庫
  • Imaging - 圖片操作庫
  • gocaptcha - 驗證碼生成
  • go-is-svg - 校驗是否為 SVG 圖片
  • identicon - 根據用戶的 IP 、郵箱名等任意資料為用戶產生漂亮的隨機頭像

圖表

  • go-echarts - Echarts 圖表庫

構建編譯

  • Mage - a Make/rake-like build tool using Go
  • GoReleaser - Go 多平臺二進制檔案打包、并支持發布到 Homebrew 的工具
  • goxc - 跨平臺編譯工具(因 1.5 版本開始已自帶交叉編譯,故已不再維護)
  • Task - 類似于 Make 的構建工具
  • codegangsta/gin - 熱編譯工具,自動監測檔案變化而重新編譯并重啟,方便開發除錯 Web 應用

優雅升級

  • tableflip

代碼分析

  • reviewdog - Code Review 機器人
  • revive - 代碼檢查分析
  • GolangCI-Lint - 代碼質量檢查分析工具
  • errcheck - 檢測未處理的錯誤(errors)
  • Staticcheck - 一系列的 Go 代碼靜態分析工具
  • Golint - Google 官方出品的代碼質量檢測工具
  • GoReporter
  • go-critic
  • gocloc - 分語言代碼行數統計

除錯

  • go-spew - 變數列印工具
  • Delve - Debug 工具
  • repr - 變數列印工具
  • pp - 彩色變數列印工具
  • gops - 谷歌官方出品的 Go 程式監控除錯工具
  • pprof
  • go-callvis - 可視化Go程式的呼叫圖
  • q - 自動列印變數型別并且格式化輸出
  • Litter

測驗

  • GoConvey - 含Web界面的單元測驗框架
  • GoMock - 谷歌出品的Mock測驗框架
  • GoStub
  • Monkey
  • Ginkgo - BBD 測驗框架
  • fperf - 壓測工具
  • gocheck
  • Testify
  • gotests - Generate Go tests from your source code
  • TestSQL - 根據 SQL 創建陳述句生成測驗資料
  • httpmock - HTTP Mock
  • Goblin - BDD 測驗框架
  • Faker - Struct Data Fake Generator
  • go-tprof - 包測驗報告生成工具

錯誤處理

  • errors
  • errorx

安全

  • Kunpeng - 開源POC檢測框架

硬體

  • go-hardware - 收集了一堆關于硬體資訊的包
  • cpuid - CPU 資訊

UUID

  • go.uuid - UUID 庫
  • SEQSVR - Go + MySQL 實作的分布式 ID 生成服務
  • google/uuid - Google 開源的 uuid 包
  • gofrs/uuid
  • snowflake - Twitter snowflake IDs

日志&收集

  • Logrus - 日志記錄包
  • zerolog
  • zap - Uber 開發的日志記錄包
  • Seelog
  • logkit - 七牛開源的日志收集工具
  • gogstash - 類似于 Logstash 的日志收集器
  • lumberjack

監控

  • OpenFalcon - 小米開源的監控系統
  • Prometheus - 監控系統
  • Grafana - 分析監視平臺, 支持 Graphite, Elasticsearch, OpenTSDB, Prometheus, InfluxDB 等資料源
  • TeaWeb - 一款集靜態資源、快取、代理、統計、監控于一體的可視化智能WebServer
  • Jaeger - 分布式追蹤系統

統計分析

  • Fathom - Web 站點統計
  • Signal - Web 站點統計

容器技術

  • Rancher - 全堆疊化企業級容器管理平臺
  • Gorsair
  • docui - TUI Client for Docker

機器學習

  • goml - 機器學習庫
  • GoLearn - 一個 "開箱即用" 的機器學習庫
  • glow - 易用的分布式計算系統
  • Gobot - 機器人和物理計算語言庫
  • Olivia - 神經網路
  • Pico - 基于像素強度比較的物體檢測紙張的純 Go 臉部檢測庫

演算法

  • GoDS
  • Dragonboat - 多組 Raft 共識演算法庫
  • golang-lru - LRU 演算法實作

資料結構

  • go-datastructures
  • Play-with-Data-Structures - 「玩轉資料結構」課程的 Go 語言實作版本
  • HashMap
  • SipHash - SipHash-2-4
  • Bigslice
  • golang-set - The missing set collection

依賴注入

  • Wire
  • dig
  • Fx

JSON

  • GJSON - JSON 解釋器
  • SJSON - JSON 修改工具
  • fastjson - fast JSON parser and validator for Go
  • jsonparser
  • ffjson
  • json-iterator - 滴滴開源的 JSON 決議器

依賴管理

  • goproxy.io - GOPROXY 代理服務
  • goproxy.cn - 更適合國內用戶的代理服務
  • Gopm - Go 包管理工具
  • govendor - Vendor 包管理工具
  • gom - 包版本管理工具

微服務

  • Istio [中文檔案] - 跨語言微服務框架
  • goa
  • Micro - 微服務工具
  • Go kit - Go 微服務工具集
  • GoKit CLI - Go kit 腳手架
  • gogo
  • Go-Chassis
  • Go Micro - 微服務框架
  • Kite

持續集成/部署

  • CDS - 持續集成服務
  • gopub
  • CodePub
  • syncd - 代碼部署工具
  • Drone - 基于 Docker 的持續發布平臺
  • Cyclone - 持續集成&發布平臺

Git

  • gogs - 類似于 GitLab 的 Git 服務器
  • Gitea - 由 gogs 分叉出的 Git 服務器
  • go-git - Go 實作的 Git 操作
  • gitin - commit/branch/status explorer for git
  • hub - GitHub 命令列工具
  • git-o-matic - 一個監控 Git 倉庫變化和自動 pull/push 的工具

限流器

  • Tollbooth - Simple middleware to rate-limit HTTP requests
  • ratelimit
  • RateLimit
  • go-rate
  • Circuit - 熔斷器
  • uber-go/ratelimit

解釋器

  • participle - 通用的自定義語法決議包
  • GopherLua - VM and compiler for Lua in Go
  • go-lua - A Lua VM in pure Go
  • php-parser - PHP AST 語法決議
  • otto - JavaScript 解釋器
  • goja - ECMAScript 5.1(+) implementation in Go
  • gpython - Python Interpreter on Go
  • starlark-go - Starlark in Go
  • avo - Generate x86 Assembly with Go
  • wagon - WebAssembly 解釋器
  • GopherJS - 把 Go 代碼編譯成 JavaScript 代碼
  • Yaegi - Go 語言解釋器
  • properties - Java properties scanner for Go
  • gobasic - A BASIC interpreter written in golang

自定義解釋器

  • Math-Engine - 使用 Go 實作的數學運算式決議計算引擎庫,學習語法決議很適用
  • Gval - 運算式計算
  • expression-parsing
  • goexp - Recursive descent expression parser in Go
  • goastch - Go AST 語法決議
  • tdop
  • swallow
  • Anko
  • Expr - 編譯&執行字串中的運算式
  • Tengo - 用 Go 撰寫的腳本語言
  • V - Go 撰寫的語言
  • kumarUjjawal/bison
  • Monkey

查詢語言

  • graphql - Go 實作的 GraphQL
  • RQL - REST 資源查詢語言
  • Thunder - GraphQL 服務構建框架

游戲相關

  • Nano - 游戲開發框架
  • Leaf
  • einx

桌面開發

  • Lorca - 用 Go 撰寫 HTML5 桌面程式,依賴 Chrome 進行 UI 渲染,但卻不把 Chrome 打包到應用中
  • webview - 用 Go 構建跨平臺的桌面軟體
  • walk - Windows GUI toolkit
  • go-gtk - Go bindings for GTK
  • ui - Platform-native GUI library for Go
  • fyne - Cross platform GUI in Go based on Material Design
  • go-gl - Go bindings for OpenGL (generated via glow)
  • therecipe/qt - 基于 Qt 的跨全平臺 UI 包

任務/定時器

  • Grift - Go based task runner

微信

  • weapp - 微信小程式 SDK

未歸類

  • Robotgo - Golang 跨平臺自動化系統,控制鍵盤滑鼠位圖和讀取螢屏,視窗句柄以及全域事件監聽
  • cron - a cron library for go
  • goCron - A Golang Job Scheduling Package
  • com - 工具包
  • php2go - Go 實作的 140+ 個 PHP 函式功能包
  • gommon - Common packages for Go
  • Go Report Card - Go 專案質量分析報告工具
  • i18n - i18n 多語言工具包
  • Paginater - 分頁工具
  • gls - Goroutine local storage
  • go-version - 版本號比較
  • reflect2 - reflect api without runtime reflect.Value cost
  • mapstructure - Go library for decoding generic map values into native Go structures
  • copier - struct 之間拷貝值
  • Cast - 資料型別轉換
  • Metabolize - Decodes HTML meta tags into a Golang struct
  • otp - 一次性密碼工具包(One Time Password utilities)
  • feeds - RSS 內容生成
  • gofeed - RSS & Atom feeds 內容決議
  • wechat-go - 微信 Web 版 API 的 Go 實作
  • misspell - 常拼寫錯誤的英語單詞
  • Standard Go Project Layout - Go 專案目錄結構示例
  • CRDT - CRDT(Convergent and Commutative Replicated Data Types)最終一致性演算法的實作
  • script - Making it easy to write shell-like scripts in Go
  • sysadmin-utils

工具

  • goenv - Go 版本管理
  • GoLand - IDE 軟體
  • IntelliJ系列軟體Go語言插件

資源站點

  • Go 語言中文網
  • Golang 中國
  • go-zh
  • Golang sizeof tips - 輸入結構體定義,會顯示記憶體布局

感謝您的閱讀,覺得內容不錯,點個贊吧 ??

原文地址: https://shockerli.net/post/go-awesome/

轉載請註明出處,本文鏈接:https://www.uj5u.com/houduan/59777.html

標籤:Go

上一篇:go-反射

下一篇:Go 多變數賦值時注意事項

標籤雲
其他(157675) Python(38076) JavaScript(25376) Java(17977) C(15215) 區塊鏈(8255) C#(7972) AI(7469) 爪哇(7425) MySQL(7132) html(6777) 基礎類(6313) sql(6102) 熊猫(6058) PHP(5869) 数组(5741) R(5409) Linux(5327) 反应(5209) 腳本語言(PerlPython)(5129) 非技術區(4971) Android(4554) 数据框(4311) css(4259) 节点.js(4032) C語言(3288) json(3245) 列表(3129) 扑(3119) C++語言(3117) 安卓(2998) 打字稿(2995) VBA(2789) Java相關(2746) 疑難問題(2699) 细绳(2522) 單片機工控(2479) iOS(2429) ASP.NET(2402) MongoDB(2323) 麻木的(2285) 正则表达式(2254) 字典(2211) 循环(2198) 迅速(2185) 擅长(2169) 镖(2155) 功能(1967) .NET技术(1958) Web開發(1951) python-3.x(1918) HtmlCss(1915) 弹簧靴(1913) C++(1909) xml(1889) PostgreSQL(1872) .NETCore(1853) 谷歌表格(1846) Unity3D(1843) for循环(1842)

熱門瀏覽
  • 【C++】Microsoft C++、C 和匯編程式檔案

    ......

    uj5u.com 2020-09-10 00:57:23 more
  • 例外宣告

    相比于斷言適用于排除邏輯上不可能存在的狀態,例外通常是用于邏輯上可能發生的錯誤。 例外宣告 Item 1:當函式不可能拋出例外或不能接受拋出例外時,使用noexcept 理由 如果不打算拋出例外的話,程式就會認為無法處理這種錯誤,并且應當盡早終止,如此可以有效地阻止例外的傳播與擴散。 示例 //不可 ......

    uj5u.com 2020-09-10 00:57:27 more
  • Codeforces 1400E Clear the Multiset(貪心 + 分治)

    鏈接:https://codeforces.com/problemset/problem/1400/E 來源:Codeforces 思路:給你一個陣列,現在你可以進行兩種操作,操作1:將一段沒有 0 的區間進行減一的操作,操作2:將 i 位置上的元素歸零。最終問:將這個陣列的全部元素歸零后操作的最少 ......

    uj5u.com 2020-09-10 00:57:30 more
  • UVA11610 【Reverse Prime】

    本人看到此題沒有翻譯,就附帶了一個自己的翻譯版本 思考 這一題,它的第一個要求是找出所有 $7$ 位反向質數及其質因數的個數。 我們應該需要質數篩篩選1~$10^{7}$的所有數,這里就不慢慢介紹了。但是,重讀題,我們突然發現反向質數都是 $7$ 位,而將它反過來后的數字卻是 $6$ 位數,這就說明 ......

    uj5u.com 2020-09-10 00:57:36 more
  • 統計區間素數數量

    1 #pragma GCC optimize(2) 2 #include <bits/stdc++.h> 3 using namespace std; 4 bool isprime[1000000010]; 5 vector<int> prime; 6 inline int getlist(int ......

    uj5u.com 2020-09-10 00:57:47 more
  • C/C++編程筆記:C++中的 const 變數詳解,教你正確認識const用法

    1、C中的const 1、區域const變數存放在堆疊區中,會分配記憶體(也就是說可以通過地址間接修改變數的值)。測驗代碼如下: 運行結果: 2、全域const變數存放在只讀資料段(不能通過地址修改,會發生寫入錯誤), 默認為外部聯編,可以給其他源檔案使用(需要用extern關鍵字修飾) 運行結果: ......

    uj5u.com 2020-09-10 00:58:04 more
  • 【C++犯錯記錄】VS2019 MFC添加資源不懂如何修改資源宏ID

    1. 首先在資源視圖中,添加資源 2. 點擊新添加的資源,復制自動生成的ID 3. 在解決方案資源管理器中找到Resource.h檔案,編輯,使用整個專案搜索和替換的方式快速替換 宏宣告 4. Ctrl+Shift+F 全域搜索,點擊查找全部,然后逐個替換 5. 為什么使用搜索替換而不使用屬性視窗直 ......

    uj5u.com 2020-09-10 00:59:11 more
  • 【C++犯錯記錄】VS2019 MFC不懂的批量添加資源

    1. 打開資源頭檔案Resource.h,在其中預先定義好宏 ID(不清楚其實ID值應該設定多少,可以先新建一個相同的資源項,再在這個資源的ID值的基礎上遞增即可) 2. 在資源視圖中選中專案資源,按F7編輯資源檔案,按 ID 型別 相對路徑的形式添加 資源。(別忘了先把檔案拷貝到專案中的res檔案 ......

    uj5u.com 2020-09-10 01:00:19 more
  • C/C++編程筆記:關于C++的參考型別,專供新手入門使用

    今天要講的是C++中我最喜歡的一個用法——參考,也叫別名。 參考就是給一個變數名取一個變數名,方便我們間接地使用這個變數。我們可以給一個變數創建N個參考,這N + 1個變數共享了同一塊記憶體區域。(參考型別的變數會占用記憶體空間,占用的記憶體空間的大小和指標型別的大小是相同的。雖然參考是一個物件的別名,但 ......

    uj5u.com 2020-09-10 01:00:22 more
  • 【C/C++編程筆記】從頭開始學習C ++:初學者完整指南

    眾所周知,C ++的學習曲線陡峭,但是花時間學習這種語言將為您的職業帶來奇跡,并使您與其他開發人員區分開。您會更輕松地學習新語言,形成真正的解決問題的技能,并在編程的基礎上打下堅實的基礎。 C ++將幫助您養成良好的編程習慣(即清晰一致的編碼風格,在撰寫代碼時注釋代碼,并限制類內部的可見性),并且由 ......

    uj5u.com 2020-09-10 01:00:41 more
最新发布
  • Rust中的智能指標:Box<T> Rc<T> Arc<T> Cell<T> RefCell<T> Weak

    Rust中的智能指標是什么 智能指標(smart pointers)是一類資料結構,是擁有資料所有權和額外功能的指標。是指標的進一步發展 指標(pointer)是一個包含記憶體地址的變數的通用概念。這個地址參考,或 ” 指向”(points at)一些其 他資料 。參考以 & 符號為標志并借用了他們所 ......

    uj5u.com 2023-04-20 07:24:10 more
  • Java的值傳遞和參考傳遞

    值傳遞不會改變本身,參考傳遞(如果傳遞的值需要實體化到堆里)如果發生修改了會改變本身。 1.基本資料型別都是值傳遞 package com.example.basic; public class Test { public static void main(String[] args) { int ......

    uj5u.com 2023-04-20 07:24:04 more
  • [2]SpinalHDL教程——Scala簡單入門

    第一個 Scala 程式 shell里面輸入 $ scala scala> 1 + 1 res0: Int = 2 scala> println("Hello World!") Hello World! 檔案形式 object HelloWorld { /* 這是我的第一個 Scala 程式 * 以 ......

    uj5u.com 2023-04-20 07:23:58 more
  • 理解函式指標和回呼函式

    理解 函式指標 指向函式的指標。比如: 理解函式指標的偽代碼 void (*p)(int type, char *data); // 定義一個函式指標p void func(int type, char *data); // 宣告一個函式func p = func; // 將指標p指向函式func ......

    uj5u.com 2023-04-20 07:23:52 more
  • Django筆記二十五之資料庫函式之日期函式

    本文首發于公眾號:Hunter后端 原文鏈接:Django筆記二十五之資料庫函式之日期函式 日期函式主要介紹兩個大類,Extract() 和 Trunc() Extract() 函式作用是提取日期,比如我們可以提取一個日期欄位的年份,月份,日等資料 Trunc() 的作用則是截取,比如 2022-0 ......

    uj5u.com 2023-04-20 07:23:45 more
  • 一天吃透JVM面試八股文

    什么是JVM? JVM,全稱Java Virtual Machine(Java虛擬機),是通過在實際的計算機上仿真模擬各種計算機功能來實作的。由一套位元組碼指令集、一組暫存器、一個堆疊、一個垃圾回收堆和一個存盤方法域等組成。JVM屏蔽了與作業系統平臺相關的資訊,使得Java程式只需要生成在Java虛擬機 ......

    uj5u.com 2023-04-20 07:23:31 more
  • 使用Java接入小程式訂閱訊息!

    更新完微信服務號的模板訊息之后,我又趕緊把微信小程式的訂閱訊息給實作了!之前我一直以為微信小程式也是要企業才能申請,沒想到小程式個人就能申請。 訊息推送平臺🔥推送下發【郵件】【短信】【微信服務號】【微信小程式】【企業微信】【釘釘】等訊息型別。 https://gitee.com/zhongfuch ......

    uj5u.com 2023-04-20 07:22:59 more
  • java -- 緩沖流、轉換流、序列化流

    緩沖流 緩沖流, 也叫高效流, 按照資料型別分類: 位元組緩沖流:BufferedInputStream,BufferedOutputStream 字符緩沖流:BufferedReader,BufferedWriter 緩沖流的基本原理,是在創建流物件時,會創建一個內置的默認大小的緩沖區陣列,通過緩沖 ......

    uj5u.com 2023-04-20 07:22:49 more
  • Java-SpringBoot-Range請求頭設定實作視頻分段傳輸

    老實說,人太懶了,現在基本都不喜歡寫筆記了,但是網上有關Range請求頭的文章都太水了 下面是抄的一段StackOverflow的代碼...自己大修改過的,寫的注釋挺全的,應該直接看得懂,就不解釋了 寫的不好...只是希望能給視頻網站開發的新手一點點幫助吧. 業務場景:視頻分段傳輸、視頻多段傳輸(理 ......

    uj5u.com 2023-04-20 07:22:42 more
  • Windows 10開發教程_編程入門自學教程_菜鳥教程-免費教程分享

    教程簡介 Windows 10開發入門教程 - 從簡單的步驟了解Windows 10開發,從基本到高級概念,包括簡介,UWP,第一個應用程式,商店,XAML控制元件,資料系結,XAML性能,自適應設計,自適應UI,自適應代碼,檔案管理,SQLite資料庫,應用程式到應用程式通信,應用程式本地化,應用程式 ......

    uj5u.com 2023-04-20 07:22:35 more