跳至内容

博客

Go 泛型浅析

泛型程序设计(generic programming)是程序设计语言的一种风格或范式。泛型允许程序员在强类型程序设计语言中编写代码时使用一些以后才指定的类型,在实例化时作为参数指明这些类型。 各种程序设计语言和其编译器、运行环境对泛型的支持均不一样。Ada、Delphi、Eiffel、Java、C#、F#、Swift和Visual Basic .NET称之为泛型(generics);ML、Scala和Haskell称之为参数多态(parametric polymorphism);C++和D称之为模板。具有广泛影响的1994年版的《Design Patterns》一书称之为参数化类型(parameterized type)。

更多 →

2022-09-22

前端单文件入口发布新版本 缓存问题

在现代 javascript框架项目开发中,一直有一个令人都疼的问题,就是缓存问题;每次发版完之后由于浏览器缓存机制,用户端不会实时获取新的项目页面,甚至有可能出现静态文件获取报404。

更多 →

2022-04-18

Homebrew

Homebrew 由开发者 Max Howell 开发,并基于 BSD 开源,是一个非常方便的包管理器工具。在早期, Homebrew 仅有 macOS 的版本,后续随着用户的增多,Homebrew 还提供了 Linux 的版本,帮助开发者在 Linux 同样使用 Homebrew 来配置环境。

更多 →

2022-04-17

Go 语言笔试面试题

日常收集的题 一. 基础语法 1 = 和 := 的区别? 答案 := 声明+赋值 = 仅赋值 var a int a = 10 // 等价于 a := 10

更多 →

2021-12-15

Go内嵌静态资源

把静态资源嵌入在程序里,原因无外乎以下几点: 布署程序更简单。传统部署要么需要把静态资源和编译好的程序一起打包上传,要么使用docker和dockerfile自动化. 保证程序完整性。运行中发生静态资源损坏或丢失往往会影响程序的正常运行. 可以自主控制程序需要的静态资源. 最常见的,比如一个混编网址的后端程序,本来需要把程序与它所需要的静态资源(html模版、css、js、图片)一起上传至生产服务器,同时还需要正确配置静态资源在服务器中的路径让程序能正常访问.现在我们将这些资源全部嵌入到程序中,部署的时候只需要部署一个二进制文件,配置也只针对这个程序本身,部署的流程大大简化.

更多 →

2021-10-11

prometheus配置nginx监控

由于没有能力自己写,去github 找到两个方案 nginx-module-vts nginx-lua-prometheus

更多 →

2021-09-29

Lazygit 一个用于 Git 命令行的简单终端 UI

Git的强大是所有开发者都心知肚明的事情,但是其多样的命令令人很是难受。 不过在Github上有着这么一个开源项目lazygit 简化git命令操作。

更多 →

2021-07-22

Go拉取私有仓库的问题

现在项目开发有很多私有仓库,直接git clone的方式使用,不是怎么方便。 查询go源码发现go get支持的协议除了https还支持git+ssh, bzr+ssh, svn+ssh, ssh $GOSRC/cmd/go/internal/get/vsc.go var defaultSecureScheme = map[string]bool{ "https": true, "git+ssh": true, "bzr+ssh": true, "svn+ssh": true, "ssh": true, }

更多 →

2021-06-28

Air实现Go程序实时热重载

Air能够实时监听项目的代码文件,在代码发生变更之后自动重新编译并执行 为什么需要实时加载? 在使用Go语言在本地做web开发调试的时候,经常需要在修改代码之后频繁的按下Crtl+C停止程序并重新编译执行,这样就比较麻烦

更多 →

2021-06-27

openssh Win10

在 Windows Server 2019 和 Windows 10 1809 中,OpenSSH 客户端和 OpenSSH 服务器是可单独安装的组件。 具有这些 Windows 版本的用户应使用以下说明来安装和配置 OpenSSH。 从 PowerShell GitHub 存储库 https://github.com/PowerShell/OpenSSH-Portable 获取了 OpenSSH 的用户应当使用那里的说明,不应当使用这些说明 。

更多 →

2021-06-26