オブジェクト指向プログラミングにおいてデザインパターンを利用することは、開発者に様々なメリットを与えてくれます。 ここでは、「デザインパターンとは何か」というようなデザインパターンの基本事項と、GoFの23個のデザインパターンをJavaを利用してわかりやすく解説します。 デザインパターン INDEX
デザインパターンってなんだかたいそうなものに考えられがちだけど、実は、そこかしこのライブラリや仕様に取り込まれていることが多い。 「デザインパターン分からん」とか「で、どうやって使うのよ」と悶々としている人には、「どういうところで使わているのか」を知っておけばイメージも沸きやすいし、意外にたいしたことないんだな、ということが分かるんじゃないだろうか。 そこで、JavaScript やその周辺の技術で、デザインパターンがどのように使われているかを紹介してみることにする。 ここでは、GoF本の順番に沿って、以下の11個のパターンを取り上げる。 生成に関するパターンFactory MethodAbstract FactoryBuilderPrototypeSingleton構造に関するパターンAdapterComposite振る舞いに関するパターンChain Of ResponsibilityI
JavaScript でプログラミングをするときに、オブジェクト指向の手法を使うのであれば、折角なのでデザインパターンを利用したいと思います。しかし、デザインパターンの本は、Java を対象に書かれているものが多く、単純には JavaScript へ応用できません。 僕はデザインパターンを覚えたてですし、JavaScript も修行中の身なので、分らないことだらけです。そこで、このブログを使って、みなさんと議論したいと思います。気軽にコメントを書いて下さい。 Java と JavaScript デザインパターンを考える上で障壁となる Java と JavaScript の違いをまとめてみましょう。 機能 Java JavaScript 変数の型 ある ない オブジェクトの型決め 宣言的 ダック・タイピング オブジェクトの性質 静的 動的 抽象クラス ある ない 関数を引数として渡せるか 渡
クラスを作る Javascriptに直接クラスを生成する仕組みははない。宣言があるのは変数だけで、あとは全部オブジェクト生成だから。 でも似たようなことを関数オブジェクトを使ってすることができる function Hoge(piyo){ var a = piyo; this.getA = function(){ return a; } } こんな感じ。これでフィールドaを持ち、それに対するアクセサを持つクラスが完成する。さらにaを引数で初期化するコンストラクタまで備えている。 ▲ ▼ プライベートフィールド JavascriptのスコープはJavaのようにブロックスコープではなく関数スコープになっている。これを利用すると普通privateと呼ばれる外部から隠蔽された変数を作ることができる。 例の変数「a」はプライベートなので外部のオブジェクトは直接アクセスできない。 さらにJavascri
JavaScript でアニメーションを作る アニメーションとは何? ビューを少しずつ回転、拡大縮小、移動、変色などを行い、連続的な動きを作る こんな感じ <div id="view">hoge</div> <script> var el = document.getElementById('view'); el.style.opacity = 1; setInterval(function() { el.style.opacity -= 0.01; }, 10); </script> なんで、あんな感じの書き方になるの? setInterval の意味が分からない こんな感じで書けないの? <div id="view">hoge</div> <script> var el = document.getElementById('view'); el.style.opacity = 1; w
リリース、障害情報などのサービスのお知らせ
最新の人気エントリーの配信
処理を実行中です
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く