ギコ猫とデザインパターン

A GIKO CATalog of Design Patterns

結城浩

/ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄
  ワーイ スレッドヘン 1ゲト ズザー!

   ̄ ̄ ̄ ̄ ̄ ̄|/ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄
   (   Λ_Λ 
  ⊂ ´⌒つ゚ー゚)つ
 ̄ ̄ ̄ ̄ ̄ ̄ ̄

.___________
|               ..|
| ギコ猫暗号入門はこちら .|
|___________|
   ∧,,∧ ||
⊂ミ.,,゚Д゚彡つ
http://www.hyuki.com/cr/cat_index.html

目次

はじめに

このページでは2ch.netのキャラクタ「ギコ猫」にナビゲートしてもらい、 デザインパターンをいくつか紹介(?)します。

といっても、単なるギャグではつまらないので、 技術的に意味のある内容に――そのパターンを理解していないと会話の意味がわからないように――しているつもりです(できるだけ、ということですが)。 ご笑覧ください。

毒を持ちつつも愛らしいキャラクタを、多数生み出している2ch.netの方々に感謝します。

登場する猫たち


  ∧ ∧
  (,,゚Д゚)
   |つ つ
 〜  |
  ∪ ∪

 【ギコ猫】


  ∧_∧
 ( ・∀・)
 (    )
 | | |
 (__)_)

 【モララー】



  ∧ ∧
 (,,・д・)
 @_)

 【ちびギコ】

  ∧ ∧___
 /(*゚ー゚) /\
/| ̄∪∪ ̄|\/
 |        |/
   ̄ ̄ ̄ ̄
 【しぃ】

ギコ猫とGoFのパターンたち

ギコ猫とマルチスレッドのパターンたち

以下はオマケ。

アニメGIF

以下のアニメGIFは結城が作ったものです。

以下のアニメGIFは、 読者の山下さんが作って、結城に送ってくださったものです。 感謝します。 山下さんは、部署内でデザパタ勉強会をなさっているとのこと。 ギコ猫も参加?

[ AbstractFactory | Adapter | Bridge | Builder | ChainOfResponsibility | Command | Composite | Decorator | Facade | FactoryMethod | Flyweight | Interpreter | Iterator | Mediator | Memento | Observer | Prototype | Proxy | Singleton | State | Strategy | TemplateMethod | Visitor ]

みなさんからのフィードバック

しばらく見てなかったらいろいろ増えてるヽ(´ー`)ノ 今後も期待してますです。 ところで全然デザインパターンと関係無いですが。 パールちゃんがかわ(・∀・)イイ!でつ。 (25歳)

よーしパパ、デザインパターン勉強しちゃうぞー。 (25歳 会社員)

デザパタ勉強後にみるとニヤリとさせられますね。 マルチスレッド編も勉強しなきゃ。 (25歳 携帯サイト開発)

こりはイイ! 知り合いのウゥプ求道者全員に紹介しますた。 今度はゼシ、アソチパターソ編をおながいします。 (ソフトウエア職人, 年齢:0x20台とだけ逝っておきま(以下略)

『Java言語で学ぶデザインパターン入門』持てます。 デザイソパターソを扱った本の中で一番分かり易いかと。 小一時間賞賛したい。

ギコ猫のAA探していて偶然見付けました。 漏れ(w)も2chねらー&プログラマ志望なので楽しく読ませてもらいました。 個人的にはデザパタに限らず、Java入門編なんかがあったらイイなーと思いました。 暇があったらうpしてください:-) (18歳 大学生)

先生と呼ばせてください>ギコ (26歳 プログラマ)

( ´∀`)アヒャ

