thumbnail
使用Air 热重载及平滑重启实践分享
☁️ 热重载 Go 应用的工具,官方介绍 | 项目地址 1. 前言 由于golang属于静态型语言,它编写的业务代码或者文件发生更改就需要重新编译运行项目,而在其它动态编译语言里这算是一大痛点。如果项目比较大,编译阶段很耗时间,比较影响开发跟测试效率。 所以今天笔者来介绍三个小妙招(热重载、平滑重启),这些技术通常一起使用,以确保开发、部署和关闭应…
thumbnail
【Golang】使用 CDT拓展库轻松方便地在不同数据类型之间进行转换
CDT(通用数据类型)库 CDT(Common Data Types)是一个Go语言库,旨在提供简单而灵活的数据类型处理工具。它提供了一组函数和结构体,用于处理不同类型的数据,并提供了方便的方法进行数据类型转换和操作。支持sql、json序列化,以及validator数据验证。 特点 通用数据类型:CDT库支持处理多种常见的数据类型,包括字符串、整…
thumbnail
【Stable Diffusion】Prompt 篇
Stable Diffusion 是一种强大的画像生成AI,它可以根据输入的文字描述词(prompt)来绘制出想象中的画面。但是写出一个好的 prompt 并不容易,我们通常可以从提出一系列问题作为开始去整理需要的 prompt,当然这也不是一个固定的模式,你也可以在C站多参考学习各位大神使用的 prompt,尝试使用不同的 prompt 来实现自…
thumbnail
【实战】在Golang项目中,使用REPL技术理念,实现动态执行代码
前言 在日常开发工作业务场景中,你可能会遇到重复性的业务工作脚本功能维护。笔者分析了下,其在修改业务代码后,大致都会遇到如下问题: 部署较繁琐;用户使用不便捷; 笔者推荐遇到类似这种业务场景,可以将 应用程序脚本代码 直接嵌入在云端,用户实际需要使用的时候进行加载到应用程序主体中,这样主体应用在得到应用程序脚本代码之后,就可以获得到最新的输入、输出…
thumbnail
git commit之后,想撤销commit
问题复现 写完代码后,我们一般这样 git add . //添加所有文件 git commit -m "本功能全部完成" 执行完commit后,想撤回commit,怎么办? 很简单,就这样: git reset --soft HEAD^ 这样就成功的撤销了你的commit 注意,仅仅是撤回commit操作,您写的代码仍然保留。 说一下个人理解: H…
thumbnail
Vue2与Vue3的区别(建议收藏)
一、vue2和vue3双向数据绑定原理发生了改变 vue2 的双向数据绑定是利用ES5 的一个 API Object.defineProperty()对数据进行劫持 结合 发布订阅模式的方式来实现的。 vue3 中使用了 es6 的 ProxyAPI 对数据代理。 相比于vue2.x,使用proxy的优势如下 defineProperty只能监听某…
thumbnail
Authorization in Golang ProjectUseing Casbin
一、Casbin介绍 权限管理在几乎每个系统中都是必备的模块。如果项目开发每次都要实现一次权限管理,无疑会浪费开发时间,增加开发成本。 因此,casbin库出现了。casbin是一个强大、高效的访问控制库。支持常用的多种访问控制模型,如ACL/RBAC/ABAC等。可以实现灵活的访问权限控制。同时,casbin支持多种编程语言,Go/Java/No…
使用 UPX 压缩可执行文件
UPX 可以有效地对可执行文件进行压缩,并且压缩后的文件可以直接由系统执行,支持多系统和平台。使用 UPX 来压缩可执行文件是一种减少发布包大小的有效方式。 安装 从 github release page 下载预编译的二进制文件 使用 压缩 upx [options] yourfile upx 对文件的默认操…
thumbnail
Linux zip 压缩 解压
Linux zip 命令用于压缩文件。 zip 是个使用广泛的压缩程序,压缩后的文件后缀名为 .zip。 一、linux 压缩 zip 语法 zip [-AcdDfFghjJKlLmoqrSTuvVwXyz$][-b <工作目录>][-ll][-n <字尾字符串>][-t &…