Visual Basic 2005 ここが便利!IDE編

第10回 日常的な使い勝手を向上させる3つの小さな改良

株式会社ピーデー 川俣 晶
2005/11/02
Page1 Page2

一時プロジェクト

 プログラムを開発中に「あの機能にあれを渡すと何が返ってくるんだっけ?」などと思うことはよくある。それを確認するのに最も手っ取り早い方法は、それを行う使い捨てのプログラムを手短に書いて実行してみることである。特にマニュアルの記述があいまいだったりすると、まさに試してみるしかないことになるので、これは必須のテクニックということができるだろう。

 さて、このテクニックをVS.NETで使うと、ちょっと困ったことが発生する。残しておく価値がない使い捨てプログラムが、すべてハードディスクに残ってしまうのである。Visual Basic 6.0まで、そのようなことはなかったのに、である。

 Visual Basic 6.0で作成したプログラムは、保存を実行しない限りメモリ上の一時的なもので、IDEを閉じると同時に消滅していた。しかし、VS.NETでは作成したすべてのプロジェクトは取りあえずファイルとして作成され、保存を意識的に実行しなくてもそれらはディスク上に存在しているのである。不要なプロジェクトをいちいち消すのは面倒なので、ついつい放置して、無数の使い捨てプロジェクト(WindowsApplication1、WindowsApplication2……など)の残がいが残ることになってしまう。

 しかし、この問題はVisual Basic 2005によって解決された。Visual Basic 2005の一時プロジェクト機能は、意識的に保存しない限りファイルに保存されないプロジェクトの作成を可能とする(この機能は[ツール]メニューの[オプション]から[プロジェクトおよびソリューション]の下の[全般]に含まれる「作成時に新しいプロジェクトを保存」の指定をオフに変更すると利用できる。Express Editionでは、デフォルトでオフとなっているようである)。

 この機能が使い勝手にどのような変化をもたらすかは、保存すべきディレクトリの指定がいつ要求されるかを見るとよく分かる。まず、プロジェクト作成時には、以下のような情報が求められるが、ここには保存ディレクトリの指定は含まれない。

プロジェクトの新規作成時に開くダイアログ・ボックス(Visual Basic 2005)
ここには保存ディレクトリを指定するテキストボックスは含まれていない。

 そして、特に保存していなければ、プロジェクトを閉じるときに保存するか否かを質問してくる。

プロジェクトを閉じるときに表示されるダイアログ・ボックス
プロジェクトを閉じるタイミングでプロジェクトをファイルに保存するか、保存せずにそのまま終了するかを選択できる。

 ここで(上書きではないが)「上書き保存」を選択したときに、初めてディレクトリの指定を要求するダイアログ・ボックスが表示される。これに答えるまでは、プロジェクトがファイルに書き込まれることはない、ということである。

プロジェクト保存のためのダイアログ・ボックス
プロジェクトを上書き保存する場合には、保存場所やソリューション名を入力するためのダイアログ・ボックスが開く。

 好奇心旺盛な読者のために、念のために補足しておく。実は、上記の説明は厳密にいえば正しくない。実際には、プロジェクトはすべてファイル上に作成されるのである。具体的な保存場所を調べたところ、以下のディレクトリに保存されていた。

\Documents and Settings\ユーザー名\Local Settings\Application Data\Temporary Projects

 ディレクトリを指定して保存を行った時点で、ここに書き込まれていたプロジェクトはその場所に移動する。もし、保存しないでプロジェクトを閉じた場合、このディレクトリ内のファイルは削除されるようになっている。つまり、プロジェクトをいくつ作成しようと、それを保存しない限り、ハードディスク上にそれらが残ることはない。実用上、Visual Basic 6.0時代の気軽な使い勝手が戻ってきたと思ってよいだろう。

Line Revisionマーク

 ソース・コードを編集中に、書き換えた場所と書き換えていない場所が区別できればよいのにと思ったことはないだろうか。ソース・コードの修正と実行を繰り返しているとき、急にプログラムが動かなくなったりすると、自分がどこを修正したのかを確認したくなる。

 単に修正個所を示すだけなら、そのような機能を持つアプリケーションは珍しくない。例えば秀丸エディタは、修正された行の行番号をボールド表示し、ファイルを保存した時点でそれを通常表示に置き換える機能を持つ。しかし、このようなアプリケーションは、保存した瞬間に修正個所が分からなくなるという問題がある。もちろん、修正個所を明らかにするために保存しない、などという選択は取ることができない。アクシデントに備えて小まめに保存するのは常識的な操作である。このような問題に対して、Visual Basic 2005はもっと高度な機能を提供することで対処している。

 なお残念ながら、この機能はVisual Basic 2005 Express Beta 2日本語版では動作せず、ここではVisual Studio 2005 Team Suite Beta 2日本語版で試してみた。

 具体的な内容は、説明するよりも画面を見ていただく方が早いだろう。

Line Revisionマークの付いたVisual Studio 2005 Team Suiteのエディタ画面
黄色は修正されたが未保存の行、緑色は修正を受けたうえでファイルに保存済みであることを示している。

 ここで、ソース・コード左側の緑色と黄色のマークに注目していただきたい。

 黄色は、修正されたが未保存の行を示している。ここまでは、よくある話だろう。ここで注目に値するのは、緑色のマークが付いた行である。これらの行は、修正を加えたうえでファイルに保存済みであることを示している。つまり、プロジェクトを開いてから自分で修正を加えた行は、この2色のマークを見ることですぐに区別できるわけである。

 これで、修正個所を意識しながらソース・コードを扱う手間も大きく軽減されることは間違いない。

 今回解説した例外アシスタント、一時プロジェクト、Line Revisionマークのいずれも、目玉となるような大きな機能追加とはいいにくいものである。しかし、日常的にVisual Basicを扱う現場プログラマの立場からすれば、あれば助かる機能ばかりである。こういった細かい無数の改良が加えられているところも、Visual Basic 2005の価値として見落とさずに評価してみようではないか!End of Article


 INDEX
  Visual Basic 2005 ここが便利!
  第10回 日常的な使い勝手を向上させる3つの小さな改良
    1.Visual Basic 2005の例外アシスタント
  2.一時プロジェクト/Line Revisionマーク
 
インデックス・ページヘ  「Visual Basic 2005 ここが便利!」


Insider.NET フォーラム 新着記事
  • 第2回 簡潔なコーディングのために (2017/7/26)
     ラムダ式で記述できるメンバの増加、throw式、out変数、タプルなど、C# 7には以前よりもコードを簡潔に記述できるような機能が導入されている
  • 第1回 Visual Studio Codeデバッグの基礎知識 (2017/7/21)
     Node.jsプログラムをデバッグしながら、Visual Studio Codeに統合されているデバッグ機能の基本の「キ」をマスターしよう
  • 第1回 明瞭なコーディングのために (2017/7/19)
     C# 7で追加された新機能の中から、「数値リテラル構文の改善」と「ローカル関数」を紹介する。これらは分かりやすいコードを記述するのに使える
  • Presentation Translator (2017/7/18)
     Presentation TranslatorはPowerPoint用のアドイン。プレゼンテーション時の字幕の付加や、多言語での質疑応答、スライドの翻訳を行える
@ITメールマガジン 新着情報やスタッフのコラムがメールで届きます(無料)
- PR -

注目のテーマ

業務アプリInsider 記事ランキング

本日 月間
ソリューションFLASH