16番会議室「玉石混淆みんなで作るSample蔵」に寄せられたサンプル
"RE^2:文字列<->ファイル:ファイルを文字列にロード"
この発言は #01171 本田勝彦 さんのRE:文字列<->ファイル:ファイルを文字列にロード に対するコメントです
この発言に対し以下のコメントが寄せられています
#01176 本田勝彦 さん RE^3:文字列<->ファイル:ファイルを文字列にロード
本田勝彦 さん、こんにちは。
> 非常にベタですが、FileToStr, StrToFile どんでしょ(^^;
やはり、それが関数の内容を適切に表現してますね。実は最初に選んだのはそ
れでした。
しかし、悩んだのが引数の順番です。
1) function FileToStr(const FileName: string): string;
2) procedure FileToStr(const FileName: string; var S: string);
3) procedure FileToStr(var S: string; const FileName: string);
4) procedure StrToFile(const FileName, S: string);
5) procedure StrToFile(const S, FileName: string);
2(3)は4または5と対応するので、きれいです。しかし、FileToStrは利
便性から、対応するものがないけど、1を選びたい。1を選んだとしたら、4
と5、どっちにするか? StrToFileだから、引数の並びも、文字列・ファイル
名の順がいいかな?ということで5。
実際1と5を選んでいたこともあったのですが、文字列->ファイルのとき、ど
うもファイルを主オブジェクトとみなして、それに文字列を書き込むという意
識が強いらしく、また主オブジェクトを最初の引数にするという習慣から、結
果として4で呼び出してしまい、エラーが出て悩んだことがあったんです。
ですから、引数の並びが1と4になるような関数名を探していたのですが…。
で、頭の中、ぐるぐる(^^;
案1)関数名の重視と美的観点
2) procedure FileToStr(const FileName: string; var S: string);
5) procedure StrToFile(const S, FileName: string);
案2)関数名の重視と実用的観点
1) function FileToStr(const FileName: string): string;
5) procedure StrToFile(const S, FileName: string);
案3)個人的オブジェクト観の重視と実用的観点
1) function FileToStr(const FileName: string): string;
4) procedure StrToFile(const FileName, S: string);
案4)案3+新たな関数名を探す(^^;
元発言は案4を採用し失敗した例です(^^;;;
本田さんはどれがよいと思いますか?
みなさんのご意見も待ってます。
#どうしてこんなことで悩んでるんだろう(笑)
ぜえた (QZC05100)
- FDELPHI MES(16):玉石混淆みんなで作るSample蔵【見本蓄積】 00/10/05 -
Original document by ぜえた 氏 ID:(QZC05100)
ここにあるドキュメントは NIFTY SERVEの Delphi Users' Forum の16番会議室「玉石混淆みんなで作るSample蔵」に投稿されたサンプルです。これらのサンプルはボーランド株式会社がサポートする公式のものではありません。また、必ずしも動作が検証されているものではありません。これらのサンプルを使用したことに起因するいかなる損害も投稿者、およびフォーラムスタッフはその責めを負いません。使用者のリスクの範疇でご使用下さい。
Copyright 1996-2002 Delphi Users' Forum
|