掲示板システム
ホーム
アクセス解析
カテゴリ
ログアウト
動的フレームの再作成でエラー (ID:22623)
名前
ホームページ(ブログ、Twitterなど)のURL (省略可)
本文
私は、まささんの意見に賛成ですね Frameさんの考えは技術的に出来ると言うだけで、それが正しいとは限りません。 オブジェクト指向ではクラス間の依存関係を、なるべく弱くしないといけません。 依存関係が強いとメンテや拡張が大変になります。 例えば、今Freeを使っても大丈夫だとしても プログラムを拡張(継承)してFreeが使えなくなった場合 二つのクラスを修正しないといけなくなりますね。 この辺り、まささんの方がしっかり考えていると思います インスタンス作成時にも 他の人たちがハードコーディングで作成しているのに対して >a:=tframe2.Create(self); まささんはデザインパターンでインスタンス作成を抽象化して 依存関係を少なくしていますね。 >class function TFrame2.GetInstance(AOwner: TComponent;ATop,ALeft: Integer): TFrame2; >begin > if not Assigned(Singleton) then > begin > Singleton := TFrame2.Create(AOwner); > end; > Singleton.Top := ATop; > Singleton.Left := ALeft; > Singleton.parent := TForm(AOwner); > Singleton.Show; > Singleton.BringToFront; > Result := Singleton; >end; まささんの方が正しいオブジェクト指向だと思いますよ。
←解決時は質問者本人がここをチェックしてください。
更新する
戻る
掲示板システム
Copyright 2021 Takeshi Okamoto All Rights Reserved.