【GO】ver1.12でのWebAssembly

2019/02/25にGo1.12がリリースされてました。

https://golang.org/dl/

 

前回WebAssemblyビルドでメモリエラーになって困っていたので一応アップデートしてみました。

WebAssemblyはまだ実験的機能らしく関数や機能も変わっていたので試しつつメモ。

あと解決しなかったOOMエラーの考察。

続きを読む 【GO】ver1.12でのWebAssembly

GO→WebAssembly→React→Cordova

前回やった内容で「golang webassembly」と検索してもあまり情報がなかったけど、ReactやCordovaとWebAssemblyの組み合わせは全く出てこなかった。

React+Cordovaでアプリを作るテストもしていたので、せっかくだから手探りでアプリ化までしました。

今回はその備忘録です。

続きを読む GO→WebAssembly→React→Cordova

【GO】WebAssemblyをビルドしてブラウザで動作させる

Gopherjsを使ってJavascript化して色々してきましたが、ブラウザでバイナリを動かす手段としてWebAssemblyがあります。

GO1.11から追加された機能で情報も多くないですが、無理にJSにして使うよりも軽く速くなるかもしれないので使ってみたいと思います。

windows10でやっていくので他環境だと環境変数などは適宜変える必要があります。

続きを読む 【GO】WebAssemblyをビルドしてブラウザで動作させる

【GO】AWS LambdaでGoで作ったバイナリを実行する

AWS LambdaでGOできないかなと思ったらあったので使ってみます。

実施環境はWindows10です。

続きを読む 【GO】AWS LambdaでGoで作ったバイナリを実行する

【GO】静的ファイルを含めた実行ファイル作成

GOでos.Open()などを使って静的なファイルをロードすることは多い。

この場合、ビルドした実行ファイルと一緒に静的コンテンツを配る必要がある。

またgopherjsでjavascript化すると開くことができない。

 

バイナリ化してしてコードに含めると実行ファイルに含められるが、面倒なうえにサイズが非常に大きくなってしまう。

go-assets-builderを使うとどちらも解決したので、使用方法などメモ。

続きを読む 【GO】静的ファイルを含めた実行ファイル作成

【GO】GopherJSを利用する際の開発メモ

gopherjsを使う時にファイル入出力があると変換処理が必要になる。

そしてosパッケージが使えないため機能のテストをしにくい。

jsを使ったテストコードをgo上で書くのは結構面倒くさいので切り分けて書くと楽でした。

続きを読む 【GO】GopherJSを利用する際の開発メモ

【GO x CORDOVA】gopherjsでのファイル入出力

GOをgopherjsでjavascriptに変換してからCordovaで利用することを考えます。

 

os.Open()などでファイルを開く処理はnode.js以外で使えない。

Cordovaで操作可能な場所のファイルを使う場合でもPermission deniedになる。

 

そこで基本的にCordova側で入出力してGO側で実処理と変換を行うようにします。

続きを読む 【GO x CORDOVA】gopherjsでのファイル入出力

【GO】gopherjsでjavascript化する

Androidアプリを作るのは難しそうだったのでjavascript化して何かに使えないか模索してみます。バイナリ化してexecするより汎用性は上がるはず。

Windowsだけでやりたかったけど、無理だったのでUbuntuで実行します。

続きを読む 【GO】gopherjsでjavascript化する

【GO】Androidアプリ開発

Golangに慣れてきたので何かしら作ってみたい。

最近Androidアプリを作れていないのでGOで書けないかなと試してみました。

テスト環境はWindows10です。

続きを読む 【GO】Androidアプリ開発