摘要:
Go官方提供的文件操作标准库分散在os、ioutil等多个包中,里面有非常多的方法涵盖了文件操作的所有场景,不过因为我平时开发过程中需要直接操作文件的场景其实并不多,在加上 Go 标准库的文档太难搜索,每次遇到要使用文件函数时都是去 Google 查该怎么用。 最近偶然在查到国外一个人在2015年写 阅读全文
摘要:
系列文章 Go WebAssembly 入门(一) Getting Started 编写main.go package main import ( "strconv" "syscall/js" ) // 传入value1, value2, result三个元素的id,将value1+value2结果 阅读全文
摘要:
有关WebAssembly的介绍可以参考 几张图让你看懂WebAssembly简单来说WebAssembly就是将其他语言C/Go/Rust等语言编译成wasm可执行二进制文件,浏览器来执行wasm。wasm相比JS,拥有体积更小,执行更快,因为最终编译成二进制文件,所以一些安全策略代码也更适合wa 阅读全文
摘要:
命令行是程序员的最爱,默认的 bash shell 虽然功能已经很强大,但显得太朴素了,也不够智能,远远谈不上酷炫,虽然已经远远将 windows 的 cmd 甩开几百条街。但对于极客来说,bash 还是太弱了,长得也难看。 zsh 的功能比bash强大很多,但配置过于复杂,起初只有极客才在用。后来 阅读全文
摘要:
前言 越来越多的Web应用程序使用JSON作为API的一种数据交换格式进行交互。本文档的目标是使HTTP JSON API的设计风格保持一致,容易被理解和维护。一个优秀的API,应该是在其生命周期内能够持续提供稳定、易用、受信任的服务,并且在API的生命周期结束时能让其平滑的消亡。 注:RESTfu 阅读全文
摘要:
定义一个消息类型 先来看一个非常简单的例子。假设你想定义一个“搜索请求”的消息格式,每一个请求含有一个查询字符串、你感兴趣的查询结果所在的页数,以及每一页多少条查询结果。可以采用如下的方式来定义消息类型的.proto文件了: 1 2 3 4 5 6 7 syntax = "proto3"; mess 阅读全文
摘要:
这是Go语言单元测试从零到溜系列教程的第5篇,介绍了如何使用goconvey更好地编写单元测试,让单元测试结果更直观、形象。 在上一篇《Go单测系列5—monkey打桩测试》中,我们介绍了如何在单元测试中使用monkey对函数和方法进行打桩。 在这一篇中我们将介绍一个人性化的单元测试利器——goco 阅读全文
摘要:
这是Go语言单元测试从零到溜系列教程的第4篇,介绍了如何在单元测试中使用monkey进行打桩。 在上一篇《Go单测系列5—mock接口测试》中,我们介绍了如何在单元测试中使用gomock和gostub工具mock接口及打桩。 在这一篇中我们将介绍一个更强大的打桩工具——monkey,它支持为任意函数 阅读全文
摘要:
这是Go语言单元测试从零到溜系列教程的第2篇,介绍了如何使用go-sqlmock和miniredis工具进行MySQL和Redis的mock测试。 在上一篇《Go单测系列2—网络测试》中,我们介绍了如何使用httptest和gock工具进行网络测试。 除了网络依赖之外,我们在开发中也会经常用到各种数 阅读全文
摘要:
这是Go语言单元测试从零到溜系列教程的第3篇,介绍了如何在单元测试中使用gomock和gostub工具mock接口和打桩。 在上一篇《Go单测系列3—数据库测试》中,我们介绍了如何使用go-sqlmock和miniredis工具进行数据库测试。 除了网络和数据库等外部依赖之外,我们在开发中也会经常用 阅读全文