软件技术学习笔记

个人博客,记录软件技术与程序员的点点滴滴。

Golang WebAssembly起步

从GoLang 1.11开始,直接支持编译目标为WebAssembly,不需要安装额外的TidyGo。

本文演示GoLang WebAssembly Hello World程序。

1. 编写main.go

package main

import "fmt"

func main() {
    fmt.Println("Hello world!")
}

2. 设置GOARCHGOOS环境变量,编译目标为wasm文件

Linux:

$ GOARCH=wasm GOOS=js go build -o lib.wasm main.go
$ cp "$(go env GOROOT)/misc/wasm/wasm_exec.js" .

Windows Powershell:

$Env:GOOS='js'
$Env:GOARCH='wasm'
go build -o main.wasm
继续阅读→

GoLang程序员修炼之路

在高性能Web服务领域,GoLang使用广泛,不需要依赖第三方库就可以开发出一个Web服务,比C++方便许多。GoLang是一个拥有垃圾回收机制与闭包的静态Native语言。

GoLang拥有良好的软件生态,社区代码一般都共享到GitHub中,代码中可以直接导入Git仓库的第三方模块。从第三方模块管理、代码格式化、静态检查、构建、单元测试到性能测试等,都包含在GoLang官方工具包中,人们很容易编写出符合软件工程规范的代码。在云时代,GoLang拥有良好的前景。

GoLang书籍

继续阅读→