このサイト内の キリスト教関係のページの直後にこのページを見たので衝撃が走りますた(藁

な、なんか スレッド編が追加されてるぞΣ(゚Д゚≡;゚Д゚)ゴルァ (23歳 見習いPG)

面白かったです。 できればリファクタリング編を作ってほしいです。 (23歳 社会人1年生)

いやー結城先生の 『Java言語で学ぶデザインパターン入門』本のお陰で C++ Windowsプログラミングが身に付きました。 Linuxに移行しても先生のことは決して忘れません。 愛していますあいらびゅー♪ (17歳 いつぞやのPerlプログラマ)

他のAAパターンでも見てみたい。 シラネーヨとかツージとか。というわけでage。 (水商売)

結城: んー、とりあえず、 しぃちゃんとか、 おにぎりとかも作ってみました。 ギコ猫としぃは、ちょっと気にいってます。

会社で職場の仲間と思い切り笑わせてもらいました。今度部内のデザインパターン教育資料として使わせていただきたいです。 (24歳 なんちゃってSE)

月並みですがイイ(・∀・)! 元ネタは「ギコタクのだから逝ってないでショ!」ですよね。 次に刊行される書籍の付録に是非つけて頂きたいと思います。 (26歳 会社員)

C++は知ってますが(2.1)、Javaは知りません。 でも、なんとなく書いてあることがわかりました。 おもしろいですね〜 (27歳 会社員)

ギコ猫面白かったです。 WINDOWSプログラムを習得中なのですが、タメになる息抜きに なりました。C++とJAVAは本当に似ているものなのですね。 Singletonパターンは、本当そのとおりの仕様だと思いました。 (25歳プログラマ)

Googleで「ギコ猫」を検索するとトップなのですが。。。 おめでとうございます(?)

AAを使ってデザインパターンを解説してくださる神がいるのはこのページですか? (25歳 似非プログラマ)

結城:わたしは神ではありません。などとマジレススマソ。 神さまのお話は こっち。

Template Method。。。( ̄▽ ̄;)y-~苦笑 いや、、、ソウダッタラ良いのになんて。。。 (0x0019歳、ぷろぐらま)

結城さん私の言語でパターンランゲージの本を出版していただいてありがとうです。 特に「ギコ猫とデザインパターン」はヨカタ。 私もUnicodeで日本のギコ猫見ました。 反対を押し切って自己満足でUnicodeを採用してヨカタ。 ギコ猫のJavaAPI日本語訳もキボーン。サンにうぷしてください。 でも激しくバグへのツッコミはマズーなので、そのときは激しくあぼーんすると思われ。激しくマンセーをキボンヌ。 (傍流言語設計屋、年齢:実行時に確定)

結城:上を書いた人の名前は、James Goslingとなっていました。 …ええと…たぶんJavaの設計者と同姓同名なのでしょう :-P

ギコ猫とCommandパターンを読んで思わず一緒に涙してしまいました. (23歳 プログラマ)

会社によく来る保険屋のおばちゃんが「この猫かわいい」を連発してました。 僕は真面目に勉強しているだけなのに・・・(苦笑)。 (29歳 初級SE)

ポテト食えよモナーを作れヴォ下 (14歳 会長)

age

何度読んでも笑ってしまいまいました。今度部署のDP教育にこの資料を使ってみようかと思います。 (24歳 システムエンジニア)

いいよみんなかわいい (12歳)

Javaの結城先生シリーズを全部買いました! ( プログラミングレッスン上下デザインパターン)めっちゃわかりやすいっす。 アプレット・イベント処理・グラフィックス・ネットワーク等についても書いて欲しいなぁ。もし出したら、絶対買います。 (21歳 大学生@システムマネジメント工学科)

ギコ猫かわいいです。 今行き詰まっていてJAVAが嫌いになりかけていたのだけれど、 もうちょっと頑張ってみようかなーという気になりました。 (20歳 大学生)

どうも。勉強させていただきました。ありがとうございます。 プログラミングってただ言語の仕様を理解していればよいもの(果たして今でも正確な知識があるのか?)っと思い込んでいましたが、 テンプレートを学んでおけば、 より有効で作成者以外にもわかりやすいプログラミングが できそうですね。また、他の人が作ったソースの理解も 早まりそうです。 勉強することがまた増えてしまいました... なかなか現象の再現しない再現試験より、 勉強する時間が欲しい。はははっ。 (24歳 ソフトウェアエンジニアもどき)

(・∀・)イイ!

ギコ猫とデザインパターン。すばらしい企画だと思います。 デザインパターンに関して、また違った観点から見ることができるし、 毒のあるジョークに思わずニヤッとしてしまいます。 Commandパターンが秀逸だと思いました。 (26歳 システムコンサルタント)

結城先生も2ちゃんねらだっとは知りませんでした。 漏れは先生の本が入門には最適だと思います。 (C言語の本はもっと奥まで進んで欲しかった) これからも頑張って執筆ください。

おもわずage。( ゜∀゜)

趣味でC++プログラミングをしています。 「デザインパターン」の言葉だけ聞いたことがありましたが、 このページを見て俄然興味が湧きました。 Erich Gamma氏著の本を明日書店に注文しようと思っています。 読んだ後にここに再び訪れようと思っています。そのときが楽しみ! (28歳 大学院生)

ワラタ。(←半角のつもり) 今後ますますのご活躍をお祈りしております。

逝ってよし (通りすがりの名無しさん)

こんにちは。結城さんのセンスに脱帽です。 面白く、かつ、パターンの特徴がわかりやすいのがすばらしいです。 私も、 Commandパターンで、苦笑いしました。 (30歳 プログラマ)

(゚д゚)ウマー

結城さんのJava入門書でJavaを勉強した者です。デザインパターンも 興味があるもののなかなかきっかけがつかめずにいました。 今度 デザインパターンの本も購入してみようと思います。 デザインパターンは今は全然理解していませんが、 それでも CommandパターンProxyパターンのくだりは笑わせていただきました。 (23歳 大学院生)

(藁)

今デザインパターンを学習中です。 ひとつのパターンの学習が終わるたびに、 このサイトに来てギコ猫を見るのが楽しみで勉強がはかどります。 それにしても、パターンの特徴をよく捉えてますね。 (24歳 大学院生)

カワ(・∀・)イイ!!
カコ(・∀・)イイ!!
スゴク(・∀・)イイ!!
(19歳 大学生)

名スレの予感 www.textfile.orgwww.kanshin.comから廻ってきました

感動した!

結城さん、すっかりにちゃんねらーっすね。(山形浩生さん)

ぜひ、感想をお送りください

あなたのご意見・感想をお送りください。 あなたの一言が大きなはげみとなりますので、どんなことでもどうぞ。

あなたの名前: メール:
学年・職業など: 年齢: 男性女性
(上の情報は、いずれも未記入でかまいません)

お手数ですが、以下の問いに答えてから送信してください(迷惑書き込み防止のため)。
今年は西暦何年ですか?

何かの理由でうまく送れない場合にはメールhyuki dot mail at hyuki dot comあてにお願いします。

このページにリンクしてくださっている方々

リンク集

更新履歴

*

『Java言語で学ぶデザインパターン入門』

GoF本を読むまえに。GoF本を読むために。
GoFのデザインパターンをやさしく紹介。

*

『Java言語で学ぶデザインパターン入門 マルチスレッド編』

パターンを通して理解する、
マルチスレッドプログラミング。

豊かな人生のための四つの法則