Quantcast
Channel: hifive開発者ブログ
Browsing latest articles
Browse All 274 View Live

Workboxのプラグインについて

PWAにおいて肝となるのがキャッシュです。あるURLにアクセスした時にコンテンツを返却するのがキャッシュですが、HTML5におけるCACHE APIはすべてプログラムから操作しなければならず、実装が大変です。...

View Article


Image may be NSFW.
Clik here to view.

PWAハンズオンを開催しました

PWA(Progressive Web Apps)というキーワードに注目が集まっていますが、実際に取り組む機会がないという方は多いようです。そこでhifiveのTodoアプリをベースに、PWAを体験してもらうハンズオンを開催しました。 コンテンツはGitHubにあります...

View Article


WebAssemblyはどれくらい速いのか

WebAssembly(WASM)はWebブラウザ上で動くプログラムです。JavaScriptとの違いはコンパイルされた実行ファイルであることで、JavaScriptのようにパースする必要がないので高速に処理されます。 高速とは言っても、どれくらい速いのか実行してみないと分からないでしょう。そこで試した結果を紹介します。 フィボナッチ関数を実行する...

View Article

WebAssemblyがDOM、APIに対応します!

WebAssemblyはWebアプリケーションを高速に処理できる技術ですが、幾つかの欠点もありました。その一つがDOMを処理できないこと、さらにFetch APIやWebAudioなどのAPIが使えない点です。 しかし先日Announcing the web-sys crate! | Rust and...

View Article

GoでWebAssemblyを使ってみよう

Go1.11からWebAssemblyが公式サポートされました。これまでWebAssemblyの開発はRustがメインに使われてきましたが、Goは構文も分かりやすく、非常に良い選択肢になると思われます。 特に面白いのはDOM連携がとても容易な点ではないかと思います。今回はその使い方を紹介します。 まず基本から...

View Article


GoのWebAssemblyでネットワークを利用する

Go1.11からサポートされたWebAssemblyにおいて、ネットワークを利用する方法を紹介します。今回はJSONファイルの取得方法です。 注意点 実際のネットワークアクセスはWebブラウザの開発者ツール、ネットワークタブ内で確認できます。ネットワークアクセスを匿名化したり、CORS制限も適用されますので注意してください。 利用法...

View Article

WebAssemblyファイルをデコンパイルする

WebAssemblyはあらかじめコンパイルされているのでJavaScriptのように実行時にコードをパースする必要がなく、高速に動作します。WebAssemblyのコードはバイナリデータになっているので処理を隠蔽できているように見えますが、デコンパイルを行うことで人間が読める形に変換できます。 今回はwabtを使ってWebAssemblyのデコンパイルを行ってみます。 元になるコード...

View Article

Image may be NSFW.
Clik here to view.

TypeScriptからWebAssemblyを生成するAssemblyScriptを試す

WebAssemblyはプログラミング言語ではなく、様々なプログラミング言語から生成されるWebブラウザ上で実行できるバイナリフォーマットになります。基本はRustやC、C++であり、他にもGo、Java、Kotlin、Swiftなど様々なプログラミング言語が対応しています。...

View Article


インラインでWebAssemblyが使えるinline-wastを試す

WebAssemblyを使う場合、wasmという拡張子のファイルをサーバ上に配置して、それを読み込むのが一般的です。しかし何もファイルが必ず必要な訳ではありません。 そんな試みで作られているのがinline-wastです。WebAssemblyのテキスト版であるWASTを使ってインラインでWebAssemblyを使えるようにするソフトウェアです。 inline-wastの使い方...

View Article


言語によるWebAssemblyファイルサイズの違い

WebAssembly自体はプログラミング言語ではありません。対応した各種言語から変換します。そのため、採用する言語によって利用できる機能や開発効率が異なるでしょう。 今回は生成されるバイナリをプログラミング言語ごとに見てみます。 GoとRust...

View Article
Browsing latest articles
Browse All 274 View Live