[Mobo-dev] 月単位での保存

Back to archive index

Kazuhiko kazuh****@fdiar*****
2003年 6月 2日 (月) 23:38:12 JST


かずひこです。

At Fri, 30 May 2003 01:19:35 +0900,
Kazuhiko wrote:

> > > > もしよろしければ、PStore の保存単位を月単位にするあたりをやってくださる
> > > > ととても助かります。
> > > わかりました。ちょっとチャレンジしてみます。
> > 
> > やってみました。
> > まだあまりテストしてないのですが、とりあえずパッチを添付します。

コミットしました。

> データ移行スクリプトがないと、すでにつけはじめているユーザというか開発者
> に試してもらえなさそうですね。というわけで作りました。このメールの末尾に
> つけておきます。

misc/conv2.rb として cvs add しました。

あと、MoBo::Item::<=> を

                def <=>( other )
                        t =****@date*****_i <=> other.date.to_i
                        return t if t != 0
                        return @genre <=> other.genre
                end

のように定義して、sort を日付順→ジャンル順で行うようにしましたが、いま
のところジャンル順がジャンルの文字コード順であって、設定画面でのジャンル
のリスト順でないのがちょっとダサいのは ToDo ということにさせてください。

> では、いよいよ日付単位クラスの導入ですが、どうせ大掛かりなリファクタリン
> グですので、仕様などで気になることはどんどん言ってください。Monthly じゃ
> なくて Month だろ? とか。:p

Daily クラスを導入しても、Monthly クラスの各メソッドはそのままの書式で使
えるようにはできると思います。まだまったく手を動かしていませんが。

それはそれとして、「日」ごとの編集にしたいのですが、どういうインタフェイ
スにしたらいいのか悩んでいます。今だと、表示が月単位なので、上のメニュー
から編集を押せばその月の編集に行くという挙動で分かりやすいのですが、さて
どうしようかな。

あと、 http://wiki.fdiary.net/MoBo/?ToDo に書きましたが、Monthly クラス
に、各ジャンルトータルの値 (通常および全て) をキャッシュとして持たせるよ
うにしたら、

・入力のあるときは計算しなおしてキャッシュを書き出す。
・入力のないときはキャッシュを読み出して現在残高や集計を計算する

という風にして高速化を図れるような気がします。

実際、みなさんの環境ではパフォーマンスはどうですか?
PStore の記録ファイルを YYYY.db -> YYYYMM.db にしたら、体感的に遅くなっ
たような気がしますし、このペースでつけていって年末を向かえたらもっと遅く
なるように思います。
-- 
かずひこ <http://wiki.fdiary.net/kazuhiko/>
  ★シャア「名字が付いてない」
  ☆一兵卒「あんなの飾りです。偉い人にはそれが分からんのです」



Mobo-dev メーリングリストの案内
Back to archive index