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.

オブジェクト指向プログラミング再入門

31,515 views

Published on

Published in: Technology
  • DOWNLOAD THIS BOOKS INTO AVAILABLE FORMAT (Unlimited) ......................................................................................................................... ......................................................................................................................... Download Full PDF EBOOK here { https://tinyurl.com/y6a5rkg5 } ......................................................................................................................... Download Full EPUB Ebook here { https://tinyurl.com/y6a5rkg5 } ......................................................................................................................... ACCESS WEBSITE for All Ebooks ......................................................................................................................... Download Full PDF EBOOK here { https://tinyurl.com/y6a5rkg5 } ......................................................................................................................... Download EPUB Ebook here { https://tinyurl.com/y6a5rkg5 } ......................................................................................................................... Download doc Ebook here { https://tinyurl.com/y6a5rkg5 } ......................................................................................................................... ......................................................................................................................... ......................................................................................................................... .............. 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. オブジェクト指向 プログラミング再入門 2014.01.08 Kauli tech talk nekoya
  2. 2. 大事なのは、 オブジェクトについて 深く考えること
  3. 3. デザインパターン ! MVC
  4. 4. そういうのはいいから
  5. 5. オブジェクトについて 深く考える
  6. 6. これを心に刻み込もう
  7. 7. オブジェクトとは
  8. 8. オブジェクト データとそれを扱う 操作の集合体
  9. 9. クラス オブジェクトを 定義する抽象
  10. 10. 厨二的世界観 物質界 アストラル界 オブジェクト クラス マテリアライズ 物質化 オブジェクト
  11. 11. Pythonのクラス • Pythonのクラスはモジュール変数 • アストラル界に存在するクラスの定義が
 物質界に存在する • 物理世界からアストラル体への
 干渉および滅ぼすことが可能 • そんなに偉くない
  12. 12. オブジェクト指向
 = クラス設計
  13. 13. ではない
  14. 14. クラスはあくまで OOPの一つの要素・側面 ! クラスベースじゃない 言語もある
  15. 15. ぶっちゃけ最初は クラスとか深く考えな くていいんじゃねーの
  16. 16. 収集つかなくなるぐらいなら 目の前のオブジェクトに 集中した方がいい
  17. 17. クラス = 抽象 オブジェクト = 具象
  18. 18. クラス設計とは 具象から抽象を
 導き出す行為
  19. 19. 最初から抽象を 捉えるのは難しい
  20. 20. まずは具象たる オブジェクトについて 深く考えよう
  21. 21. オブジェクトの責務
  22. 22. 難しい話は抜きにして まずはこれ
  23. 23. あるオブジェクトのデータを 他のオブジェクトが利用しない
  24. 24. よくない設計 !             / ̄ ̄\           /   _ノ  \           |    ( ●)(●)           |     (__人__)                |     ` ⌒´ノ               |         }               ヽ        }             ヽ、.,__ __ノ    _, 、 -― ''"::l:::::::\ー-..,ノ,、.゙,i 、   /;;;;;;::゙:':、::::::::::::|_:::;、>、_ l|||||゙!:゙、-、_  丿;;;;;;;;;;;:::::i::::::::::::::/:::::::\゙'' ゙||i l\>::::゙'ー、 . i;;;;;;;;;;;;;;;;;;;;;;|::::::::::::::\::::::::::\ .||||i|::::ヽ::::::|:::! 年齢は? 店員(売る人) !             / ̄ ̄\           /   _ノ  \           |    ( ●)(●)           |     (__人__)                |     ` ⌒´ノ               |         }               ヽ        }             ヽ、.,__ __ノ    _, 、 -― ''"::l:::::::\ー-..,ノ,、.゙,i 、   /;;;;;;::゙:':、::::::::::::|_:::;、>、_ l|||||゙!:゙、-、_  丿;;;;;;;;;;;:::::i::::::::::::::/:::::::\゙'' ゙||i l\>::::゙'ー、 . i;;;;;;;;;;;;;;;;;;;;;;|::::::::::::::\::::::::::\ .||||i|::::ヽ::::::|:::!        ____     /      \    /  ─    ─\  /    ,(●) (●)、\     |       (__人__)    |  \     ` ⌒´   /       ,,.....イ.ヽヽ、___ ーーノ゙-、. :   |  '; \_____ ノ.| ヽ i     |  \/゙(__)\,|  i |     >   ヽ. ハ  |   || 32歳ですお 客(買う人) 酒買ってよし
  25. 25. よい設計 !             / ̄ ̄\           /   _ノ  \           |    ( ●)(●)           |     (__人__)                |     ` ⌒´ノ               |         }               ヽ        }             ヽ、.,__ __ノ    _, 、 -― ''"::l:::::::\ー-..,ノ,、.゙,i 、   /;;;;;;::゙:':、::::::::::::|_:::;、>、_ l|||||゙!:゙、-、_  丿;;;;;;;;;;;:::::i::::::::::::::/:::::::\゙'' ゙||i l\>::::゙'ー、 . i;;;;;;;;;;;;;;;;;;;;;;|::::::::::::::\::::::::::\ .||||i|::::ヽ::::::|:::! 成人してますか?        ____     /      \    /  ─    ─\  /    ,(●) (●)、\     |       (__人__)    |  \     ` ⌒´   /       ,,.....イ.ヽヽ、___ ーーノ゙-、. :   |  '; \_____ ノ.| ヽ i     |  \/゙(__)\,|  i |     >   ヽ. ハ  |   || はい !             / ̄ ̄\           /   _ノ  \           |    ( ●)(●)           |     (__人__)                |     ` ⌒´ノ               |         }               ヽ        }             ヽ、.,__ __ノ    _, 、 -― ''"::l:::::::\ー-..,ノ,、.゙,i 、   /;;;;;;::゙:':、::::::::::::|_:::;、>、_ l|||||゙!:゙、-、_  丿;;;;;;;;;;;:::::i::::::::::::::/:::::::\゙'' ゙||i l\>::::゙'ー、 . i;;;;;;;;;;;;;;;;;;;;;;|::::::::::::::\::::::::::\ .||||i|::::ヽ::::::|:::! 酒買ってよし
  26. 26. 責務の分散 • オブジェクトは自身の属性を「知っている」 • 他者の属性は「知らない」 • 知っていることについて責務をもつ
  27. 27. よくない設計 属性        ____     /      \    /  ─    ─\  /    ,(●) (●)、\     |       (__人__)    |  \     ` ⌒´   /       ,,.....イ.ヽヽ、___ ーーノ゙-、. :   |  '; \_____ ノ.| ヽ i     |  \/゙(__)\,|  i |     >   ヽ. ハ  |   || 32歳ですお ! 評価             / ̄ ̄\           /   _ノ  \           |    ( ●)(●)           |     (__人__)                |     ` ⌒´ノ               |         }               ヽ        }             ヽ、.,__ __ノ    _, 、 -― ''"::l:::::::\ー-..,ノ,、.゙,i 、   /;;;;;;::゙:':、::::::::::::|_:::;、>、_ l|||||゙!:゙、-、_  丿;;;;;;;;;;;:::::i::::::::::::::/:::::::\゙'' ゙||i l\>::::゙'ー、 . i;;;;;;;;;;;;;;;;;;;;;;|::::::::::::::\::::::::::\ .||||i|::::ヽ::::::|:::! 酒買ってよし 他者の属性を利用している
  28. 28. 現実世界に生きるのがつらい !             / ̄ ̄\           /   _ノ  \           |    ( ●)(●)           |     (__人__)                |     ` ⌒´ノ               |         }               ヽ        }             ヽ、.,__ __ノ    _, 、 -― ''"::l:::::::\ー-..,ノ,、.゙,i 、   /;;;;;;::゙:':、::::::::::::|_:::;、>、_ l|||||゙!:゙、-、_  丿;;;;;;;;;;;:::::i::::::::::::::/:::::::\゙'' ゙||i l\>::::゙'ー、 . i;;;;;;;;;;;;;;;;;;;;;;|::::::::::::::\::::::::::\ .||||i|::::ヽ::::::|:::! 成人してますか?        ____     /      \    /  ─    ─\  /    ,(●) (●)、\     |       (__人__)    |  \     ` ⌒´   /       ,,.....イ.ヽヽ、___ ーーノ゙-、. :   |  '; \_____ ノ.| ヽ i     |  \/゙(__)\,|  i |     >   ヽ. ハ  |   || はい (18歳だけど !  心は大人だお…)             / ̄ ̄\           /   _ノ  \           |    ( ●)(●)           |     (__人__)                |     ` ⌒´ノ               |         }               ヽ        }             ヽ、.,__ __ノ    _, 、 -― ''"::l:::::::\ー-..,ノ,、.゙,i 、   /;;;;;;::゙:':、::::::::::::|_:::;、>、_ l|||||゙!:゙、-、_  丿;;;;;;;;;;;:::::i::::::::::::::/:::::::\゙'' ゙||i l\>::::゙'ー、 . i;;;;;;;;;;;;;;;;;;;;;;|::::::::::::::\::::::::::\ .||||i|::::ヽ::::::|:::! 酒買ってよし
  29. 29. やらない夫は 悪くないんや!
  30. 30. 別の人間に責任を
 負わせる場合
  31. 31. 店長登場
  32. 32. よくない設計        /ニYニヽ    (ヽ   /( ゚ )( ゚ )ヽ   /)   (((i ) /::::⌒`´⌒::::\  ( i)))  /∠_| ,-)___(-,|_ゝ \ ( ___、  |-┬-|    ,__ )     |    `ー'´   /´     |         / 年齢は?っていうwww 店長(年齢判断する人) !             / ̄ ̄\           /   _ノ  \           |    ( ●)(●)           |     (__人__)                |     ` ⌒´ノ               |         }               ヽ        }             ヽ、.,__ __ノ    _, 、 -― ''"::l:::::::\ー-..,ノ,、.゙,i 、   /;;;;;;::゙:':、::::::::::::|_:::;、>、_ l|||||゙!:゙、-、_  丿;;;;;;;;;;;:::::i::::::::::::::/:::::::\゙'' ゙||i l\>::::゙'ー、 . i;;;;;;;;;;;;;;;;;;;;;;|::::::::::::::\::::::::::\ .||||i|::::ヽ::::::|:::! 年齢は? 店員(売る人) !             / ̄ ̄\        ____     /      \    /  ─    ─\  /    ,(●) (●)、\     |       (__人__)    |  \     ` ⌒´   /       ,,.....イ.ヽヽ、___ ーーノ゙-、. :   |  '; \_____ ノ.| ヽ i     |  \/゙(__)\,|  i |     >   ヽ. ハ  |   || 32歳ですお 客(買う人)           /   _ノ  \           |    ( ●)(●)           |     (__人__)                |     ` ⌒´ノ               |         }               ヽ        }             ヽ、.,__ __ノ    _, 、 -― ''"::l:::::::\ー-..,ノ,、.゙,i 、   /;;;;;;::゙:':、::::::::::::|_:::;、>、_ l|||||゙!:゙、-、_  丿;;;;;;;;;;;:::::i::::::::::::::/:::::::\゙'' ゙||i l\>::::゙'ー、 . i;;;;;;;;;;;;;;;;;;;;;;|::::::::::::::\::::::::::\ .||||i|::::ヽ::::::|:::! 32歳だそうです        /ニYニヽ    (ヽ   /( ゚ )( ゚ )ヽ   /)   (((i ) /::::⌒`´⌒::::\  ( i)))  /∠_| ,-)___(-,|_ゝ \ ( ___、  |-┬-|    ,__ )     |    `ー'´   /´     |         / 酒売ってやるっていうwww
  33. 33. よい設計        /ニYニヽ    (ヽ   /( ゚ )( ゚ )ヽ   /)   (((i ) /::::⌒`´⌒::::\  ( i)))  /∠_| ,-)___(-,|_ゝ \ ( ___、  |-┬-|    ,__ )     |    `ー'´   /´     |         /             / ̄ ̄\           /   _ノ  \           |    ( ●)(●)           |     (__人__)                |     ` ⌒´ノ               |         }               ヽ        }             ヽ、.,__ __ノ    _, 、 -― ''"::l:::::::\ー-..,ノ,、.゙,i 、   /;;;;;;::゙:':、::::::::::::|_:::;、>、_ l|||||゙!:゙、-、_  丿;;;;;;;;;;;:::::i::::::::::::::/:::::::\゙'' ゙||i l\>::::゙'ー、 . i;;;;;;;;;;;;;;;;;;;;;;|::::::::::::::\::::::::::\ .||||i|::::ヽ::::::|:::! 客は誰だ?っていうwww ! こいつです        /ニYニヽ    (ヽ   /( ゚ )( ゚ )ヽ   /)   (((i ) /::::⌒`´⌒::::\  ( i)))  /∠_| ,-)___(-,|_ゝ \ ( ___、  |-┬-|    ,__ )     |    `ー'´   /´     |         /        ____     /      \    /  ─    ─\  /    ,(●) (●)、\     |       (__人__)    |  \     ` ⌒´   /       ,,.....イ.ヽヽ、___ ーーノ゙-、. :   |  '; \_____ ノ.| ヽ i     |  \/゙(__)\,|  i |     >   ヽ. ハ  |   || こいつ 年齢は?っていうwww        ____     /      \    /  ─    ─\  /    ,(●) (●)、\     |       (__人__)    |  \     ` ⌒´   /       ,,.....イ.ヽヽ、___ ーーノ゙-、. :   |  '; \_____ ノ.| ヽ i     |  \/゙(__)\,|  i |     >   ヽ. ハ  |   || 32歳ですお        /ニYニヽ    (ヽ   /( ゚ )( ゚ )ヽ   /)   (((i ) /::::⌒`´⌒::::\  ( i)))  /∠_| ,-)___(-,|_ゝ \ ( ___、  |-┬-|    ,__ )     |    `ー'´   /´     |         / 酒売ってやるっていうwww
  34. 34. データをひとり歩き させない
  35. 35. よくない設計        /ニYニヽ    (ヽ   /( ゚ )( ゚ )ヽ   /)   (((i ) /::::⌒`´⌒::::\  ( i)))  /∠_| ,-)___(-,|_ゝ \ ( ___、  |-┬-|    ,__ )     |    `ー'´   /´     |         / 年齢は?っていうwww 店長(年齢判断する人) !             / ̄ ̄\           /   _ノ  \           |    ( ●)(●)           |     (__人__)                |     ` ⌒´ノ               |         }               ヽ        }             ヽ、.,__ __ノ    _, 、 -― ''"::l:::::::\ー-..,ノ,、.゙,i 、   /;;;;;;::゙:':、::::::::::::|_:::;、>、_ l|||||゙!:゙、-、_  丿;;;;;;;;;;;:::::i::::::::::::::/:::::::\゙'' ゙||i l\>::::゙'ー、 . i;;;;;;;;;;;;;;;;;;;;;;|::::::::::::::\::::::::::\ .||||i|::::ヽ::::::|:::! 年齢は? 店員(売る人) !             / ̄ ̄\ 値           /   _ノ  \           |    ( ●)(●)           |     (__人__)                |     ` ⌒´ノ               |         }               ヽ        }             ヽ、.,__ __ノ    _, 、 -― ''"::l:::::::\ー-..,ノ,、.゙,i 、   /;;;;;;::゙:':、::::::::::::|_:::;、>、_ l|||||゙!:゙、-、_  丿;;;;;;;;;;;:::::i::::::::::::::/:::::::\゙'' ゙||i l\>::::゙'ー、 . i;;;;;;;;;;;;;;;;;;;;;;|::::::::::::::\::::::::::\ .||||i|::::ヽ::::::|:::! 属性        ____     /      \    /  ─    ─\  /    ,(●) (●)、\     |       (__人__)    |  \     ` ⌒´   /       ,,.....イ.ヽヽ、___ ーーノ゙-、. :   |  '; \_____ ノ.| ヽ i     |  \/゙(__)\,|  i |     >   ヽ. ハ  |   || 32歳ですお 客(買う人) 32歳だそうです        /ニYニヽ    (ヽ   /( ゚ )( ゚ )ヽ   /)   (((i ) /::::⌒`´⌒::::\  ( i)))  /∠_| ,-)___(-,|_ゝ \ ( ___、  |-┬-|    ,__ )     |    `ー'´   /´     |         / 誰も責務を負わない「値」 酒売ってやるっていうwww
  36. 36. オブジェクトから離れた 値はシステムの堅牢性を 低下させる要因となり得る
  37. 37. オブジェクト同士で 対話させる
  38. 38. 擬人化は有効な アプローチ(キリッ
  39. 39. 今日のおすすめ • http://www.oreilly.co.jp/books/ 9784873113494/ • 紙の本が4,200円 • オライリーeBookで3,360円 サクサク読めて、実践的な話が多い
  40. 40. 以下、余談
  41. 41. パーソナルコンピュータにおける プログラミングの歴史 (加齢臭タイム)
  42. 42. 君はBASICを知っているか • 変数は全てグローバル • スコープという概念がそもそもない • サブルーチン(元に位置に戻れるgoto文) • 戻り値なし • Cは高級言語
  43. 43. プログラム領域とデータ領域 ! 前半部分がプログラム、 後の方にDATA文がずらーっと並ぶ ! ベーマガでよく見たパターンですよね?
  44. 44. 新しい知識を 取り込むのをやめた この世代が老害化
  45. 45. クラス? 似たようなサブルーチンを まとめればいいんでしょ?
  46. 46. staticおじさんの 誕生である
  47. 47. 日々の勉強を欠かすと _人人 人人_ > 必然の死 <  ̄Y^Y^Y^Y ̄
  48. 48. 1970年代にはオブジェクト指向の
 考え方は存在していたんですけどね…
  49. 49. 知識の更新を 怠るべからず

×