萌えハッカーニュースリーダー

2025/07/26 00:27 50x rendering speed improvements in Hologram (Elixir web framework)

出典: https://hologram.page/blog/hologram-v0-5-0-released
hakase
博士

ロボ子、Hologram 0.5.0がリリースされたのじゃ!

roboko
ロボ子

博士、それはすごいですね!どんなアップデートがあったんですか?

hakase
博士

パフォーマンスが大幅に向上したらしいぞ。クライアント側の操作がミリ秒からマイクロ秒に改善されたみたいじゃ。

roboko
ロボ子

マイクロ秒ですか!それは驚異的なスピードアップですね。

hakase
博士

それだけじゃないぞ。サーバーサイドセッションのサポートが完全になったらしい。`put_session/3`とか`get_session/2`とか使えるみたいじゃな。

roboko
ロボ子

セッション管理が楽になりますね。Phoenixセッションとの統合もサポートされているんですか?

hakase
博士

その通り!Phoenixセッションとも統合できるらしいぞ。Cookieのフルサポートも追加されたみたいじゃ。`put_cookie/3`とか`get_cookie/2`とかで操作できるみたいじゃな。

roboko
ロボ子

CookieもElixirのデータ型で扱えるのは便利ですね。自動でシリアライズ・デシリアライズされるんですか。

hakase
博士

そうみたいじゃな。それと、`pointer_move`とか`pointer_cancel`みたいなイベントもサポートされたみたいじゃ。マウス操作がより細かく扱えるようになるぞ。

roboko
ロボ子

マウスイベントのプロパティも強化されたんですね。`client_x`とか`movement_y`とか、いろいろ増えてますね。

hakase
博士

`select`イベントも実装されたみたいじゃな。テキスト選択が簡単に扱えるようになるぞ。

roboko
ロボ子

`.ex`ファイルや`.holo`ファイルの変更を自動で検出してリロードしてくれる機能も便利ですね。コンパイルエラーのオーバーレイ表示も助かります。

hakase
博士

じゃろ?Phoenixのコードリロードシステムともシームレスに統合されているらしいぞ。それと、分散状態管理のためのCRDTも実装されたみたいじゃ。

roboko
ロボ子

CRDTですか!LWW CRDT Mapをサポートしているんですね。競合解決も自動でやってくれるんですか?

hakase
博士

そうみたいじゃ。マイクロ秒精度のタイムスタンプを使って自動で解決してくれるらしいぞ。JavaScript bitstringクラスの導入でレンダリング速度も5倍向上したみたいじゃな。

roboko
ロボ子

それはすごい!モジュールダイジェストPLTでインクリメンタルコンパイルも高速化されたんですね。2倍から10倍ですか。

hakase
博士

じゃろ?WebSocketからHTTPへの移行も行われたみたいじゃな。新しいシリアライゼーションプロトコル(v2)も導入されて、通信が効率化されたみたいじゃ。

roboko
ロボ子

v1とv2の両方の形式をデシリアライズできるのは親切ですね。`:erlang.iolist_to_binary/1`などのJavaScript実装も追加されたんですね。

hakase
博士

16ビット浮動小数点数もサポートされたみたいじゃ。SVGタグの解析も修正されたみたいじゃな。

roboko
ロボ子

細かい修正もいろいろ入っているんですね。後方互換性のない変更もあるみたいですが、移行は大変ですか?

hakase
博士

`pointerdown`イベントを`$pointer_down`みたいに書く必要があるくらいみたいじゃな。GitHubスポンサーへの感謝も忘れずに、と。

roboko
ロボ子

なるほど、少し修正が必要ですね。しかし、今回のアップデートは本当に盛りだくさんですね!

hakase
博士

そうじゃな!まるで、ロボ子のために作られたようなアップデートじゃ!

roboko
ロボ子

えへへ、ありがとうございます、博士!でも、博士こそHologramの申し子みたいですよ!

hakase
博士

ふむ、それなら私はホログラム…じゃなくて、ホロ博士と呼ぶのじゃ!

⚠️この記事は生成AIによるコンテンツを含み、ハルシネーションの可能性があります。

Search