SHOEISHA iD

※旧SEメンバーシップ会員の方は、同じ登録情報(メールアドレス&パスワード)でログインいただけます

CodeZine編集部では、現場で活躍するデベロッパーをスターにするためのカンファレンス「Developers Summit」や、エンジニアの生きざまをブーストするためのイベント「Developers Boost」など、さまざまなカンファレンスを企画・運営しています。

Curlで構築する長崎電子県庁システム(DBメンテナンスツール編)(AD)

Curlで構築する長崎電子県庁システム(DBメンテナンスツール)
データ表示パフォーマンスの向上

第2回

  • このエントリーをはてなブックマークに追加

解決方法

 実際に試したのは、「TabContainer」を使った分割表示と「RecordGrid」を使用した表示です。

1.TabContainerを使用して表示

 Curlにはタブレイアウトができる「TabContainer」があります。これを使って入力項目を分けて表示すれば、一度に表示する項目が減るので少し速くなるはずです。

TabContainerを使用した画面
TabContainerを使用した画面
TabContainerのロジック
{TabContainer
    {TabPane height=200pt,width=200pt,
        {text font-size = 28pt, 1}
    },
    {TabPane
        {text font-size = 28pt, 2}
    },
    {TabPane
        {text font-size = 28pt, 3}
    }
}

 TabContainerを使い、入力画面を次のように項目ごとにタブ表示しました。

DBメンテナンスツールでTabContainerを使用した画面
DBメンテナンスツールでTabContainerを使用した画面

 100あるカラムを20くらいずつに分けて表示したところ、確かにレスポンスは良くなりました。しかし、テーブルカラムの分類が必ず20カラム以下になるとは限りません。そこで、次に「RecordGrid」を試すことにしました。

2.RecordGridを使用して表示

 RecordGridは、テキストだけでなくチェックボックスやテキストボックスなどのコントロールを表示できます。

 RecordGridは、画面に表示されているものだけが描画されます。例えば1000件をグリッドにセットしても、実際に描画されるのは数十件程度のデータである場合が多いです。RecordGridを使って表示するデータ量を減らすことで、結果的に表示速度を速めることができるというわけです。

 ちなみに、スクロールするたびに再描画が必要となるという面もありますが、それで極端にレスポンスが落ちることもありません。

RecordGridを使用した画面
RecordGridを使用した画面

 RecordGridとTabContainerを併用して表示したところ、1秒以下で入力画面が表示されるようになりました(※Tableの時と外見は変わっていませんが、RecordGridを使用しています)。

次のページ
TableとRecordGridの速度比較

この記事は参考になりましたか?

  • このエントリーをはてなブックマークに追加
Curlで構築する長崎電子県庁システム(DBメンテナンスツール編)連載記事一覧

もっと読む

この記事の著者

株式会社ドゥアイネット 湯川栄太(ドゥアイネット ユカワエイタ)

【湯川栄太】株式会社ドゥアイネットに勤務するプログラマーです。CurlやFlexを使ってRIAの開発を担当しています。最近はマッシュアップに興味があります。開発日記http://blog.doinet.co.jp/CurlApplication Award2006http://www.curlap.com/award2006/index.htmlMashupAward4http://mashupaward.jp/entry_list/?posted=316

※プロフィールは、執筆時点、または直近の記事の寄稿時点での内容です

【AD】本記事の内容は記事掲載開始時点のものです 企画・制作 株式会社翔泳社

この記事は参考になりましたか?

この記事をシェア

  • このエントリーをはてなブックマークに追加
CodeZine(コードジン)
https://codezine.jp/article/detail/3406 2009/01/06 14:00

おすすめ

アクセスランキング

アクセスランキング

イベント

CodeZine編集部では、現場で活躍するデベロッパーをスターにするためのカンファレンス「Developers Summit」や、エンジニアの生きざまをブーストするためのイベント「Developers Boost」など、さまざまなカンファレンスを企画・運営しています。

新規会員登録無料のご案内

  • ・全ての過去記事が閲覧できます
  • ・会員限定メルマガを受信できます

メールバックナンバー

アクセスランキング

アクセスランキング