bobbyz3g
  • 首页
  • 归档
  • 标签
  • 关于

何时在 Go 中使用泛型

前言本文是 Go 官方博客的翻译,原文地址:when generics Go 1.18 增加了一个重要的语言特性:对泛型编程的支持。本文不会介绍什么是泛型,如何去使用泛型。而是聚焦于何时在Go代码中使用泛型,又该在何时不使用泛型。 先说明,本文只是提供一个通用的指引,而非硬性的规定。具体使用的时机取决于你的判断。但是如果你不确定是否该使用,那么你就可以遵循本文的说明。 编写代码首先是从 Go 编程
2022-04-25
#Go #泛型

搭建一个 mongo replica set

本文主要介绍如何在本地搭建一个 3 节点的mongo replica set。 准备工作 在官方的 下载中心 选择对应平台的安装包,解压并安装完成 将 mongod 以及配套的工具路径加入 $PATH 命令行终端 打开命令行,输入如下的代码: 1mongod --dbpath <data_dir> --port 27017 上面的代码将会启动一个 mongod 的实例,监听 270
2022-03-07
#mongo

二分查找

二分查找(又成折半查找),是一种在有序数组中查找特定元素的算法。 算法的时间复杂度是:O(logn)。 注意:该算法的前提是输入的数组必须是有序的,并且数组中的元素是可以比较的。 实现这里以 Go 标准库的实现来演示,位置为 sort 包 1234567891011121314151617181920212223// func GuessingGame() {// var s stri
2022-02-21
#数据结构与算法

Go 泛型预览

即将发布的 Go 1.18 将会带来一个巨大的更新:泛型。 官方教程:https://go.dev/doc/tutorial/generics 这篇文章是对官方指引的翻译。 准备在正式尝试泛型之前,需要做如下的工作 安装 go1.18beta1 或更新的版本。安装方式请看 beta版本的安装与使用 一个可以编辑代码的编辑器,任何你喜欢的编辑器都可以 命令行终端,在 Linux 和 mac 上
2022-02-17
#Go #泛型

使用Cloudflare worker搭建壁纸服务

写这篇文章的原因是记录一下自己为博客首页设置主题图的过程。 当前博客的主题使用的是 Fluid, 可以在主页设置主题图。一开始使用的是默认的图片,但是觉得不够个性化,于是就想设置一个专属的图片。 在思考选用何种图片的过程中,萌发了一个新的想法💡,就是让自己的主题图片定期去变化。但是并不想每次去手动修改图片的链接。于是便想搭建一个图片的服务,可以定期更新图片。 在思考如何搭建服务时,突然想到 bi
2022-02-17
#serverless

在 Go 没有引用值

在别的一些语言中,调用函数时,有传值以及传引用的区别,但是在 Go 中,没有传引用这样的说法。 Go 只有传值,Go 只有传值,Go 只有传值!!! 重要的事情说三遍。因此对于函数传参来说传入的值会被复制 对于基本类型来说,会直接复制相应的值传入其中 对于自自定义的结构体,也会复制然后传入其中 对于指针,会复制一个新的指针,指向原指针的值,因此传入指针可以修改原有的值 对于 map/slice/
2022-01-19
#Go

Golang 单例模式

单例模式是一种最基本的设计模式,属于创造模式的一种。在应用了单例模式的时候,类的实例在全局中只会存在一个。实例也只会被创建一次。通常用于系统只需要拥有一个全局对象的时候。例如数据库连接对象。 单例模式分为懒汉和饿汉模式两种。 首先是饿汉模式: 1234567type object struct{}var instance *object = &object{&
2021-12-26
#Go

在云主机上安装 k3s

K3s 是一个轻量化的 Kubernetes 集群软件,专门针对 IoT 和边缘计算(Edge computing)设备开发的,适合低配置硬件的设备上使用。 可以用于在低配置的云主机上进行部署。 安装安装 k3s 只需要一条命令即可 1$ curl -sfL https://get.k3s.io | K3S_KUBECONFIG_MODE="644" sh -s - K3S_
2021-12-21
#k8s

Go 的时间格式

在 Go 中如果你需要解析一个自定义的时间字符串,将其转化为 Go 的 time.Time 类型,或者格式化的输出时间,那么你需要定义一个 layout。 在这一步就会容易出现错误,不同于其他语言以形如 yyyy-MM-dd HH:mm:ss 的格式解析,Go 是以一个特定的时间来确定格式, 即 **2006-01-02T15:04:05Z07:00**。 因此,如果你需要使用 Go 来解析一个时
2021-12-14
#Go

Nginx 配置 HTTP Basic Auth

Nginx 是一个被广泛使用的 Web 服务器,代理服务器。本文主要介绍如何为 Nginx 配置 HTTP Basic Auth。(演示环境为 macOS) Basic Auth 是一个非常简单的认证方式,在请求的 Header 中会包含Authorization字段,形式如下: Authorization: Basic <凭证>,该凭证是用户和密码的组和的 base64 编码。 准备
2021-12-13
#nginx
123456…8

搜索

Hexo Fluid