GO

kubernetes client-go 避坑

原文链接:https://www.cnblogs.com/gaorong/p/16939111.html informer cache中的数据是只读的, 任何修改都先deepcopy informer cache中的数据是只读的, 任何修改都应该先deepcopy出来,然后提交apiserver, ......
kubernetes client-go client go

go语言学习

golang 中非常重要的一种数据结构是 slice, 我们通过由浅入深的例子来一步步了解并最终熟练使用 slice.slice 是一个引用类型, 总是指向一个底层 array. 声明可以向 array一样, 只是不需要长度. slice 就像一个结构体, 包含三个元素:一个指针, 指向数组中的 s ......
语言学习 语言

Go 代码块与作用域,变量遮蔽问题详解

Go 代码块与作用域详解 目录Go 代码块与作用域详解一、引入二、代码块 (Block)2.1 代码块介绍2.2 显式代码块2.3 隐式代码块2.4 空代码块2.5 支持嵌套代码块三、作用域 (Scope)3.1 作用域介绍3.2 作用域划定原则3.3 标识符的作用域范围3.3.1 预定义标识符作用 ......
变量 作用 代码 问题 Go

Go泛型解密:从基础到实战的全方位解析

本篇文章深入探讨了Go语言的泛型特性,从其基础概念到高级用法,并通过实战示例展示了其在实际项目中的应用。 关注【TechLeadCloud】,分享互联网架构、云服务技术的全维度知识。作者拥有10+年互联网服务架构、AI产品研发经验、团队管理经验,同济本复旦硕,复旦机器人智能实验室成员,阿里云认证的资 ......
实战 全方位 基础

2023-10-14:用go语言,给定 pushed 和 popped 两个序列,每个序列中的 值都不重复, 只有当它们可能是在最初空栈上进行的推入 push 和弹出 pop 操作序列的结果时, 返回

2023-10-14:用go语言,给定 pushed 和 popped 两个序列,每个序列中的 值都不重复, 只有当它们可能是在最初空栈上进行的推入 push 和弹出 pop 操作序列的结果时, 返回 true;否则,返回 false 。 输入:pushed = [1,2,3,4,5], poppe ......
序列 只有 两个 语言 结果

Go函数介绍与一等公民

Go函数介绍与一等公民 函数对应的英文单词是 Function,Function 这个单词原本是功能、职责的意思。编程语言使用 Function 这个单词,表示将一个大问题分解后而形成的、若干具有特定功能或职责的小任务,可以说十分贴切。函数代表的小任务可以在一个程序中被多次使用,甚至可以在不同程序中 ......
函数 公民

go 1

variable & const eclipse keymap alt + -> = step into alt + <- = step out ctrl + d = delete a := 1 cannot be used to declare global variable one packag ......
go

[转]go语言函数装饰器,接口类型变量反射赋值

转:原文:https://juejin.cn/post/7115343063119036453 函数装饰 做基础组件经常需要用到函数修饰,例如我需要对所有被装饰方法里打印start、end。 已知函数签名的装饰 我们经常用的函数装饰器一般都是知道被装饰的方法的签名,然后返回一个同签名的方法。最简单的 ......
变量 函数 接口 语言 类型

深入解析Go非类型安全指针:技术全解与最佳实践

本文全面深入地探讨了Go非类型安全指针,特别是在Go语言环境下的应用。从基本概念、使用场景,到潜在风险和挑战,文章提供了一系列具体的代码示例和最佳实践。目的是帮助读者在保证代码安全和效率的同时,更加精通非类型安全指针的使用。 关注【TechLeadCloud】,分享互联网架构、云服务技术的全维度知识 ......
指针 类型 技术

go mod tidy 使用私有仓库时候,提示输入用户名密码; 修改为使用ssh key 下载私有仓库的代码

