Successfully reported this slideshow.
We use your LinkedIn profile and activity data to personalize ads and to show you more relevant ads. You can change your ad preferences anytime.

デザパタ勉強会(中級編)

376 views

Published on

社内勉強会「デザパタ勉強会(中級編)」で使った資料

Published in: Software
  • accessibility Books Library allowing access to top content, including thousands of title from favorite author, plus the ability to read or download a huge selection of books for your pc or smartphone within minutes DOWNLOAD THIS BOOKS INTO AVAILABLE FORMAT ......................................................................................................................... ......................................................................................................................... Download Full PDF EBOOK here { http://bit.ly/2m6jJ5M } ......................................................................................................................... Download Full EPUB Ebook here { http://bit.ly/2m6jJ5M } ......................................................................................................................... ...................................ALL FOR EBOOKS................................................. Cookbooks, Manga, Memoir, Music, Mystery, Non Fiction, Paranormal, Philosophy, Poetry, Psychology, Religion, Art, Biography, Business, Chick Lit, Children's, Christian, Classics, Comics, Contemporary, Romance, Science, Science Fiction, Self Help, Suspense, Spirituality, Sports, Thriller, Travel, Young Adult, Crime, Ebooks, Fantasy, Fiction, Graphic Novels, Historical Fiction, History, Horror, Humor And Comedy,
       Reply 
    Are you sure you want to  Yes  No
    Your message goes here
  • If you want to download or read this book, copy link or url below in the New tab ......................................................................................................................... DOWNLOAD FULL PDF EBOOK here { http://bit.ly/2m6jJ5M } ......................................................................................................................... Download EPUB Ebook here { http://bit.ly/2m6jJ5M } .........................................................................................................................
       Reply 
    Are you sure you want to  Yes  No
    Your message goes here
  • (Unlimited)....ACCESS WEBSITE Over for All Ebooks ................ accessibility Books Library allowing access to top content, including thousands of title from favorite author, plus the ability to read or download a huge selection of books for your pc or smartphone within minutes ......................................................................................................................... DOWNLOAD FULL PDF EBOOK here { http://bit.ly/2m6jJ5M } ......................................................................................................................... Download Full EPUB Ebook here { http://bit.ly/2m6jJ5M } ......................................................................................................................... Download Full PDF EBOOK here { http://bit.ly/2m6jJ5M }
       Reply 
    Are you sure you want to  Yes  No
    Your message goes here
  • DOWNLOAD THIS BOOKS INTO AVAILABLE FORMAT (Unlimited) ......................................................................................................................... ......................................................................................................................... Download Full PDF EBOOK here { https://tinyurl.com/yyxo9sk7 } ......................................................................................................................... Download Full EPUB Ebook here { https://tinyurl.com/yyxo9sk7 } ......................................................................................................................... ACCESS WEBSITE for All Ebooks ......................................................................................................................... Download Full PDF EBOOK here { https://tinyurl.com/yyxo9sk7 } ......................................................................................................................... Download EPUB Ebook here { https://tinyurl.com/yyxo9sk7 } ......................................................................................................................... Download doc Ebook here { https://tinyurl.com/yyxo9sk7 } ......................................................................................................................... ......................................................................................................................... ......................................................................................................................... .............. Browse by Genre Available eBooks ......................................................................................................................... Art, Biography, Business, Chick Lit, Children's, Christian, Classics, Comics, Contemporary, Cookbooks, Crime, Ebooks, Fantasy, Fiction, Graphic Novels, Historical Fiction, History, Horror, Humor And Comedy, Manga, Memoir, Music, Mystery, Non Fiction, Paranormal, Philosophy, Poetry, Psychology, Religion, Romance, Science, Science Fiction, Self Help, Suspense, Spirituality, Sports, Thriller, Travel, Young Adult,
       Reply 
    Are you sure you want to  Yes  No
    Your message goes here
  • DOWNLOAD THIS BOOKS INTO AVAILABLE FORMAT (Unlimited) ......................................................................................................................... ......................................................................................................................... Download Full PDF EBOOK here { https://tinyurl.com/yyxo9sk7 } ......................................................................................................................... Download Full EPUB Ebook here { https://tinyurl.com/yyxo9sk7 } ......................................................................................................................... ACCESS WEBSITE for All Ebooks ......................................................................................................................... Download Full PDF EBOOK here { https://tinyurl.com/yyxo9sk7 } ......................................................................................................................... Download EPUB Ebook here { https://tinyurl.com/yyxo9sk7 } ......................................................................................................................... Download doc Ebook here { https://tinyurl.com/yyxo9sk7 } ......................................................................................................................... ......................................................................................................................... ......................................................................................................................... .............. Browse by Genre Available eBooks ......................................................................................................................... Art, Biography, Business, Chick Lit, Children's, Christian, Classics, Comics, Contemporary, Cookbooks, Crime, Ebooks, Fantasy, Fiction, Graphic Novels, Historical Fiction, History, Horror, Humor And Comedy, Manga, Memoir, Music, Mystery, Non Fiction, Paranormal, Philosophy, Poetry, Psychology, Religion, Romance, Science, Science Fiction, Self Help, Suspense, Spirituality, Sports, Thriller, Travel, Young Adult,
       Reply 
    Are you sure you want to  Yes  No
    Your message goes here

デザパタ勉強会(中級編)

  1. 1. 1
  2. 2. p 生成に関するパターン p 構造に関するパターン p 振る舞いに関するパターン 2
  3. 3. p Abstract Factory p Builder p Factory Method p Prototype p Singleton 3
  4. 4. p Adapter p Bridge p Composite p Decorator p Façade p Flyweight p Proxy p State p Strategy p Template Method p Visitor 4
  5. 5. p Chain of Responsibility p Command p Interpreter p Iterator p Mediator p Memento p Observer 5
  6. 6. p オブジェクトを生成するときのインタ フェースだけを規定して、実際にどのク ラスをインスタンス化するかはサブクラ スが決めるようにする。 6
  7. 7. p Product p factory methodが生成するオブジェクトのインタフェースを定義する p ConcreteProduct p Productクラスのインタフェースを実装する p Creator p Product型のオブジェクトを返すfactory methodを宣言する p ConcreteCreator p ConcreteProduct クラスのインスタンスを返すように、factory method をオー バーライドする 7
  8. 8. public class YoshinoyaGyudon implements Gyudon public interface Gyudon public class SukiyaGyudon implements Gyudon public interface GyudonCreator { Gyudon createGyudon(); public class GyudonCreator implements GyudonCreator { public Gyudon createGyudon() { ・・・ 8
  9. 9. p Product(先ほどの例ではGyudon)を扱う クラスでは具体的なGyudonを意識しない p 抽象型で扱う p インターフェイスにプログラミングする p 具体的に何のインスタンスを生成するか はサブクラス(ConcreteCreator)が知っ ておけば良い p ifを使わずクラスを分ける p 「役割」ごとに分割 9
  10. 10. p オブジェクトの内部状態が変化したとき に、オブジェクトが振る舞いを変えるよ うにする。クラス内では、振る舞いの変 化を記述せず、状態を表すオブジェクト を導入することでこれを実現する。 10
  11. 11. p Context p クライアントに必要なインタフェースを定義する p 状態を表すConcreteStateクラスのインスタンスを保持する p State p Contextクラスの個々の状態に関する振る舞いをカプセル化するための インタフェースを定義する p ConcreteState p Contextクラスの1つの状態に関する振る舞いが実装される 11
  12. 12. public interface ColleagueState { Behavior letsDrink(); public class Colleague { private ColleagueState state; public Behavior letsDrink() { return state.letsDrink(); public class WorkingState implements ClleagueState { public Behavior letsDrink() { return Behavior.REJECT; public class AfterWorkState implements ClleagueState { public Behavior letsDrink() { return Behavior.OK; 12
  13. 13. p Context(先ほどの例ではColleague)に対 して「現在の状態」を意識しない p インターフェイスにプログラミングする p 状態に依存した振る舞いはStateのサブク ラスに局所化されている p Ifを使わずにクラスを分ける p 「役割」ごとに分割 13
  14. 14. p 部分―全体階層を表現するために、 オブジェクトを木構造に組み立てる。 p クライアントは、個々のオブジェクトと オブジェクトを合成したものを一様に扱 うことができるようになる。 14
  15. 15. p Component p composite 内のオブジェクトのインタフェースを宣言する p すべてのクラスに共通なインタフェースのデフォルトの振る舞いを適宜 実装する p Leaf p Composite 内の末端のオブジェクトを表す。 つまりleafは子オブジェクトを持たない。 p Composite p 子オブジェクトを持つComponentの振る舞いを定義する。 15
  16. 16. public class Address extends Location { public String toString() { ・・・ public abstract class Location { public List<Address> getInner(); public class Area extends Location { public List<Address> getInner() { ・・・ 16
  17. 17. p Leaf(先ほどの例ではAddress)と Composite(先ほどの例ではArea)の違い を意識しない p 抽象型で扱う p ifを使わずクラスを分ける p Leaf用の振る舞いはLeafに、Composite 用の振る舞いはCompositeに実装する p 「役割」ごとに分割 17
  18. 18. p 要求をオブジェクトとしてカプセル化す ることによって、異なる要求や、要求か らなるキューやログにより、クライアン トをパラメータ化する 18
  19. 19. p Command p オペレーションを実行するためのインターフェイスを宣言する p ConcreteCommand p Receiverオブジェクトとアクションの間のつながりを定義する p Execute オペレーションを、Receiver オブジェクトに対して該当するオペレーションの呼び出し を行うように実装する p Invoker p command に要求を実行するように依頼する p Receiver p 要求を実現するためにオペレーションをいかに実行するのかを知っている。任意のクラスが Receiver になり得る 19
  20. 20. public class TextPaste implements Command { private Document doc; public void execute() { doc.paste(); public interface Command { public void execute(); public class Application { ・・・ menuItem.onClick() { menuItem.getCommand().execute(); 20
  21. 21. p 手続きがCommandにカプセル化させている ので手続きの変更に強い p 手続きの追加がCommandの追加となり他の クラスへの影響が少ない p 抽象型で扱う p インターフェイスにプログラミングする p ifを使わずクラスを分ける p 「役割」ごとに分割 21
  22. 22. 22 ありがとうございました。

×