DelFusa Blog 総本山

プログラミングの話題とかです。

NEW | PAGE-SELECT | NEXT

≫ EDIT

スポンサーサイト

上記の広告は1ヶ月以上更新のないブログに表示されています。
新しい記事を書く事で広告が消せます。

| スポンサー広告 | --:-- | comments(-) | trackbacks(-) | TOP↑

≫ EDIT

シンプルできれいなソースのちょっとの説明追加。


   ∧,,∧    ども。
  ミ,, ゚Д゚彡 
   〃つ旦O
 ~ミ,,[ ̄ ̄ ̄.]
      ̄ ̄ ̄

分かる人には分かるだろうかしら、
ヒントは出して、あとは自分で判断してね
という身勝手ブログ記事の続きです。。

盛り上がりそうなので、書いておきます。(w

追加説明しておきます。
こういう実装は辞めようよ、ということです。


※ソース内、適宜省略
-----
TDialogForm1
 FTitle: String;
 Property Title GetTitle / SetTitle

SetTitleでFTitleに代入
GetTitleでFTitleから取得
FormCreate時にSelf.Edit1.Text := FTitleを行う
-----
これをやるくらいなら、
こうしろということ。
-----
TDialogForm1
 Property Title GetTitle / SetTitle

SetTitleでSelf.Edit1.Textに代入
GetTitleでSelf.Edit1.Textから取得
-----

そうしないと、
ダメコードの場合、Dialog側でOKを押したときに
タイトル未入力チェック処理などをするときに
FTilteで調べるのか、Titleで調べるのか
Edit1.Textの値に対して調べるのか
わけがわからなくなるでしょう。

どっちかがどっちかに代入したりする煩雑さによって
暗黙ルールが作られてしまいます。

『OKを押したときにEdit1.TextをTitleに代入する』
というのが暗黙ルールになるわけですよ。

だけど、後者のヨイコードでは
Titleを取り出してチェックするときも
Edit1.Textを取り出してチェックするときも
見ているところは同一だから

誰が書いてもどちらで書いても
問題なく動作するコード、になるわけです。


TDialogForm1
 public
TitleEdit: TEdit;
こんなやり方もいいのかと思われるかもしれませんが

呼び出し側からの呼び出し方法を
変更しないといけなくなるから
きれいではなさそうですね。


ま、例外もあったりなかったりでその場その場で
しっかりと効率よいコードを考えていきたいものですね。

スポンサーサイト

| 未分類 | 01:52 | comments:0 | trackbacks(-) | TOP↑

COMMENT















非公開コメント

PREV | PAGE-SELECT | NEXT

上記広告は1ヶ月以上更新のないブログに表示されています。新しい記事を書くことで広告を消せます。