1. 学習パターンを実践する オブジェクト指向の設計と実装の 学び方のコツ 2012年9月12日 有限会社 システム設計 増田 masuda@system-sekkei.com Twitter : @masuda220
http://www.laputan.org/drc/drc.html 新年早々風邪をひいてしまったのでずっと家で読み物をしていた。ちょっと古いが 1998 年に書かれた Ralph E. Johnson と Brian Foote の Designing Reusable Classes のメモ。内容はフレームワーク(ライブラリ集)の設計の仕方。 ホワイトボックス対ブラックボックス 昔風のライブラリでは、具体的な機能を実装するためにサブクラスで特定のメソッドを実装させるという事が良くある。これがホワイトボックス。例えば onmouseup でマウスアップ時の動作を記述する等。この欠点は、継承機構を利用するため、フレームワークとユーザコードのカプセル化が保証出来ない事。例えばうっかり知らずにメソッドをオーバーライドしたり、触ってはいけない内部状態を変更出来てしまう。 これに対してブラックボ
ふつうのオブジェクトは、どこで生成して、どこで保持して、…ということを、きちんと考えないといけない。いろいろな箇所で使う場合は、関数やクラスの間で、オブジェクトを受け渡してあげないといけない。 ところが、Singletonは、そのようなことをまったく考えずに、アプリケーションのどこでも自由に使える。 これは、よく考えてみると、次のようなコードと同じである。 つまり、グローバル変数の代用として、Singletonパターンを使ってしまっているケースがある。 変数をグローバルに宣言してしまえば、どこからでも参照できるので、手軽である。そのため、プログラミングの初心者には、グローバル変数を多用したがる人もいる。 グローバル変数を多用するのが誤った考えであることは、大抵の人は理解している。にも関わらず、グローバル変数の代用として、Singletonパターンを使っているケースが、少なくない。 この背景
このドメインは お名前.com から取得されました。 お名前.com は GMOインターネットグループ(株) が運営する国内シェアNo.1のドメイン登録サービスです。 ※表示価格は、全て税込です。 ※サービス品質維持のため、一時的に対象となる料金へ一定割合の「サービス維持調整費」を加算させていただきます。 ※1 「国内シェア」は、ICANN(インターネットのドメイン名などの資源を管理する非営利団体)の公表数値をもとに集計。gTLDが集計の対象。 日本のドメイン登録業者(レジストラ)(「ICANNがレジストラとして認定した企業」一覧(InterNIC提供)内に「Japan」の記載があるもの)を対象。 レジストラ「GMO Internet Group, Inc. d/b/a Onamae.com」のシェア値を集計。 2023年10月時点の調査。
リリース、障害情報などのサービスのお知らせ
最新の人気エントリーの配信
処理を実行中です
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く