O slideshow foi denunciado.
Utilizamos seu perfil e dados de atividades no LinkedIn para personalizar e exibir anúncios mais relevantes. Altere suas preferências de anúncios quando desejar.

第2回勉強会 オブジェクト指向

3.863 visualizações

Publicada em

はこだてIKA 第2回夜間勉強会で使用した資料です。

Publicada em: Tecnologia
  • 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,
       Responder 
    Tem certeza que deseja  Sim  Não
    Insira sua mensagem aqui
  • 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,
       Responder 
    Tem certeza que deseja  Sim  Não
    Insira sua mensagem aqui
  • 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,
       Responder 
    Tem certeza que deseja  Sim  Não
    Insira sua mensagem aqui
  • 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,
       Responder 
    Tem certeza que deseja  Sim  Não
    Insira sua mensagem aqui
  • 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,
       Responder 
    Tem certeza que deseja  Sim  Não
    Insira sua mensagem aqui

第2回勉強会 オブジェクト指向

  1. 1. オブジェクト指向(基礎) 2012/08/09 株式会社エスイーシー 香戸 寛雄
  2. 2. イントロダクション
  3. 3. 皆さんについて教えてください● お名前● 業務(学校)で使っている言語● あなたは今、オブジェクト指向 をわかっている?  (○ or ×)
  4. 4. あなたはどっち?「扉を開ける」あなたはどっちの書き方? 1. open(door) 2. door.open()
  5. 5. あなたの指向は1. open(door) 手続き指向です 「開ける」関数に「扉」構造体を渡してい ます2. door.open() オブジェクト指向です 「扉」オブジェクトの「開ける」メソッドを呼 んでいます
  6. 6. 知ってる?オブジェクト指向の3原則って知っていますか?
  7. 7. オブジェクト指向の3原則 1. カプセル化 2. 継承 3. ポリモーフィズム
  8. 8. でも・・・今回は「オブジェクト指向の3原則」には触れません!
  9. 9. さらに「たい焼きの鋳型」がクラス、「たい焼き」はインスタンス!的な意味のない例えも、今回は使いません。
  10. 10. 本日のレジュメ
  11. 11. 1. オブジェクト指向とは (そんなにオブジェクト指向すごいのか?) ■■ 休憩 ■■2. 手続き型とオブジェクト型の 違い 本日のレジュメ
  12. 12. 1.オブジェクト指向とは
  13. 13. ググってみた「IT用語辞典 e-word」にはこのように書かれています。みんなで読み合わせてみましょう http://e-words.jp/w/E382AAE38396E382B8E382A7E382AFE3 8388E68C87E59091.html
  14. 14. ソフトウェアの設計や開発において、操作手順よりも操作対象に重点を置く考え方。 オブジェクト指向【object oriented】
  15. 15. 関連するデータの集合と、それに対する手続き(メソッド)を「オブジェクト」と呼ばれる一つのまとまりとして管理し、その組み合わせによってソフトウェアを構築する。 オブジェクト指向【object oriented】
  16. 16. 1つのまとまりとして管理?例えば、C言語においてライブラリ化した場合、1つのまとまりとして管理されていないか?この考え方は、オブジェクト指向だけの考え方か?
  17. 17. すでに存在するオブジェクトについては、利用に際してその内部構造や動作原理の詳細を知る必要はなく、外部からメッセージを送れば機能するため、特に大規模なソフトウェア開発において有効な考え方であるとされている。 オブジェクト指向【object oriented】
  18. 18. 詳細を知る必要がない?オブジェクト指向言語をつかっている皆様はそのような実装になっている?各言語の標準関数を使う場合でも詳細を知る必要がある?
  19. 19. 大規模なソフトウェア開発において有効?なぜ?ライブラリ化により、他言語でも再利用性、汎用性はあがるのでは?設計、およびポリシーの問題なのでは?
  20. 20. データやその集合を現実世界の「モノ」になぞらえた考え方であることから、「オブジェクト」指向と呼ばれる。 オブジェクト指向【object oriented】
  21. 21. 現実世界の「モノ」になぞらえた?現実世界をプログラムの世界に反映させるの?
  22. 22. 例えば、我々がテレビを操作する際には、テレビ内部でどのような回路が働いているかを理解する必要はない。ただテレビの操作方法だけを知っていれば、それでテレビを使うことができる。すなわち、「テレビ」というオブジェクトは、自身(の内部を構成する電子回路)を動作させる手続きを知っており、それを利用するためには、(例えばリモコンで)適切なメッセージを与えるだけでよい。 オブジェクト指向【object oriented】
  23. 23. このように、何らかの「データ」と、それを操作するための「メソッド」の組み合わせが「オブジェクト」である。 オブジェクト指向【object oriented】
  24. 24. 個々の操作対象に対して固有の操作方法を設定することで、その内部動作の詳細を覆い隠し、利用しやすくしようとする考え方と言える。この考え方を応用したプログラミング技法が、オブジェクト指向プログラミング(OOP)である。 オブジェクト指向【object oriented】
  25. 25. どうでしょう?一般的なオブジェクト指向の説明・・・いかに抽象的でいかに曖昧か・・・これでオブジェクト指向が理解できますか?
  26. 26. オブジェクト指向とは!● 大規模開発に向いている● 再利用性がとても高い● 保守性も高く、仕様変更に強 い● 技術者として知るべきこと 本当??
  27. 27. そんなわけない・・・
  28. 28. オブジェクト指向って・・・● 必須?効率的?それはリーダーや製造 者次第では?● Javaが誕生して17年、C言語は過去の ものとなった?● 知らないより知っているほうが良いレベ ルなのでは? 所詮は道具
  29. 29. オブジェクト指向って流行っているの?7月プログラミング言語人気 http://news.mynavi.jp/news/2012/07/10/012/index. html
  30. 30. 休憩
  31. 31. 手続き型とオブジェクト型の違い
  32. 32. オブジェクトって?● フィールドとは?● メソッドとは?● クラスとは?● インスタンスとは?● オブジェクトとは?
  33. 33. オブジェクトとは● フィールド:変数です● メソッド:関数です● クラス:フィールドと関数を集めた定義 体です● インスタンス:クラスをメモリに実体化し たものです● オブジェクト:インスタンスの総称です (とりあえずはオブジェクト=インスタンスでOK)
  34. 34. イントロダクションでのこと● あなた自身がオブジェクト● 名前、言語などが隠蔽化され た情報● 私がお願いしたことがメソッド 呼び出し● あなたの動作が処理
  35. 35. どう つ・く・る?画面をランダムに移動する街の住人それぞれ向いている向きも違えば、外見も違うでも、同じ外見の人もいたりするこんな街の住人をプログラムで表現すると?<キーワード> ・住人 ・向き ・外見 ・移動する
  36. 36. 手続き型向の場合● 住人構造体を作成 (向き、外見に関する情報を保持)● 「移動する」関数を作成● 「移動する」関数に住人構造体を渡す● この処理を住人の数だけ繰り返す move(non_player)
  37. 37. オブジェクト指向の場合● 住人クラスを作成 (向き、外見に関する情報を保持)● 「移動する」メソッドを住人クラスに作成● 住人の数だけオブジェクトを作成しメソッドを呼 ぶ nonPlayer.move()
  38. 38. もう少し考えてみようでは、次の処理を追加するとどうなる? 主人公を動かす
  39. 39. 手続き指向の場合● 主人公構造体を作成 (向き、外見に関する情報を保持)● 「移動する」関数を作成● 「移動する」関数に主人公構造体と移動する方 向を渡す player_move(player, key)
  40. 40. オブジェクト指向の場合● 主人公クラスを作成 (向き、外見に関する情報を保持)● 「移動する」メソッドを主人公クラスに作成● 「移動する」メソッドを呼ぶ player.move(key)
  41. 41. あれ・・・なんか「移動する」っていろいろ出てきそうだけど・・・「移動する」が増えれば増えるほど手続きの方って・・・ 設計次第だけどねw
  42. 42. こ・ん・ど・は?主人公の動きにこんな制約をつけます ・主人公の状態を追加 ・主人公の毒と言う状態がある ・主人公の状態が毒の場合、移動するごとにHPが減る
  43. 43. 手続き指向の場合● 主人公構造体に「状態」と「HP」の情報を追加● 「移動する」関数に「状態」により「HP」を減少さ せる処理を追加 player_move(player, key)
  44. 44. もしかしたら・・・● お仕事だったら、こんな風に書くかもね・・・player_move(player, key)if(player.status = poison){ player.hp = player.hp -20}※ 進行上、これはなかったことに
  45. 45. オブジェクト指向の場合● 主人公クラスに「状態」と「HP」の情報を追加● 「移動する」メソッドに「状態」により「HP」を減少 させる処理を追加 player.move(key)
  46. 46. あれ?手続きもオブジェクト も一緒?
  47. 47. でも・・・状態もHPも「主人公」構造体(クラス)も持ち物!「移動する」関数(メソッド)は?<手続き> 誰の持ち物でもない(処理実装部分が 状態を意識している)<オブジェクト> 主人公クラスの持ち物(状態は主人公 クラスしか意識していない)
  48. 48. どういうこと?手続き指向は ○ 主人公構造体はただのデータの塊 ○ それを操作(処理)する実装で、位 置、向きを書き換える ○ さらに状態によって、HPが減るか減ら ないか判断する
  49. 49. 手続指向だと主人公構造体をいたるところで変更可能主人公に対する変更が発生すると影響度 は大きい さらに。。。不具合が発生しやすい
  50. 50. で??オブジェクト指向は ○ 主人公クラスは全ての情報と「移動 する」メソッドを管理 ○ オブジェクト内で全ての情報を操作 し、呼び出し先は情報を意識していな い
  51. 51. オブジェクト指向だと 主人公の情報はクラス内で完結情報に対する仕様変更はクラス内で完結 処理の追加はメソッドの追加 情報が隠ぺい化されているので 不具合が発生した場合 原因の特定がしやすい
  52. 52. ミソは!(1)● オブジェクト指向は「情報」と 「処理」を「ひとまとまり」に管 理できる
  53. 53. ミソは!(2)● オブジェクト指向は「情報」と 「処理」の「ひとまとまり」を定 義さえすれば、メモリ上に簡 単にいくつでも、配置(実体 化)出来る
  54. 54. ミソは!(3)● オブジェクト指向は「情報」と 「処理」の「ひとまとまり」を定 義が同じでも、メモリ上に配置 (実体化)したものはまったく の別物である
  55. 55. マルチプルインスタンス実は先ほどの「ミソ」が「マルチプルインスタンス」と言うものでオブジェクト指向を理解するうえで、もっとも主となる考え方と言われています。
  56. 56. まとめ
  57. 57. 今回の勉強会は今回は「オブジェクト指向」の「オブジェクト」の部分を、以下の点からふれてみました● 一般的に言われているオブ ジェクト指向● オブジェクトとはき型と比較
  58. 58. でもまだ、「オブジェクト指向」の入り口に差し掛かったくらいです。しかし、いきなり「オブジェクト指向の3原則」などを例え話を交えて説明しても、理論的な知識としてしか理解できません。本質のない知識は、やがて忘れていきます。
  59. 59. まずは オブジェクトって? なにが今までと違うの? を漠然とで良いので、想像出来るようにしてください
  60. 60. 今、こうなっていてくれたら幸い 書籍、ネットで書かれている 「オブジェクト指向」 について 自分なりの見方が出来る!
  61. 61. おそらく 今、講義の序盤で行った 「IT用語辞典 e-word」での内容をもう一度読んだら… 違うとらえ方が
  62. 62. その上で「オブジェクトとは」をしっかり理解したうえで「カプセル化,継承,ポリモーフィズム」などを理解した方が効率的です。なぜなら、「本質」を理解していなければただの「言葉」で終わってしまうからで
  63. 63. 最後に知識や論理は後でもよいわかったような例え話を覚えても、本質はわからない重要なのは「自分の経験」と「学ぶべき対象」を比較し、自分のものに出来るか今回は、この部分から何かを掴んで頂けたなら、良い時間となったかと思います

×