探索 WebAssembly - Go
雖然專注在後端技術上,對前端只有初學者左右的程度,但還是多少對前端的技術很感興趣 而且這個技術對後端相對方便的,如果可以在前端技術上有更多精進的能力,多少可以解決更多問題 WebAssembly 簡介 WebAssembly 是一個以二進制表示的低階語言,可以在瀏覽器上運行,由於是二進制所以運行速度肯定會快點 特點則是說可以接近原生的效能,我個人觀點則是可以突破某些狀況下的限制和效能的提升,所以也有可能變慢囉!要謹慎使用 並且 2019 年時 WebAssembly正式成為W3C推薦的網頁應用標準 WebAssembly 與 JS 共存,輔助加強 JS 產生更多的應用並提升性能 目前可以使用 C/C++、Go、Rust 透過 Emscripten 編譯成 WebAssembly WebAssembly - Go Go 1.11 開始支援 WebAssembly 可以透過 Go 來進行開發 首先需要將 wasm_exec.js 複製到需專案目錄中,稍候需要 js 調用 wasm 檔案 1 cp "$(go env GOROOT)/misc/wasm/wasm_exec.js" . Sample 寫個簡單的程式,先練練手培養的感覺 1 2 3 4 5 6 7 package main import "fmt" func main(){ fmt.Println("Hello, WebAssembly!") } 然後對此進行編譯,參數則是 GOOS=js 的 GOARCH=wasm,稍候就可以透過 js 來呼叫 wasm