步骤 1:GOPRIVATE环境变量来配置私有仓库。 $ go env -w GOPRIVATE=gitlab.com/xxx 2. 配置ssh 配置 # 分别生成ssh key ssh-keygen -t rsa -C "your_email@example.com" # vi ~/.ssh/co ......
仓库 用户名 密码 时候 代码

go defer简介

思考 开始之前,先考虑下下面的代码的执行结果: package main import "fmt" func test() int { i := 0 defer func() { fmt.Println("defer1") }() defer func() { i += 1 fmt.Println( ......
简介 defer go

掌握Go类型内嵌:设计模式与架构的新视角

本文深入探讨了Go语言中的类型内嵌特性,从基础概念到实际应用,以及相关的最佳实践。文章不仅讲解了如何在Go中实现和使用类型内嵌,还通过具体的代码示例展示了其应用场景和潜在陷阱。最后,文章总结了类型内嵌在代码设计中的价值,并提出了一些独特的洞见。 关注【TechLeadCloud】,分享互联网架构、云 ......
设计模式 视角 架构 类型 模式

Go语言中的面向对象

面向对象的概念 洗衣服过程剖析: 给洗衣机里加脏衣服和洗衣粉。 启动洗衣机。 洗衣机自动注水,然后滚动。 脏衣服从黑颜色变成白颜色。 洗衣机自动停止。 用面向过程的思想实现代码。 //准备洗衣服 //输入参数: //powder 洗衣机里放多少洗衣粉 //closes 洗衣机里放多少衣服 //cle ......
对象 语言

GO语言中的I/O操作

格式化输出 输出格式 输出内容 %t 单词 true 或 false %b 表示为二进制 %d 表示为十进制 %e (=%.6e)有 6 位小数部分的科学计数法,如 -1234.456e+78 %f (=%.6f)有 6 位小数部分,如 123.456123 %g 根据实际情况采用 %e 或 %f ......
语言

Go语言中的数学计算

数学常量 math.E //自然对数的底,2.718281828459045 math.Pi //圆周率,3.141592653589793 math.Phi //黄金分割,长/短,1.618033988749895 math.MaxInt //9223372036854775807 uint64( ......
语言 数学

Go语言中的性能测试

单元测试 测试单元的结果是否符合预期 //go_test.go import ( "fmt" "testing" ) func Add() int { fmt.Println("AAAAAAAAAAAAAA") return 5 } func Sub() int { fmt.Println("SSS ......
性能 语言

go语言对时间的操作

time包是go语言的内置库,提供了时间的显示和测量用的函数。日历的计算采用的是公历。 一、时间类型 time.Time类型表示时间。 我们可以通过time.Now()函数获取当前的时间对象,然后获取时间对象的年月日时分秒等信息。 示例代码如下: func timeDemo() { now := t ......
语言 时间

go 流程控制之switch 语句介绍

go 流程控制之switch 语句介绍 目录go 流程控制之switch 语句介绍一、switch语句介绍1.1 认识 switch 语句1.2 基本语法二、Go语言switch语句中case表达式求值顺序2.1 switch语句中case表达式求值次序介绍2.2 switch语句中case表达式的 ......
语句 流程 switch go

Go语言模块管理:GO111MODULE的含义

在cmd中使用 go env 命令可以查看到我们的GOPATH环境变量。 其目录结构为: bin:存放代码编译后的二进制文件 pkg:存放编译后的库文件 src:存放自己编写的Go语言代码文件 在Go1.11后新增了modules特性,模块是相关Go包的集合。如果在cmd中执行以下命令将GO111M ......
模块 含义 语言 MODULE 111

map 简单梳理【GO 基础】

map 是一种无序的基于 key-value 的数据结构,Go 语言中的 map 是引用类型,必须初始化才能使用。比较容易混淆,本文来梳理下。 ......
基础 map

struct 结构体【GO 基础】

虽然 Go 语言中没有“类”的概念,也不支持“类”的继承等面向对象的概念,但是可以通过结构体的内嵌,再配合接口,来实现面向对象,甚至具有更高的扩展性和灵活性。那么本文就将详细看下怎么使用结构体。 ......
结构 基础 struct

Go接口 - 构建可扩展Go应用

本文深入探讨了Go语言中接口的概念和实际应用场景。从基础知识如接口的定义和实现,到更复杂的实战应用如解耦与抽象、多态、错误处理、插件架构以及资源管理,文章通过丰富的代码示例和详细的解释,展示了Go接口在软件开发中的强大功能和灵活性。 关注【TechLeadCloud】,分享互联网架构、云服务技术的全 ......
接口

微服务框架之go-zero

官方文档: https://go-zero.dev/ [安装] 脚手架goctl: go install github.com/zeromicro/go-zero/tools/goctl@latest 依赖protoc,protoc-gen-go,protoc-grpc-go安装: protoc: ......
框架 go-zero zero go

Go流程控制与快乐路径原则

Go流程控制与快乐路径原则 目录Go流程控制与快乐路径原则一、流程控制基本介绍二、if 语句2.1 if 语句介绍2.2 单分支结构的 if 语句形式2.3 Go 的 if 语句的特点2.3.1 分支代码块左大括号与if同行2.3.2 条件表达式不需要括号三、操作符3.1 逻辑操作符3.2 操作符的 ......
路径 流程 原则

go: 在proto中使用oneof类型

在proto中,可以使用OneOf类型,使用一个字段存储不同类型的数据。类似go中的interface。 假设有proto如下,Val是一个OneOf数据类型,它可以为double/int/str...中的任意一种。 TestPB中引用了value,类型为Val。 syntax = "proto3" ......
类型 proto oneof go

interface 接口相关【GO 基础】

〇、接口简介 接口(interface)定义了一个对象的行为规范,只定义规范不实现,由具体的对象来实现规范的细节。也就是说,接口可以将一种或多种特征归纳到一起,其他不同的对象通过实现此接口,来表示可以具有此类特征,使得不同的类或模块之间进行通信和交互,而不需要了解彼此的具体实现细节,从而提高代码的可 ......
interface 接口 基础

2023-10-11:用go语言,一个数字n,一定要分成k份, 得到的乘积尽量大是多少? 数字n和k,可能非常大,到达10^12规模。 结果可能更大,所以返回结果对1000000007取模。 来自华为

2023-10-11:用go语言,一个数字n,一定要分成k份, 得到的乘积尽量大是多少? 数字n和k,可能非常大,到达10^12规模。 结果可能更大,所以返回结果对1000000007取模。 来自华为。 来自左程云。 答案2023-10-11: 大体过程如下: 算法1:暴力递归 1.首先判断k是否为 ......
数字 结果 乘积 1000000007 规模

Go方法特性详解:简单性和高效性的充分体现

本文深入探讨了Go语言中方法的各个方面,包括基础概念、定义与声明、特性、实战应用以及性能考量。文章充满技术深度,通过实例和代码演示,力图帮助读者全面理解Go方法的设计哲学和最佳实践。 关注【TechLeadCloud】,分享互联网架构、云服务技术的全维度知识。作者拥有10+年互联网服务架构、AI产品 ......
高效性 特性 方法

sublime配置运行go

在安装codeblocks-20.03mingw-setup, 添加系统环境变量path : C:\Program Files\CodeBlocks\MinGW\bin 之后,在sublime中, 打开 Preferences --> Browser packages 后,打开User目录,添加如下 ......
sublime

Go 复合类型之字典类型介绍

Go 复合类型之字典类型介绍 目录Go 复合类型之字典类型介绍一、map类型介绍1.1 什么是 map 类型?1.2 map 类型特性二.map 变量的声明和初始化2.1 方法一:使用 make 函数声明和初始化(推荐)2.2 方法二:使用复合字面值声明初始化 map 类型变量三.map 变量的传递 ......
类型 字典 Go