まとまりのないブログ

something which something is something

Tips vb.net

メモ

投稿日:

現在改良中の家計簿ソフトのデータモデルを変更するかどうかについてのメモ。今のところはmicrosoftのaccessのjetという名前のデータベースでデータを管理している。作る前まではデータを保存する方法といえばこれ一択だった。技術と知識があまりないためだけれども。で、多少慣れてきたのでxml形式でのデータ保存に変更しようかどうか考え中。

microsoft accessを使うことのメリット

  • windowsアプリケーションを作る上では親和性が高い
  • スタンドアロン形式のmdbファイルを使うことができるので外部サーバなどを用意しなくてもよい
  • テーブルやクエリなどの管理が開発者にとっては容易
  • データを一元的に管理できるため楽

microsoft accessを使うことのデメリット

  • ファイルが破損した場合全てのデータが失われる可能性がある
  • ファイルサイズが大きくなった場合に処理速度が低下する可能性
  • オフィスのバージョンアップ毎に機能の変更をチェックしなければならない(?)

今のところ、accessのデメリットというものはあまり感じてない。まあ、accessに限ったことではないし、そうそう壊れるものでもないだろう・・・という楽観的な考えで、バックアップ機能を実装することで最低限これで良しとかいいかげんに考えているからなわけで。それで、accessを使うことをやめてxml形式にした場合にどうなるか考えてみた。

xmlファイルをデータ保存に使うことのメリット

  • microsoft excel 2003以降で開くことができる
  • メモ帳でも開くことができる
  • 別のプログラムで加工して利用するというようなこともできる(かも)
  • mdbに比べてファイルサイズを小さくすることができる(かも)
  • windows以外のコンピュータでも開くことができる

xmlファイルをデータ保存に使うことのデメリット

  • sqlを発行するデータベースに比べてデータの検索や追加などの処理速度が遅くなる可能性がある
  • コード量が割り増ししそうで疲れそう(開発者にとって)
  • データの秘匿・機密性というものがない(私が知らないだけかも・・・)
  • パソコン初心者にはとっつきにくい。

結論

あまり、xmlを使うことのメリットらしいものは思いつかなかった。そもそも初心者向けの家計簿ソフトでxml形式のデータがどうしても欲しいなんていうことはないだろうしなぁ。処理速度が速くなってファイルサイズが小さくなるならxmlファイル形式にすぐにでも変更したいところだけど、そうとも言えないどころかパフォーマンスは悪化しそうだ。excelで開けるといっても年に1回するかどうかもわからない機能のためにこだわるわけにもいかんし。家計簿ソフトのxmlファイル形式への変更は、中止。やっぱり今のままaccessのmdbで運用して、xmlファイル形式に出力できる機能を追加するというのがベストの予感。

-Tips, vb.net

執筆者:


comment

メールアドレスが公開されることはありません。

日本語が含まれない投稿は無視されますのでご注意ください。(スパム対策)

関連記事

no image

mschartが表示されない

vb.netで作成したwindowsアプリケーションにグラフを表示させてみようと思って、mschartというグラフ描画コンポーネントを使うことにした。そして、実装が終わってリリースしたものを他のマシン …

no image

サーバにトラブルが発生してウェブサービスが提供できない場合の正しい対処法

ウェブサービスを提供しているサイトでサーバに障害が発生して,一時的にサービスを提供することができない場合の管理者としての正しいと思われる対処方法。

no image

Intel 82945G Express Chipset Family の解像度

現在私が使っているパソコンのマザーボードは,オンボードグラフィックのチップセットがIntel 82945G Express Chipset Familyというものを使っているらしい。このマザーボードは …

no image

System.ArgumentException: 入力文字列の形式が正しくありません。列 initial_money に を格納できませんでした。 必要な型は Double です。 —> System.FormatException: 入力文字列の形式が正しくありません。

datagridviewにデータをバインドした時のこと。データグリッドへバインドされたテーブルのセルの値を変更しようと思って文字列を挿入しようとしたら System.ArgumentException …

no image

firefly ROC-RK3566-PC のメモリがECC使ってる模様

ROC-RK3566-PC fireflyというメーカー(ブランド?)のSBCの新しい製品でROC-RK3566-PCという型番の製品が新しく発売された様子。CPUはRockChip RK3566 C …