Upgrade to Pro — share decks privately, control downloads, hide ads and more …

アンドキュメンテッド ちょうぜつソフトウェア 設計入門 「オブジェクト指向に定義はない」のか?

アンドキュメンテッド ちょうぜつソフトウェア 設計入門 「オブジェクト指向に定義はない」のか?

PHPerKaigi 2023 前夜祭の資料です

Hisateru Tanaka

March 23, 2023
Tweet

More Decks by Hisateru Tanaka

Other Decks in Programming

Transcript

  1. ΞϯυΩϡϝϯςου
    ͪΐ͏ͥͭιϑτ΢ΣΞ
    ઃܭೖ໳
    ʮΦϒδΣΫτࢦ޲ʹఆٛ͸ͳ͍ʯͷ͔ʁ

    View Slide

  2. w ೥ͷ೥຤ʹຊ͕ग़·ͨ͠
    w ͱͯ΋࣮༻ੑ͕ߴ͍಺༰Ͱ͢
    w ͥͻಡΈ·͠ΐ͏
    w ಡΜͩਓ͸͓༑ୡʹקΊ·͠ΐ͏
    ాதͻͯ͞Δ

    View Slide

  3. ࠓ೔͸ೱ͍͚ͲԿͷ໾ʹ
    ΋ཱͨͳ͍࿩Λ͠·͢

    View Slide

  4. ͪΐ͏ͥͭຊষઅ
    ΦϒδΣΫτࢦ޲ͷ
    ఆٛ͸ͳ͍
    ͳɺͳΜͩͬͯʔ

    View Slide

  5. ʜͱ͍͏ͷ͸νʔτͰ͢ɻ
    Ͳ͏ॻ͍ͯ΋୭͔ʹ೩΍͞ΕΔ͔ΒͰ͢ɻ
    ࠓ͔ΒશͯΛల։ͨ͠ຊ౰ͷ࿩Λ͠·͢ɻ

    View Slide

  6. ΦϒδΣΫτࢦ޲͸फڭ
    ͱ͘ʹ੢༸फڭ࢙ʹࣅ͍ͯ·͢

    View Slide

  7. لݩ

    View Slide

  8. w ݴޠԽ͞Εͨͷ͸೥୅ͩͬͨ
    w 4JNVMBΛ࢖͍ͬͯͨΞϥϯɾέΠͷͻΒΊ͖
    w ࣗ෼ͷΞΠσΞΛʮΦϒδΣΫτࢦ޲ʯͱݺΜͩ
    w ύʔιφϧɾίϯϐϡʔλʔͷൃҊऀ "QQMF*͸·ͩͳ͍

    w ໋ྩྻͷஞ࣍ॲཧͰ͸ͳ͘ɺ(6* ೥୅
    ͰΤϯυϢʔβ
    ʔ͕࢖͑Δ࣮ߦ؀ڥ ϓϩάϥϛϯάݴޠΛؚΉ
    Λߟ͍͑ͯͨ
    ͍ͭ͜ͷݴ༿͸஀ੜͨ͠ͷ͔
    ʮΦϒδΣΫτࢦ޲ʯ

    View Slide

  9. w ೥ʹ࠷ॳͷ4NBMMUBML͕࡞ΒΕͨ
    w ೥ʹݴޠ࢓༷͕҆ఆ
    w ʮΦϒδΣΫτʹϝοηʔδΛૹΔʯҎ֎Կ΋ͳ͍จ๏
    w ͦΕ͕ͳ͔ͥӳޠͷจষͷΑ͏ʹͳΔ
    w ྫ
    จ຤͸ϐϦΦυɻηϛίϩϯ͸ʮʙ͓Αͼʙʯ
    w ͜ͷಛ௃ %4-ײ
    ͸3VCZͱ4DBMB͕ड͚ܧ͍ͩ
    ΦϒδΣΫτࢦ޲ϓϩάϥϛϯάͷίϯηϓτϞσϧ
    4NBMMUBML

    View Slide

  10. x := 1.


    y := -1.


    o := Object new.


    abc := #(‘a’ ‘b’ ‘c’).
    จ๏ΦϒδΣΫτˠม਺ଋറ
    ॻ͖ํ͸͍Ζ͍Ζ͋Δ͚Ͳɺ
    ͋ΒΏΔ஋͸ΦϒδΣΫτͰ͢ɻ
    [:n| n * 2 ]
    ͜Ε͸ʮཁૉΛഒ͢Δ͜ͱʯΦϒδΣΫτɻ
    Ϋϩʔδϟ͸࠷ॳ͔Β͋ͬͨ

    View Slide

  11. จ๏ΦϒδΣΫτˡϝοηʔδ
    posOrNeg := x positive.


    Transcript show:’Yes’.


    range := 0 to: 10 by: 2.


    (x + y) * z.
    ԋࢉࢠ΋
    ϝοηʔδ
    ΦϒδΣΫτ͸ϝοηʔδʹԠ͑·͢ɻ
    ͜ΕΛαϒϧʔνϯݺͼग़͠ͱݴ͏ͱ4NBMMUBMLܯ࡯ʹୁั͞Ε·͢

    ͜ΕͰUPCZͱ͍͏ͻͱ
    ͭͷϝιουͰ͢
    self setX: 1; setY: 2.
    ηϛίϩϯͰจʹ
    Ͱ͖ͯ΂ΜΓ
    DPOTPMFMPH
    Έ͍ͨͳͷ

    View Slide

  12. γϯλοΫε͓ΘΓ
    ʜʜ͑ͬ ͜ΕͰͲ͏΍ͬͯΞϧΰϦζϜΛॻ͘ͷ
    ͳʹ͜ͷ
    -JTQͳΈͷ
    ׂΓ੾Γ

    View Slide

  13. ܁Γฦ͠Λ࡞ΕΔ
    ී௨ʹϒϩοΫ Ϋϩʔδϟ
    ͰͰ͖·͢ΑͶ
    Transcript show: ((0 to: 10) fold: [:a :b|


    a asString, b asString


    ]).
    (0 to: 10) do: [:n|


    Transcript show: n.


    ].
    #Ruby


    (0 .. 10).each do |n|


    print n


    end
    //JS


    oneToTen.forEach((n)=>{


    console.log(n);


    });
    ͪͳΈʹ͜͏ॻ͘ํ͕ΠϯεϖΫλͰѻ͍΍͍͢

    View Slide

  14. ৚݅෼ذ΋࡞ΕΔ
    ಉ͡ϝοηʔδͰ΋ૹΓઌ͕USVFͳͷ͔GBMTFͳͷ͔Ͱʜ
    yesOrNo ifTrue: [ Transcript show: ‘Yes’; cr. ]


    ifFalse:[ Transcript show: ‘No’; cr. ].
    Transcript show: (


    yesOrNo ifTrue:'Yes' ifFalse:’No’


    ); cr.
    #PPMFBOTVCDMBTT5SVF
    JG5SVFUSVF#MPDLJG'BMTFGBMTF#MPDL
    ?USVF#MPDLWBMVF
    #PPMFBOTVCDMBTT'BMTF
    JG5SVFUSVF#MPDLJG'BMTFGBMTF#MPDL
    ?GBMTF#MPDLWBMVF
    ͪͳΈʹ͜͏ॻ͘ํ͕ΠϯεϖΫλͰѻ͍΍͍͢
    USVF#MPDL͚ͩධՁ͢Δ
    GBMTF#MPDL͚ͩධՁ͢Δ

    View Slide

  15. ஫೥୅ͷݴޠͰ͢
    1BTDBM೥
    $ݴޠ೥
    $೥
    ·͋-JTQ͕೥ʹొ৔͍ͯͩ͠ͿܦͭͷͰɺ
    Ϋϩʔδϟͷൃ૝͸ΘΓͱී௨Ͱ͸͋ΔΜͰ͚͢ͲͶʜ
    ಛ௃తͳͷ͸USVFͱGBMTFͷ͋ΓํͰ͢ɻ

    View Slide

  16. w αϒϧʔνϯ͸࣮ߦલ͔Β੩తʹॲཧͷߦ͖ઌ͕ܾ·͍ͬͯΔ
    w ϝοηʔδϯά͸ม਺͕ଋറͨ͠Ϟϊͷҧ͍ͰσΟεύονઌ͕
    มΘΔ ͭ·ΓϙϦϞʔϑΟζϜͰ͢

    w ϓϩτίϧ͕ઌʹܾ·͍ͬͯͯɺ࣮ମ ଟଶ
    ͸ޙͰ͍ͭͯ͘Δײ
    ͡ ͭ·Γґଘੑ൓సݪଇͰ͢

    w 4NBMMUBMLͷॏཁίϯηϓτʮ஗Ԇଋറ -BUF#JOEJOH
    ʯʹ
    Αͬͯɺෳࡶ͞ͷ࣮ମΑΓ΋લʹϢʔβʔͷҙਤΛ࣋ͬͯ͘Δ
    ಈతͳ஗Ԇଋറ
    ͳͥʮϝοηʔδϯάʯͳͷ͔

    View Slide

  17. w ஗Ԇଋറͷಈతͳ࿈࠯ˠখ͞ͳϞϊ͕ϝοηʔδͰܨ͕ͬͯෳ
    ࡶͳγεςϜʹ
    w ͢΂ͯͷϦϯΫΛ஌͍ͬͯΔઐ໳ՈͰͳͯ͘΋ɺؔ܎͋Δ෦෼ͩ
    ͚ཧղͯ͠ɺ͍͔ͭ͘ͷΦϒδΣΫτʹϝοηʔδΛૹΕ͹ࡁΉ
    w ͜ͷʮΘ͔Βͳͯ͘΋࢖͑Δʯ͕ΤϯυϢʔβʔίϯϐϡʔςΟ
    ϯάʹ΋ͭͳ͕ΔͩΖ͏ έΠ͸ిࢉػΛύιίϯʹ͔ͨͬͨ͠

    w ͜Ε͕4NBMMUBML εϞʔϧͳτʔΫ
    ͷࣔͨ͠ʮΦϒδΣΫτࢦ
    ޲ϓϩάϥϛϯάʯ
    ϓϩάϥϛϯάΛΑΓॸຽతʹ͢Δͭ΋Γͩͬͨ
    ʮຽʯͷͨΊͷΦϒδΣΫτࢦ޲

    View Slide

  18. શͯͷਓ͕޾ͤʹ
    ͳΔͱ͍͍ͳ͋

    View Slide

  19. தੈ

    View Slide

  20. ΋͏ͻͱͭͷΦϒδΣΫτࢦ޲࢙
    $XJUI$MBTTFTͷ஀ੜ
    4JNVMB
    4NBMMUBML
    $1-
    #$1-
    $ݴޠʙ ,3

    $XJUI$MBTTFT

    ϓϩάϥϛϯάݴޠ$

    ΦϒδΣΫτࢦ޲
    Ξηϯϒϥ

    View Slide

  21. ͦΕ͸·ͩ001ͱݺ͹Εͳ͔ͬͨ
    ϝϞϦΛ௚઀ҙࣝ͢Δ$ͷه๏Λͪΐͬͱվળͨ͠
    4JNVMB
    $ݴޠʙ ,3

    $XJUI$MBTTFT
    struct Data *pData =


    malloc(sizeof(struct Data));


    pData->m_var = 123;


    process_data(pData, 456);


    free(pData);
    Data *pData = new Data(123);


    pData->process(456);


    delete pData;
    ͍ͭͰʹσʔλܕઐ༻ͷؔ਺Λ
    จ๏Ͱද໌Ͱ͖ΔΑ͏ʹͨ͠Α

    View Slide

  22. w ίϯϐϡʔλʔྔ࢈ͷωοΫ͸ϝϞϦෆ଍ͩͬͨ

    ,#͋Ε͹ըظతͳ͙Β͍

    w ঎༻ιϑτ͸ΞηϯϒϥͰ࠷దԽ͢Δͷ͕౰વ

    ݱ࣮ͷΤϯυϢʔβʔίϯϐϡʔςΟϯά؀ڥ͸#"4*$
    w #$1-͸$1-Λݩʹʮະདྷͷࢥ૝͸͓͖ͯ͞ɺ·ͣ͸ࠓ͋Δί
    ϯϐϡʔλʔͰಈ͘΋ͷΛʯͱ͍͏ݱ࣮ओ͔ٛΒੜ·Εͨ
    w ͜ͷจԽΛҾ͖ܧ͍ͰɺҠ২ੑͱػցޠΛཱ྆ͤͨ͞$ݴޠ
    ͸ɺ·͞ʹཧ૝తͳߴڃݴޠͩͬͨ
    ʙ೥୅ͷݱ࣮ͱ#$1-ͷࢥ૝

    View Slide

  23. w ೥ 4NBMMUBML͔Β೥ޙ
    ɺ$XJUI$MBTTFT͕࠷ॳ
    ͷ$ʹͳͬͨ
    w ͜ͷͱ͖ܧঝγεςϜʹԾ૝ؔ਺ςʔϒϧΛ౥ࡌͨ͠
    w جఈܕʹఆٛͨ͠Ծ૝ؔ਺͔Βɺ೿ੜܕͷϝϯόؔ਺ͷϙΠϯλ
    ʹࣗಈσΟεύον͞ΕΔ࢓૊Έ ͞Α͏ͳΒؔ਺ϙΠϯλ஍ࠈ

    w ͜ͷʮΠϯελϯε͕ৼΔ෣͍ଟଶੑΛ࣋ͬͨʯͷΛݟͯɺ$ϓ
    ϩάϥϚʔ͸ʮ෦෼తʹ4NBMMUBMLͷΞΠσΞΛ໛฿Ͱ͖Δ͔
    ΋ʯͱߟ͑ͨˠΦϒδΣΫτࢦ޲ϓϩάϥϛϯά΋Ͱ͖Δ
    Ծ૝ؔ਺ςʔϒϧͷ౥ࡌͰ001-Λࣗশ
    $XJUI$MBTTFTͷ໊শ͕$ʹ

    View Slide

  24. w $͸#$1-ͷࢠଙͳͷͰ࣮༻ੑશৼΓ
    w ࢖͑ͦ͏ͳ΋ͷΛԿͰ΋෦෼आ༻͢Δࢥ૝ˠʮΦϒδΣΫτࢦ
    ޲ϓϩάϥϛϯά΋ ͪΐͬͱ
    Ͱ͖Δʯʮଞʹ΋੝͍ͬͯ͘Ͱʯ
    w ಘΒΕͨผͷརศੑܧঝͱܕޓ׵ੑνΣοΫͷ༥߹

    4NBMMUBML͸શͯͷίʔυஅยΛΠϯλϥΫςΟϒʹධՁͰ͖ΔͷͰɺม਺ܕͰ
    ੍໿͠ͳ͍Φʔϧಈతํ਑Ͱ΋ෆศ͕ͳ͔ͬͨ

    w ʮ#PPMFBOͷαϒλΠϓͰͳ͍ͳΒUSVF΍GBMTFͱಉ͡Α͏ʹ
    ѻ͑ͳ͍͔ΒΤϥʔͩͶʯͱݴͬͯ͘ΕΔΞϨ
    ࣮༻ੑ஗Ԇଋറ ͳͲ

    View Slide

  25. 4NBMMUBML
    $ Ծ૝ؔ਺ςʔϒϧͰ͖ͨͧ

    ΦϒδΣΫτࢦ޲
    4JNVMB
    $ݴޠ
    $ $XJUI$MBTTFTͷ෦෼

    ٞ࿦ͷ༨஍͸͋Δ͚ͲଥڠͰ͖Δ
    ଥڠͰࡁ·ͳ͍001لݩઆ͕ීٴͨ͠
    ஗ԆଋറͩΑͶʂ
    ͚ͩͲ෦෼తͳͷ͸
    ΦϒδΣΫτࢦ޲ͱ
    ݴ͑Δͷ͔ͳ
    ࠓ೔͔Βࢲ͸
    001-Ͱ͢
    ΄ʔΜʜ
    ͜Ε͕ΦϒδΣΫτࢦ޲͔
    ଟଶੑΘ͔ΒΜ

    ·͋ݱ࣮͠ΐ͏͕ͳ͍΍
    Ϋϥε
    ϝϯόؔ਺
    ܧঝ

    View Slide

  26. w ʮม਺ͱؔ਺ΛΫϥεʹӅṭ͠·͢ɻ͜Ε͕ΧϓηϧԽͰ͢ʯ
    w ʮσʔλʹؔ͢ΔॲཧΛΫϥεʹॻ͖Ճ͍͖͑ͯ·͢ɻڽू౓͕
    ্͕Γ·͢ʯʜͳΘ͚ͳ͍΍Ζ͋΄͔
    w σʔλʹॲཧΛूΊΔͱɺσʔλܕͷґଘεύήςΟʹͳΔ
    w ΞϥϯɾέΠʮσʔλ͸ѱ͍ΞΠσΞɻԶ͕ݴͬͨͷ͸ɺݴ͑͹
    Ԡ͑ΔΦϒδΣΫτʹ5FMM͢Δ͜ͱ "TL͡Όͳ͍
    ʯ
    w Χϓηϧ͕Ӆṭ͍ͯ͠Δͷ͸ɺม਺ͷॲཧͰ͸ͳ͘ɺϝοηʔδ
    ϯάͰ࠶ؼతʹ޿͕ΔΦϒδΣΫτͷؔ܎Ͱ͢
    ΧϓηϧԽ
    001େޠղ

    View Slide

  27. w ʮܧঝ͸ ܕνΣοΫͷ͋Δ
    ΦϒδΣΫτࢦ޲ͷ伴Ͱ͢ʯˠʮͦͬ
    ͔ܧঝ͕ΦϒδΣΫτࢦ޲ͳΜͩͳʯ
    w ʮܧঝ͢ΔͱطଘΫϥεΛࠩ෼֦ுͰ͖Δͧʜͬͯɺ͏Θʔܧঝ
    εύήςΟͩʔʯʜͳΜͰͦ͏ͳΔ͔ͳ
    w ͔ͨ͠ʹʮܧঝγεςϜͱαϒλΠϐϯάΛ༥߹ͤͨ͞ʯ$ܥ
    ͷΞΠσΞͰ͸ɺΫϥεͷJTBؔ܎͸ͱͯ΋ॏཁ
    w ͭ·Γݴޠ࢓༷ͷ࿩Ͱ͔͠ͳ͍͠ɺͦ΋ͦ΋֦ுͰ͸ͳ͘ܕͷ൚Խ
    w 001ʹҰൠԽ͢Δͱʮϓϩτίϧ *'
    ἧ͑Α͏ͶʯͰ͓ΘΓ
    ܧঝ
    001େޠղ

    View Slide

  28. w ʮ͜Μͳந৅Խ͕Ͱ͖ΔͳΜ͍ͯ͢͝ʯ
    w ʮ͜ΕͰݱ࣮ͷϞϊ֓೦ΛશͯදݱͰ͖ΔΜ͡Όͳ͍͔ɻΦϒδ
    ΣΫτࢦ޲͸ສೳ͔΋͠ΕΜͧʯʜ͍΍ɺͰ͖ΔΘ͚ͳ͍ͩΖ
    w ܗࣜݴޠ͸ແؔ܎ͳଆ໘Λ੾ΓࣺͯΔಓ۩
    w লུ͕ͦ͜ϞσϧͷσβΠϯɻͦΕͧΕͷ໰୊ʹ͸ɺͦΕͧΕద
    ͨ͠ݴޠ͕͋Δ
    w ͭ·ΓສೳϞσϦϯάݴޠͳΜͯͳ͍ɻ001͸͋͘·Ͱɺιϑ
    τ΢ΣΞΛݸਓͷೝࣝྗͰѻ͏ʹ͸Ͳ͏͢Δ͔ɺͱ͍͏ΞΠσΞ
    ଟଶੑͱ͔ந৅Խͱ͔
    001େޠղ

    View Slide

  29. ͳͥޡղͷํ͕ओྲྀ೿ʹ
    தੈϤʔϩούफڭࣾձͱಉ͡ߏ଄
    ਆֶऀ
    ڭձ
    ॸຽ
    ҆௚ʹ
    ڭ͑΍͍͢
    զʑʹ΋
    Θ͔Δ
    ೔ʑͷ฻Β͠
    ϝϞϦ؅ཧ

    Ͱਫ਼Ұഋͳʜ
    ݖྗ ٕज़γΣΞ
    ͕ཉ͍͠ͷͰʜ
    ݖҖԽ
    ஍ํͷ੟৬ऀ
    ಧ͔ͳ͍
    ޚ༻ฉ͖ͷ
    ํ͕༗ར
    ΑΓΠʔδʔͳ
    ͋Γ͕ͨΈΛ
    ߟ͑ͯ͘Ε
    ڭٛͷউखͳ
    ֦େղऍ΁ʜ
    ٯʹ༨ܭ΍΍ͯ͘͜͠ਏ͍
    001΋ఔ౓໰୊Ͱ͸͋ΔΑͶ

    །Ұਆγϯϓϧ

    View Slide

  30. ݖҖʹͱͬͯ౎߹ͷ͍͍ڭ͑
    ط੒؍೦ϕʔεແବʹ೉ղݖҖ৴ڼͷڧԽ
    தੈʹ৴͡ΒΕ͍ͯͨ
    ڭձ͓๽෇͖ͷӉ஦ͷ
    ߏ଄͸͜͏Ͱͨ͠

    View Slide

  31. w 00%ͩͱ͔00"ͩͱ͔ʜ $ܥͷํΛ౔୆ʹ

    w ౷ҰϞσϦϯάݴޠͩͱ͔ʜ ສೳϞσϦϯάݴޠ͡Όͳ͍ͷʹ

    w ෦෼తʹ͸ͦ͏͚ͩͲ
    େ෦෼͕ػೳ෼ղͳ΋ͷʹɺΩϥΩϥ͠
    ͨʮΦϒδΣΫτࢦ޲ͷףʯΛ͔Ϳͤͨ
    w ʮΦϒδΣΫτࢦ޲ਆ࿩ ΦϒδΣΫτࢦ޲Ͱ͸ͳ͍
    ʯͷ੒ཱ
    w ΞϥϯɾέΠʮ·͔͞$ͷ͜ͱΛΦϒδΣΫτࢦ޲ͱݺͿΑ
    ͏ʹͳΔͱ͸ࢥΘͳ͔ͬͨʯ
    ৴ڼ͸ʮຽʯΛࢧ഑͢Δଘࡏʹ

    View Slide

  32. w $ͷ4JNVMBͱಉ͡෦෼͸ΦϒδΣΫτࢦ޲Ͱ͸͋Γ·ͤΜ
    w 4JNVMBͷΫϥε͸ʮΦϒδΣΫτࢦ޲ʯͱ͍͏ݴ༿ΑΓલɺ$
    ʹ࣋ͪࠐ·ΕΔͣͬͱલ͔Β͋Δ͔ΒͰ͢
    w ·͋ɺ౰࣌ൃୡͨ͠ৼΔ෣͍σʔλܕͷݚڀ੒Ռ͸͋Γ·͢

    Ϧείϑઌੜ͸ਪ͠

    w ͕ɺͦΕΛจ๏্ʮΦϒδΣΫτʯͱݺͿ͜ͱͱɺʮΦϒδΣΫ
    τࢦ޲ϓϩάϥϛϯάʯͱ͸ɺ΋ͱ΋ͱ͸ແؔ܎ͳͷͰ͢ ͜͜
    ෬ઢͰ͢

    ͍ͭ͜͠Α͏Ͱ͕͢

    View Slide

  33. ۙੈɾۙ୅

    View Slide

  34. w ੈلΧτϦοΫڭձ͕ʮ᩿༒ঢ়ʯ ໔ࡑූ
    Λൃߦͨ͠

    ͓ۚΛ෷͑͹ṖͷϝΧχζϜͰࡑ͕ঈΘΕΔγεςϜ
    w ϧλʔ͕͓͔͍͠ͱ൷൑ͨ͠ ͕ɺ͙͢ʹ͸޿·Βͳ͔ͬͨ

    w άʔςϯϕϧΫͷ׆൛ҹ࡮ͱ͍͏৘ใγϯΪϡϥϦςΟ͕͋ͬͨ
    w ϥςϯޠͰॻ͔Ε࡭਺΋ݶΒΕ͍ͯͨ੟ॻ͕ɺ֤ࠃͷ฼ࠃޠʹ຋
    ༁͞Εɺ஌తΤϦʔτ͚ͩͰͳ͘ɺॸຽ΋ಡΊΔຊʹͳͬͨ
    w ϧλʔʹࢍ੒ͩͱࣗ෼Ͱߟ͑ΒΕΔΑ͏ʹͳͬͨਓͨͪ͸ɺΧτ
    ϦοΫڭձͱܾผͯ͠ϓϩςελϯτʹͳͬͨ
    फڭվֵͷ͓͜Γ

    View Slide

  35. w ೥ʹొ৔ͨ͠+BWB͕ҰେϒʔϜʹͳͬͨ
    w ਆൿͷϕϯμʔٕज़+&&΍%$0.ͳͲ͕ొ৔
    w ڊେԽͨ͠։ൃମ੍ʹ൓ൃ͢Δ੠্͕͕Γ࢝Ίͨ

    ॳ৺ऀͷϒϥϯυ৴ڼʹରͯ͠ɺϕςϥϯ੎͕Կ౓΋஧ࠂ
    w Πϯλʔωοτ ׆൛ҹ࡮ʹ͙࣍৘ใγϯΪϡϥϦςΟ
    Ͱ୭΋
    ͕ٞ࿦ʹࢀՃͰ͖Δࣾձʹͳ͍ͬͯͨ
    w ݖҖओٛͷّࣜతͳ։ൃʹٙ໰Λ࣋ͬͨਓͨͪ͸ɺ͍ͭʹΞδϟ
    Πϧ։ൃએݴΛද໌ͨ͠
    ͜ͷۀքͷ৔߹

    View Slide

  36. w $Λ΋ͬͱγϯϓϧͳ Ϛγͳ
    001ͷϞσϧʹ͠Α͏
    w ϝϞϦ؅ཧΛΨϕʔδίϨΫγϣϯ ($
    ʹ͠Α͏

    4NBMMUBMLͲ͜Ζ͔એݴܕݴޠ͸ΈΜͳ΍ͬͯΔ

    w ͱ͸͍͑૝ఆ༻్͸Πϯλʔωοτ࣌୅ͷ૊ΈࠐΈػثͩ
    w όΠτ௕͕໌֬ͳϓϦϛςΟϒ஋͸֎ͤͳ͍

    શ෦ΦϒδΣΫτ͡Όͳ͍͚Ͳݱ࣮ଥڠ͸େࣄ

    w ΍͸ΓαʔυύʔςΟ͕Ծ૝ϚγϯΛ࡞Γ΍͘͢͠ͳ͍ͱ

    ˠΦϒδΣΫτʹཉ͔ͬͨ͠ͷ͸($ͷ࡞Γ΍͢͞
    ͳͥॳظͷ+BWBʹਓؾ͕ग़ͨͷ͔
    +BWBͦͷ΋ͷ͸ѱ͘ͳ͍

    View Slide

  37. w ͲͷϕϯμʔͷϋʔυͰ΋ಈ͘Ծ૝Ϛγϯɻ͜Ε͸Τϯλʔϓϥ
    Πζʹ΋޲͍͍ͯΔͧɻͳΜͨͬͯେاۀ޲͚͸͕͍͍ۚ
    w ͏Μɺ·͋෼ࢄγεςϜͷ௿ϨΠϠʔͱ͔ʹͳΒͶʜ
    w ͍΍·ͬͯɺ୭΋ʮϕλʔ$0#0-ʯͩͱ͸ݴͬͯͳ͍Α
    w ͍ͭͷؒʹ+BWBͷ001ػೳ͕ۀ຿ͷهड़ʹ޲͍ͯΔࣄʹͳͬ
    ͨͷ͞ɻΑΓʹΑͬͯ&OUFSQSJTF+BWB#FBOT &+#
    ͳΜͯʜ
    w Ξϯνςʔθݹ͖ྑ͖1MBJO0ME+BWB0CKFDU 10+0
    Α
    ͞Β͹੨य़ͷ೔ʑ
    ͋ͬͱ͍͏ؒʹ+BWB͸ʜ

    View Slide

  38. +BWBલޙͷͰ͖͝ͱ
    4NBMMUBML
    $ݴޠ
    +BWB
    $
    3VCZ
    (P'σβΠϯύλʔϯ +6OJU5%%
    46OJU
    40-*%

    View Slide

  39. w ӨڹΛड͚ͨͷ͸$Ͱ͸ͳ͘1FSMͱ4NBMMUBML

    .BU[͸ʮ$ͷQSPUFDUFEΛೖΕͨͷ͸ؒҧ͍ͩͬͨʯͱݴͬͯΔ͙Β͍

    w ϙʔϧɾάϨΞϜ͕-JTQͷ࣍ʹ޷͖ͱ঺հ͢Δ·Ͱɺ୭΋
    4NBMMUBML༝དྷͷ001Λࢥ͍ग़ͯ͘͠Εͳ͔ͬͨ
    w େ͛͞ͳํ๏࿦ͷਆൿओٛWT3VCZPO3BJMTͱ͍͏ʮΤϯυ
    ϢʔβʔίϯϐϡʔςΟϯάʯͷ஀ੜ
    w ͜ͷεϥΠυͷ࡞ऀ͸Ͳ͏΍Β3BJMTΛɺίʔυͰόʔδϣϯ؅
    ཧͰ͖Δ044ͷ.4"DDFTTͩͱࢥ͍ͬͯΔΒ͍͠

    ಉ࣌ʹੜ·Εͨ΋͏ͻͱͭͷ001-
    3VCZ

    View Slide

  40. w ํ๏࿦ΛޠΔݖҖΛΑͦʹɺ໧ͬͯ༏Εͨ(6*Λ࡞Δਓ͸
    ೥୅͔Β001ͱ্ख͘෇͖߹͖ͬͯͨ
    w ΤϦοΫɾΨϯϚʮ΍ͬͺΓ4NBMMUBML͔Β஌ͬͯΔਓ͸(6*
    Λ্ख͘࡞Δͳ͋ɻ$͔Βͷ։ൃऀʹ΋ਅࣅ͍ͤͨ͞ͳ͋ʯ
    w ݸਓతͳ࿩
    ͪΐͬͱ࣌୅͸લޙ͢Δ͚Ͳɺాதͻͯ͞Δݸਓ͕ΦϒδΣΫτࢦ޲ͷ
    ΞΠσΞʹ׬શʹෲམͪΛಘͨͷ͸ɺϓϩάϥϛϯάதͰ͸ͳ͘ɺ࣮͸%4UVEJP
    ."9Λ࢖͍ͬͯͨͱ͖Ͱͨ͠ɻ(6*ͷਓ͕࡞ͬͨ΋ͷ͕ϦΞϧΛڭ͑ͯ͘Εͨ
    w ʹͯ͠͸ͪΐͬͱ೉ղʹॻ͖͗͢
    +BWBΑΓগ͠લ͢Ͱʹ
    (P'σβΠϯύλʔϯ

    View Slide

  41. w έϯτɾϕοΫ͸4NBMMUBML༻ͷ୯ମςετπʔϧ46OJUΛ։
    ൃ ೥ൃද
    ૄ݁߹ͳΦϒδΣΫτݸʑͷ੹຿Λຬͨͤ
    w ΤϦοΫɾΨϯϚͱͱ΋ʹ+BWBʹҠ২ ೥ʹૣ͘΋

    w ϕοΫ͸ςετۦಈ։ൃ 5%%
    ͷຊΛࣥච
    w 5%%͸ΤΫετϦʔϜϓϩάϥϛϯά 91ݩ૆ΞδϟΠϧ
    ͷ
    ϓϥΫςΟεʹ
    w ʮܗࣜతख๏ΑΓ΋ݸʑͷਓ͕େࣄʯ ਓݖએݴΈ͍ͨͳ͜ͱ

    ࣮͸஗Ԇଋറͷ΄͏ʹ༝དྷ͢Δ
    46JOUˠ5%%ɾ91

    View Slide

  42. ܾఆଧ͸͍ͭ΋ϋʔυ΢ΣΞ
    ϜʔΞͷ๏ଇ ˠ
    ೥ʹ͸΋͏୭΋
    ٌ͑Λ৺഑͠ͳͯ͘Α͘ͳͬͨ
    #$1-ࢥ૝ͷඞવੑ͕ফ໓
    ෋߽తϓϩάϥϛϯάສࡀ

    View Slide

  43. w σβΠϯύλʔϯ͢ΒݖҖԽͩͨ͠͠ ೉ղͳͷͰͦ͢͝͏

    w 5%%΍ΞδϟΠϧ͑͞΋໔ࡑූͱͯ͠৅௃Խ

    Ғ͍ਓ͕ݴͬͨํ๏Λ΍͍ͬͯΔࣗ෼͸ਖ਼͍͠Μͩ

    w ۙ୅ԽΛ৅௃͢Δݴ༿ʮਆ͸ࢮΜͩʯŠχʔνΣ

    ҙՊֶจ໌ʹΑΓڭձͷݖҖͷ৅௃͸Φϫίϯ

    w 3VCZPO3BJMT࡞ऀ%))ʮ5%%JTEFBEʯ

    w ΑΓʹΑͬͯɺ4NBMMUBML௚ܥͷݴޠΛ࢖͏ਓʹɺ4NBMMUBMLจ
    Խੜ·Εͷ5%%͕ʜͦΕ͙Β͍ݖҖ৴ڼ͸ඌΛҾ͘
    ϓϩςελϯτ΋·ͨಉ༷ʹݖҖʹऑ͔ͬͨ
    $ͷ࠯͸ͳ͍ˠ͔͠͠ݖҖ৴ڼ͸ʜ

    View Slide

  44. w ϩόʔτɾ$ɾϚʔνϯʮΞδϟΠϧιϑτ΢ΣΞ։ൃͷԞٛʯ
    Ͱ༗໊ʹ

    w ͜͜೥΄Ͳʮ001ͷݪଇʯͱ͞Ε͍ͯΔɺΑΓ޿͘ιϑτ΢
    ΣΞઃܭʹϑΥʔΧεͨ͠ίπ
    w ͭͷݪଇͷ͏͕ͪͭ஗ԆଋറͰઆ໌Ͱ͖Δ
    w ࢒Γͭ͸ʮϦείϑͷஔ׵ݪଇʯ

    ͳΜͱৼΔ෣͍σʔλܕͷઌੜͷ໊લ͕෇͍͍ͯΔͷͰ͢
    w ͍Ζ͍Ζ͚͋ͬͨͲɺ྆ํͷ͍͍͜ͱΛݫબͯ͠࢒ͦ͏
    ਖ਼࢙ճؼͱ৴ڼੈքͷରཱͰ͸ͳ͘࿨ղΛ͍ࣔͯͨ͠
    Ͱ΋40-*%͸͢Ͱʹʜ

    View Slide

  45. w ؔ਺ܕݴޠ)BTLFMMͷӨڹΛड͚ͨ+7.ݴޠ
    w +BWBଆͱࢥΘΕ͕͚ͪͩͲɺ001ͷίϯηϓτ͕࣮͸͍ͩͿ
    4NBMMUBMLʹ༝དྷ͢Δ 3VCZʹࣅ͍ͯΔ

    w ࣌୅͸4DBMBͷӨڹΛड͚ͨɺ $͕ϗϯτ͸ͦ͏ͩͬͨΜ͚ͩͲ


    ݂ࠞݴޠͷ࣌୅ʹಥೖͨ͠ˠ,PUMJO 5ZQF4DSJQU 3VTUʜ
    w 4DBMBҎޙʮΦϒδΣΫτࢦ޲ʯͷ؃൘Λܝ͛ͨݴޠ͸ొ৔͍ͯ͠·
    ͤΜɻݴޠ͸ਖ਼࢙ʹ໭͓ͯ͠͠·͍ɻ͋ͱ͸จԽతͳߦ͍ͷ໾໨ͩ
    w ΤϦοΫɾΤϰΝϯεʮ͍·Ͳ͖ͷϦΞΫςΟϒͳ࡞Γʹ͸ࢀরಁա
    ੑ͕໰ΘΕΔ͔Βͳɻ೥ͷ%%%ͷٕ๏ͱ͔΋͏ݹ͍Ͱʯ

    ΦϒδΣΫτࢦ޲ݴޠ͸ଧͪࢭΊʹͳ͍ͬͯͨ
    4DBMBϙετ4DBMBݴޠ

    View Slide

  46. w Ϋϥε͔ΒΠϯελϯεͦΕ͸4JNVMBͳͷͰ00Ҏલ
    w ΦϒδΣΫτ͔ؔ਺͔Ϋϩʔδϟ͸࠷ॳ͔Β͋Δ
    w Ϋϥε͸σʔλܕ͔4NBMMUBMLʹ΋3VCZʹ΋ܕ͸ͳ͍
    w αϒλΠϓܧঝ͔ܧঝ͸$ܥͷબ୒ʹ͗͢ͳ͍
    w ଟ૬ੑͷ͜ͱ͔ϝοηʔδϯάҎ֎ʹɺܕΫϥεɺδΣωϦΫ
    εͳΜ͔΋͋ΔΑͶ
    w ࢒Δͷ͸஗Ԇଋറ΁ͷظ଴͚ͩখ͞ͳϞϊͷ࿈ܞͰɺݸਓ͕Α
    Γେ͖ͳιϑτ΢ΣΞΛѻ͑ΔΑ͏ʹ͍ͨ͠
    ෆՄೳͰ͢ˠ00͸ଘࡏ͢Δ͚ͲܗࣜͰ͸ͳ͍

    શ001-ΛܗࣜతʹఆٛͰ͖Δ͔

    View Slide

  47. ݱ୅

    View Slide

  48. ΧτϦοΫͱϓϩςελϯτͷͲ͕ͬͪળ
    ͰͲ͕ͬͪѱ͔ͳΜͯɺ΋͏Ͳ͏Ͱ΋͍͍
    Ͳ͔͔ͬͪҰํతʹѱͳΘ͚Ͱ͸ͳ͍

    View Slide

  49. w ωΠςΟϒɾΞϝϦΧϯʹ޲͔ͬͯʮΩϦετڭΛ஌Βͳ͍ͱ͸
    ͳΜͱ۪͔ͳͷ͔ʯͬͯݴͬͪΌ͏ࣗ෼ͷ۪͔͕͞Θ͔Βͳ͍
    w ਖ਼͍͠ཧ࿦͔ͩΒվफͤ͞Δͷ͸ળߦͩͱݴͬͯɺߟ͑ํͷҧ͏
    ਓʹฏؾͰ๫ྗΛ;Δ͏
    w ಉ͡ਆΛਸഈ͢Δਓಉ࢜ͳͷʹɺߟ͑ํͷҧ͍Ͱ೿ൊΛ࡞ͬͯफ
    ڭઓ૪Λ࢝Ίͯ͠·͏
    ਆ͕ࢮ͵લͷա͓ͪ͞Β͍

    View Slide

  50. ʜ͋Ε ͍·ͩʹݱ୅ਓ
    4/4Ͱ͜Ε΍ͬͯΔ࣌ͳ͍

    View Slide

  51. ݟͯΔਓ͋ʔ͸͍͸͍
    ·ͨफڭͳ

    View Slide

  52. w ఻౷తͳफڭ͸ͲΕ΋ɺՊֶͷԼʹҐஔ͢ΔʮจԽʯʹఆணͨ͠
    w ͕ɺफڭΧϧτ͸ ѱҙ͸ͳͯ͘΋
    ՊֶΑΓ΋फڭΛ্ͷՁ஋؍ʹ

    ˠதੈͷڭձͱಉ͡ݖҖਸഈߏ଄Λ࡞Δํʹ޲͔͍ɺ໭Εͳ͘ͳΔ
    w ݹయతͳਆֶ΋஌Βͳ͍ڭ૆͕ɺਆ༷Λݟ͖ͯͨΑ͏ʹݴ͏
    w ඇՊֶతͳ΋ͷ΄ͲՊֶͩͱݴ͍ग़ͨ͠Γ
    w ચ೴͠΍͢͞Λ෢ثʹɺਫ໘ԼͰଟ਺೿ͱ༊ண͍ͯͨ͠Γ΋͢Δ
    w ਅ໘໨ͳਓ΄Ͳίϩͬͱ͍ͬͯ͠·͏
    Պֶ৴ڼ࣌୅ˠफڭ্࢙ओٛ͸Χϧτ
    फڭతωΨςΟϒΠϝʔδ

    View Slide

  53. w ʮΦϒδΣΫτࢦ޲ͱ͸ʯʹ΢έͷ͍͍ಠࣗఆٛΛ༩͑Δ

    ͍͍ͩͨ$XJUI$MBTTFTͷ͋ͨΓͰ

    w ྺ্࢙ͷཱ೿ͳਓ͕ܝ͛ͨݴ༿ ݖҖ
    Λද໘తʹഈआͯ͘͠Δ
    w ී௨ͷ͜ͱΛ͋Γ͕ͨͦ͏ʹݴ͍ɺ೉͍͠ݱ࣮͸ݟ͑ͳ͍;ΓΛ͢
    ΔɻΑΓ೉͍͠ຊ୊ʹೖΔલͷʮ͜ͷΑ͏ʹ͋Γ͍ͨʯ͚ͩΛਸΊ
    Α͏ͱ͢Δ
    w ΑΓݡ͍ਓͱͷର࿩ΛγϟοτΞ΢τɻ্૚΄Ͳɺࣗ෼͕ڭΘΔଆ
    ʹͳͬͯཧղΛਂΊ͍ͨͱ͍͏ཉٻ͕ݟΒΕͳ͍
    w Լ૚Ͱ΋ɺ಺༰Ͱ͸ͳ͘ʮ୭͕ݴ͔ͬͨ ݖҖ
    ʯ͔͠ݟͳ͍
    ͨͱ͑͹ओޠΛΦϒδΣΫτࢦ޲ʹ͢Δͱʜ
    ݱ୅Χϧτ૊৫ͷಛ௃

    View Slide

  54. w ਓ͸ສ೥΋લ͔ΒࢮऀΛຒ૴͖ͯͨ͠
    w ͍͚ͳ͍ͷ͸ΧϧτԽͰ͋ͬͯɺݸਓ͕ૉ๿ʹ࣋ͭ৴ڼ৺͸0,
    w ʮྑ͍ߦ͍͸ਆ༷͕ݟ͍ͯΔʯײ֮͸ࠓ΋ྙཧͱີ઀ͳؔ܎
    w ͔͍͍ͬ͜ϓϩάϥϛϯάʹಌΕΔؾ࣋ͪ͸୭ʹͰ΋͋Γɺࣗൃ
    తͳಌΕ΍޲্৺͸ɺ͍ͨ΁Μૉ੖Β͍͜͠ͱͰ͢
    w ͦͷޙདྷΔʮࡑʯ ͙͢Ͱ͖ͳ͍যΓ
    ͷײ֮ʹ͚ͭࠐΜͰਓΛڴ
    ͯ͘͠ΔɺதੈͷफڭͷΑ͏ͳ΋ͷʹ஫ҙ͠·͠ΐ͏
    Ͱ΋৴ڼ͸΋͸΍ਓྨͷຊೳ

    View Slide

  55. தੈͷफڭݱ୅Ͱ͸
    ΋͸΍จԽʹ͗͢ͳ͍

    View Slide

  56. ͪΐ͏ͥͭຊষઅ
    ΦϒδΣΫτࢦ޲ͷ
    ఆٛ͸ͳ͍
    ݱ୅Ͱ͸ఆٛͱݴ͑͹ՊֶʹΑΔఆٛͰ͢ɻ
    फڭ࢙ͱ͔͠આ໌Ͱ͖ͳ͍΋ͷΛఆٛͰ͖ΔͰ͠ΐ͏͔ɻ
    ໌֬ʹఆٛͰ͖Δࣄ͸ʮΞϥϯɾέΠͷΞΠσΞͷݺͼ໊ʯ͚ͩͰ͢ɻ
    Ҏ্ɺ͜ͷߦʹऩ·͍ͬͯͨΞϯυΩϡϝϯςου৘ใͰͨ͠ɻ

    View Slide

  57. ʜͱ·͋ɺ͜Μͳ
    ΦΧϧτ࿩͸͓͍ͱ͍ͯ

    View Slide

  58. Έͳ͞Μདྷि͔Β͙͢Ͱ͖Δ
    ʮ׆༻ʯΛ΍͍͖ͬͯ·͠ΐ͏
    ΦϒδΣΫτࢦ޲͸ສೳͳۜͷ஄Ͱ͸ͳ͍͚Ͳɺ
    ϐϯϙΠϯτʹଧͪࠐΉͱҖྗͷ͋Δਅ᭦ͷ஄ؙʹͳΓ·͢

    View Slide