源代码地址: https://github.com/sndnvaps/pack-unpack-intel…
如何加速golang写业务的开发速度 不要忌讳panic golang写业务代码经常会被吐槽,写业务太慢了,其中最大的吐槽点就是,处理各种error太麻烦了.一个项目中,会有30%或者更多的是在处理error. 对于golang的error这个事情,golang的官方也说的很详细,建议函数返回error,并且让上层调用处理. error和panic实际上就是以前写PHP业务的时候争论的使用errno还是exception的争论.实际上,后续在PHP世界里面,大家都倾向于会使用exception来…
使用golang写一个redis-cli 0. redis通信协议 redis的客户端(redis-cli)和服务端(redis-server)的通信是建立在tcp连接之上, 两者之间数据传输的编码解码方式就是所谓的redis通信协议.所以,只要我们的redis-cli实现了这个协议的解析和编码,那么我们就可以完成所有的redis操作. redis 协议设计的非常易读,也易于实现,关于具体的redis通信协议请参考:通信协议(protocol).后面我们在实现这个协议的过程中也会简单重复介绍一下…
Golang写文件一般使用os.OpenFile返回文件指针的Write方法或者WriteString或者WriteAt方法,但是在使用这三个方法时候经常会遇到写入的内容和实际内容有出入,因为这几个函数采用的不是清空覆盖的方式,有时字符串或数组长度和文件内容不一致的时候只覆盖了一部分,这就需要在调用os.OpenFile的时候加上os.O_TRUNC如下: f, err := os.OpenFile(dst, os.O_WRONLY|os.O_TRUNC|os.O_CREATE, os.Mode…
One can’t stress enough on the importance of backups and when it comes to tinkering with your Android phone, a backup of your system, recovery and boot partitions can save you a lot of hassle that you might otherwise have to go through if you mess th…
gin 工具是golang开发中非常有用且有效的工具,有效的提高了开发调试go程序的效率. 为什么要使用gin 我们知道golang是编译型语言,这就表示go程序的每次改动,如果需要查看改动结果都必须重新编译一次,即go build .像我们从事go web的开发,可能是从其他解释型语言跨过来的,就特别的不适应这种调试开发,改完代码需要编译go build.然后,gin的出现就为了解决这种需求. 看下gin 的官方解释 gin是一个简单的命令行实用程序,用于实时重新加载Go Web应用程序. 只…
Github地址 前面一个部分讲解了如何使用Spring Testing工具来测试Spring项目,现在我们讲解如何使用Spring Boot Testing工具来测试Spring Boot项目. 在Spring Boot项目里既可以使用Spring Boot Testing工具,也可以使用Spring Testing工具.在Spring项目里,一般使用Spring Testing工具,虽然理论上也可以使用Spring Boot Testing,不过因为Spring Boot Testing工具…
简介 大家可能都听说过开发Node.js应用时可以使用多种工具对开发者提供便利,如WebPack提供了开发者服务器来支持js应用动态更替,并在保存文件时自动刷新浏览器.Spring Boot也提供了相似的开发者工具,让我们更快速.更舒心的开发Spring Boot应用.大家看完本教程就可以学会如何如用Spring Boot开发者工具进行自动重启和自动刷新页面. 自动重启原理 Spring Boot的开发者工具会为应用创建两个classloader.一个是用来加载不会变动的类,称为base cla…
写了个 Markdown 命令行小工具,希望能提高园友们发文的效率! 前言 笔者使用 Typora 来编写 Markdown 格式的博文,图片采用的是本地相对路径存储(太懒了不想折腾图床). 时间久了发现有两个明显的痛点: 删除图片时可能实际存储的图片未删除 上传博客园时需要一张一张手动上传图片 虽然社区中有类似的工具,但是多少感觉用着不顺手,索性自己造了个小工具. 删除本地未使用的图片 支持多 Markdown 文件,多层次文件嵌套! 批量上传图片到博客园 不会覆盖原始 Markdown 文件…
系列目录 基于WPF重复造轮子,写一款数据库文档管理工具(一) 本篇重点 上次发表了基于WPF重复造轮子,写一款数据库文档管理工具(一) 得到不少人支持,文章一度上到了博客园推荐表首页,看来大家对这个工具还是很喜欢.今天就继续来分享一下我在开发这款工具的过程中积累的一些技术点. 本篇主要讲的是基于HandyControl控件的DataGrid进行数据绑定以及如何实现自定义一个自定义控件.在写这些之前我们先来看下我们工具的整个界面: 今天我们要实现的就是右边主界面展示的列表区域,其实这个区域是由多…