これから「Xen 4.0 blktap2」の話をしよう
ご無沙汰しています。Advent Calendarと呼ばれる1日1エントリずつブログ書くイベントに参加することになったので、急遽技術ネタを用意してみた次第です。
http://atnd.org/events/10701
それでは、Xen 4.0から搭載された「blktap2」について紹介してみましょう。
続きを読むバイナリエディタ進捗
- アドレスビューのカラム(上側)の実装完了
- カーソルの描画はレイヤー(childのWidget)で表示
Binary Indexed Tree
中間のノードが子ノード(の持つ値)の和を計算するツリー構造を、Binary Indexed Treeというと『プログラミングコンテストチャレンジブック』から知った。バイナリエディタでも同様の構造を使っているが、赤黒木を使って深さを平衡に保つことで*1、巨大なドキュメントに対する編集を高速に実行できるようPiece Tableを実装していたりする(つづ・・かない)。
*1:Qtのqfragmentmapという実装ですが
最近バイナリエディタの開発を再開したらしい
先月くらいから開発再開してコード書いています。最近の悩みは、複数のViewでのカーソル位置の同期、ドキュメント変更時のイベントの粒度(Model-Viewアーキテクチャなので)、画面再描画する時の再描画範囲の最適化などなど。キーボード入力が出来たら、最適化等は気にしないでアプリのUIの作成を優先しようかとも思っています。先日のAVTokyoという飲み会でも、ネタの補充をさせてもらいまして、正確なユーザの欲求というのを集められた気がします。ただまだまだインタビュー、考察が足りないですね。
卒業研究に集中する時期になってきているので、うまく切り替えつつ実装進めたいですね。