タグ

デザインパターンに関するsatoshi_hiraishiのブックマーク (5)

  • GoFのデザインパターンを勉強する - Qiita

    はじめに Java言語で学ぶデザインパターン入門を読んでみたのですが、そのまま読んだだけだと内容が頭に入ってこなかったので、学習のコツだったり、勉強してまとめた結果だったりを記事にしてみました。 学習のコツ GoFの23のデザインパターンを,Javaで活用するための一覧表 (パターンごとの要約コメント付き) ↑こちらのサイトをかなり参考にさせていただきました。 特に重宝したのがレベル別の4分類。 「どこから手をつけたら良いのか分からない。」「こんなパターン当に使うの?」と思っていた自分にとっては、学習の優先順位がついたおかげでかなり捗るようになりました。 学習の優先順位×パターンの目的を表にしたものがこちらです。 プログラミングのセンスがあれば,言われなくても自然に使うもの パターンの名前自体が有名で,あちこちで使われているもの 独力で思いつくのは困難だが,一度ちゃんと学べば,驚くほどプ

    GoFのデザインパターンを勉強する - Qiita
  • Java Persistenceを使ったアーキテクチュア:パターンと戦略

    図1:データベースとJavaプログラミング言語のミスマッチ このギャップを埋め、Javaアプリケーションとデータベースのシームレスな接続を実現するために、私たちはさまざまなデザインパターンとアーキテクチャアプローチに依存している。これらのパターンはトランスレータとして機能し、インピーダンスのミスマッチの影響を軽減し、2つの世界を調和して動作させるのに役立つ。 これらのデザインパターンは、車輪の再発明ではない。これらは、アプリケーションとデータベースのパラダイム間のインピーダンスのミスマッチを緩和するのに有効であることが証明されている、確立されたソリューションである。Driverパターン、Mapperパターン、Active Recordパターン、Repositoryパターンなどがある。 Java Persistenceにおけるデータパターンのナビゲート このセクションでは、アプリケーション開

    Java Persistenceを使ったアーキテクチュア:パターンと戦略
  • 作って理解するWebフレームワーク - きしだのHatena

    前回、簡単なDIコンテナを作ってみたので、次はこれを使ってWebフレームワークを作ってみたいと思います。 Webサーバーをつくる まず、WebフレームワークなのでHTTPサーバーが必要ですね。なので簡単なものを作ります。 とりあえずブラウザからリクエストを受け取ったら200 OKとHTMLを返すだけのサーバーです。 今回は、そこらのブラウザからアクセスできればいいや、ということで、RFCとかの仕様に準拠することは考えません。 public class Server { public static void main(String[] args) throws IOException { ServerSocket serverSoc = new ServerSocket(8989); for (;;) { Socket s = serverSoc.accept(); new Thread((

    作って理解するWebフレームワーク - きしだのHatena
  • 作って理解するDIコンテナ - きしだのHatena

    DIコンテナ使ってるけど、アノテーションってなんなの!って聞かれて、作ってみたらわかるよと答えてみたので、自分でも作ってみました。 よくわかった。 「DIコンテナ使うと何がいいの?」ということも、作ってみるとわかります。あと「DIって何がいいの?」に関しては、「DIはちょっとコードを書くのが楽になるだけで、それだけあっても仕方ない、大事なのはコンテナ」と答えるようにしてますが、コード比率からもそれがよくわかります。 続編としてWebフレームワークも作っているので参考まで。 作って理解するWebフレームワーク - きしだのHatena まずはコンテナを作る とりあえず1ソースの状態で。 こんな感じで、管理する型を登録できるようにします。 static Map<String, Class> types = new HashMap<>(); static void register(String

    作って理解するDIコンテナ - きしだのHatena
  • GitHub - DovAmir/awesome-design-patterns: A curated list of software and architecture related design patterns.

    You signed in with another tab or window. Reload to refresh your session. You signed out in another tab or window. Reload to refresh your session. You switched accounts on another tab or window. Reload to refresh your session. Dismiss alert

    GitHub - DovAmir/awesome-design-patterns: A curated list of software and architecture related design patterns.
  • 1