melody go

glog 日志库简介与测试【GO 常用的库】

〇、前言 golang/glog 是 C++ 版本 google/glog 的 Go 版本实现,基本实现了原生 glog 的日志格式。 在 Kuberntes 中,glog 是默认日志库。因此需要详细了解下。下面列举下 glog 的特点: 高效性:glog 采用了异步写入日志的方式,这意味着日志记录 ......
常用 简介 日志 glog

go-zero 生成中间件

1.API编写 2.生成API 生成后的目录如下 ......
中间件 go-zero zero go

go-zero接入GORM并使用

1.初始化数据库连接 2.建立模型 3.配置GORMDB 4.在RPC使用 5.启动RPC会看到如下结果 6.进行测试 ......
go-zero GORM zero go

Go语言基础-02复合数据类型

课程内容 1流程控制补充 goto break+label continue+label 2数组: 声明(零值,类型),初始化,操作: 3切片: 声明(零值,类型),初始化,操作: 4map: 声明(零值,类型),初始化,操作: 5练习,字符统计 我有一个梦想 6字符串处理 7排序 8作业 001 ......
语言基础 语言 类型 基础 数据

go-zero 生成model

1.准备MYSQL文件 CREATE TABLE user ( id bigint AUTO_INCREMENT, name varchar(255) NULL COMMENT 'The username', password varchar(255) NOT NULL DEFAULT '' COM ......
go-zero model zero go

go-zero 生成RPC

1.编写message.proto文件 syntax = "proto3";package pb;// 生成golang 代码后的包名option go_package ="./pb";enum Status{ UNSPECIFIED=0; SUCCESS=1; FAILED=2;}message ......
go-zero zero RPC go

Go语言中JSON的反序列化规则

Unmarshal 解析 func Unmarshal(data []byte, v any) error Unmarshal 解析 JSON 编码的数据,并将结果存储在 v 指向的值中。如果 v 为 nil 或不是指针,Unmarshal 返回一个 InvalidUnmarshalError 错误 ......
序列 规则 语言 JSON

Go语句与表达式深度解析:全案例手册

关注公众号【TechLeadCloud】,分享互联网架构、云服务技术的全维度知识。作者拥有10+年互联网服务架构、AI产品研发经验、团队管理经验,同济本复旦硕,复旦机器人智能实验室成员,阿里云认证的资深架构师,项目管理专业人士,上亿营收AI产品研发负责人。 语句 语句是Go编程语言中完成特定操作的单 ......
表达式 语句 深度 案例 手册

Go每日一库之5:cobra

简介 cobra是一个命令行程序库,可以用来编写命令行程序。同时,它也提供了一个脚手架, 用于生成基于 cobra 的应用程序框架。非常多知名的开源项目使用了 cobra 库构建命令行,如Kubernetes、Hugo、etcd等等等等。 本文介绍 cobra 库的基本使用和一些有趣的特性。 关于作 ......
cobra

Python/Java/Php/C#/Go/C/C++这几个主力语言,谁到底真的不行

1.前言 阿里最近又进行了史诗级的大裁员,IT行业肉眼可见的持续性衰退与没落。当潮水退却,才能看出谁在裸泳。作为当今计算机编程界的几大主力语言,谁才真正的裸泳者呢? 2.描述 1.Python: Python作为一款解释性的动态语言,它很早就诞生了。它的第一个发行版1991年出世,比Java还要早四 ......
主力 语言 Python Java Php

Go每日一库之4:go-ini

简介 ini 是 Windows 上常用的配置文件格式。MySQL 的 Windows 版就是使用 ini 格式存储配置的。 go-ini是 Go 语言中用于操作 ini 文件的第三方库。 本文介绍go-ini库的使用。 快速使用 go-ini 是第三方库,使用前需要安装: $ go get gop ......
go-ini ini go

fyne container.NewHSplit水平分割容器 Go golang

环境:go fyne 要求:go项目中 将窗口分成左右两个容器,实现窗口分割 效果: 实现代码: 1 package main 2 3 import ( 4 "fyne.io/fyne/v2" 5 "fyne.io/fyne/v2/app" 6 "fyne.io/fyne/v2/container" ......
容器 container NewHSplit 水平 golang

ClickHouse使用之三 ——go程序操作

1. 得到一个clickhouse连接: import ( "context" "fmt" "log" "github.com/ClickHouse/clickhouse-go/v2" "github.com/ClickHouse/clickhouse-go/v2/lib/driver" ) fun ......
ClickHouse 程序

Go代码包与引入:如何有效组织您的项目

本文深入探讨了Go语言中的代码包和包引入机制,从基础概念到高级应用一一剖析。文章详细讲解了如何创建、组织和管理代码包,以及包引入的多种使用场景和最佳实践。通过阅读本文,开发者将获得全面而深入的理解,进一步提升Go开发的效率和质量。 关注公众号【TechLeadCloud】,分享互联网架构、云服务技术 ......
代码 项目

为不断增长的Go生态系统扩展gopls

原文在这里。 由 Robert Findley and Alan Donovan 发布于 2023年9月8日 今年夏天初,Go团队发布了gopls的v0.12版本,这是Go语言的语言服务器,它进行了核心重写,使其能够适应更大的代码库。这是一项长达一年的努力的成果,我们很高兴分享我们的进展,并稍微谈一 ......
生态 不断 系统 gopls

ddns go 域名解析,为什么解析成功而你访问不了?

ddns-go介绍: DDNS-GO自动获得你的公网 IPv4 或 IPv6 地址,并解析到对应的域名服务。支持的域名服务商:阿里云、腾讯云Dnspod、Cloudflare、华为云、百度云、Porkbun、GoDaddy、Google Domains以及自定义Callback 使用: 之前写过一篇 ......
域名 ddns go

Go - test coverage

......
coverage test Go

Go每日一库之3:go-homedir

简介 今天我们来看一个很小,很实用的库go-homedir。顾名思义,go-homedir用来获取用户的主目录。 实际上,使用标准库os/user我们也可以得到这个信息: package main import ( "fmt" "log" "os/user" ) func main() { u, e ......
go-homedir homedir go

Golang(又称Go语言)是一种开源的静态强类型编程语

Golang(又称Go语言)是一种开源的静态强类型编程语言,巧瞒七星解磐键由Google在2007年开始开发,并于2009年发布。它的设计目标是提供一种简洁、高效的语言,同时具备高并发、高性能的特性。Golang的语法风格简洁明了,易于上手,适用于各种规模的项目。下面将介绍Golang在实际应用中的 ......
又称 静态 语言 类型 Golang

2023-09-10:用go语言编写。作为项目经理,你规划了一份需求的技能清单 req_skills, 并打算从备选人员名单 people 中选出些人组成一个「必要团队」 ( 编号为 i 的备选人员

2023-09-10:用go语言编写。作为项目经理,你规划了一份需求的技能清单 req_skills, 并打算从备选人员名单 people 中选出些人组成一个「必要团队」 ( 编号为 i 的备选人员 people[i] 含有一份该备选人员掌握的技能列表)。 所谓「必要团队」,就是在这个团队中, 对于 ......
人员 人员名单 选出 req_skills 清单

go微服务开发:go-zero入门教程(三)

背景:开发中,免不了要对代码进行debug调试,go也不例外,使用go-zero框架时,该怎么对项目进行调试呢? 以user模块为例,找到service/user/api/user.go,这是user模块的入口,打开user.go可以看到main函数。 TRANSLATE with x Englis ......
入门教程 go-zero 教程 zero go

Go运算操作符全解与实战:编写更高效的代码!

本文全面探讨了Go语言中的各类运算操作符,从基础的数学和位运算到逻辑和特殊运算符。文章旨在深入解析每一种运算操作符的工作原理、应用场景和注意事项,以帮助开发者编写更高效、健壮和可读的Go代码。 简介 Go语言,作为一种现代的编程语言,不仅因为其简单易读的语法而受到欢迎,还因为它的性能和高度并发能力在 ......
操作符 实战 代码

Go Maps

Maps用于以键值对的形式存储数据值。Maps中的每个元素都是一个键值对。Maps是一个无序且可更改的集合,不允许重复。Maps的长度是其元素的数量。您可以使用 len() 函数来查找长度。Maps的默认值是 nil。Maps保存对底层哈希表的引用。 Go语言有多种方法来创建Maps。 使用 var ......
Maps Go

Go类型全解:常量与变量大全!

本篇文章深入探讨了 Go 语言中类型确定值、类型不确定值以及对应类型转换的知识点,后续充分解析了常量与变量及其高级用法,并举出丰富的案例。 关注公众号【TechLeadCloud】,分享互联网架构、云服务技术的全维度知识。作者拥有10+年互联网服务架构、AI产品研发经验、团队管理经验,同济本复旦硕, ......
常量 变量 类型 大全

Go学习笔记4

十三、对象 9.挎包创建结构体实例 【1】创建不同的包: 【2】student.go: 【3】main.go: 发现:如果结构体首字母大写的话,在其它包下可以访问 但是:如果结构体的首字母小写? 解决:结构体首字母小写,跨包访问没问题: 》工厂模式 10.封装 【1】什么是封装: 封装(encaps ......
笔记

centOS安装配置go1.18环境

今天在centOS系统宝塔面板下创建Go项目,打算安装Go环境。 Gin、Gorm中的一些新语言特性似乎要求go1.18及以上,因此我安装并记录下了以下配置过程。 卸载原有旧版本(没有则不做) sudo rm -rf /usr/local/go 下载go对应版本二进制包 wget https://s ......
环境 centOS go1 18 go

Go - benchstat

zzh@ZZHPC:/zdata/MyPrograms/Go/aaa/Ch06/06_02$ go test -run NONE -bench . -count=5 -benchmem | tee cols.txtgoos: linuxgoarch: amd64pkg: zzh/aaa/Ch06/0 ......
benchstat Go

Go 中普通指针、unsafe.Pointer 与 uintptr 之间的关系和指针运算

C 语言指针运算 指针运算就是对指针类型的变量做常规数学运算,例如加减操作,实现地址的偏移。指针运算在 C 语言中是原生支持的,可以直接在指针变量上做加减,例如: #include <stdio.h> const int MAX = 3; int main () { int var[] = {10, ......
指针 之间 Pointer uintptr unsafe

Go 中几种常见的编程模式

模式可以理解成最佳实践,或者是约定俗成的规范或套路,熟悉一些常见模式可以方便理解项目代码。本文是参考 ......
常见 模式 Go

Go Module Package Workspace 参考笔记

这篇笔记整理记录了在阅读 go 官方文档中对于依赖管理、包引入、多模块开发时的工作区等相关内容。 module path module path 可以唯一标识一个 module,也是定位一个 module 下的 package 时的前缀。 module path 应该可以表明该 module 是做什 ......
Workspace Package 笔记 Module Go