.NET frameworkにおける「設定ファイル」とは?

.NET frameworkにおける「設定ファイル」とは?

どうも、.NET framework大好き人間です。
今回は、普段VB.netやC#ばかり仕事で扱っている私が
「設定ファイル」なるものに出会い苦戦したため、
備忘録として書き残しておきます。

設定ファイルとは?

文字通り、設定内容を記載したファイルです。
主にアプリケーションの動作や機能を調整する目的で使用されるもので、
拡張子が「ini」や「conf」の設定ファイルをよく見かけます。

.NET frameworkの設定ファイル

.NET frameworkにおける、ということで特筆したいのは、
Microsoftがデフォルトで用意してくれている設定ファイルです。
拡張子が「config」で、XML形式で書かれています。
(最新バージョンではJSON形式のjsonファイルが推奨されているらしいです。
役割は同じなんだなと覚えておきましょう。)

XML形式、と言った通り、
中身は <name>ベストマージ</name> のようにタグで囲んで記述します。
記述した値を「name」をキーとして値を取得して、
アプリケーションの動作の中で使用されるイメージです。

設定ファイルは3つ用意されていて、
それぞれ設定が生きる範囲が違います。

・アプリケーション構成ファイル
アプリケーション固有の設定を記述します。
ファイル名は、「<アプリケーション名>.exe.config」です。

・マシン構成ファイル
システム全体の設定を記述します。
ファイル名は、「machine.config」です。

・ユーザー構成ファイル
ユーザー毎の設定を記述します。
ファイル名は、「user.config」です。

何が良いのか?

そもそも設定ファイルが何故使用されるのかというと、
設定が1か所にまとまっている方が管理しやすいからですね。
設定だけ抜き出してその他の重要なファイルに触らせないことで
リスクを減らすという意味合いもあります。

加えて、今回紹介した「config」ファイルは、
デフォルトで用意されているのが強みです。
これにより誰が作成しても同じような書き方でコーディングされます。
大きく息の長いシステムであるほどありがたみが増しますね。

まとめ

VB.netやC#といったプログラミング言語の知識が枝葉だとすると、
.NET framework自体の勉強は太い幹に育てるイメージでしょうか。
バランス良く学び、より高い木にしていきたいですね。