Slide 1

Slide 1 text

ύʔϑΣΫτ1)1ͷεεϝ :VNJIJLJ  8FCº1)15FDI$BGF݄ˏ3",64

Slide 2

Slide 2 text

ࣗݾ঺հ :VNJIJLJʢΏΈͻ͖ʣ 1)1FSͰ͢ υϥΰϯΫΤετ΢ΥʔΫͷ ΍Γ͗͢Ͱ଍Λ௧Ί·ͨ͠ ٷಓՈٷҾ͖ɹ͕༝དྷͰ͢

Slide 3

Slide 3 text

ύʔϑΣΫτ1)1͸͍͍ͧ

Slide 4

Slide 4 text

ηΫγʔͳ1)1FSʹ ͳΔͨΊʹ͸ඞಡͷҰ࡭ ύʔϑΣΫτ

Slide 5

Slide 5 text

ύʔϑΣΫτ1)1ͱ͸ ࡭Ͱݴޠ࢓༷͔Β࠷৽ͷٕज़·ͰΛ໢ཏͨ͠಺༰ɻ ໢ཏతʹղઆ͞Ε͍ͯΔ͚ͩͰͳ͘ɼ֤ٕज़ʹؔͯ͠͸جຊ͔Β͔ͬ͠Γղઆ͠ɼ ϑϨʔϜϫʔΫͳͲΛར༻ͨ͠8FCΞϓϦέʔγϣϯ։ൃͷղઆͳͲ͸ɼ ಺෦ॲཧ͕ཪͰԿΛ͍ͯ͠Δͷ͔Λ۷ΓԼ͛ͯղઆͯ͋͠ΔͨΊɼ 1)1Λମܥతʹֶͼ͍ͨํ͸΋ͪΖΜɼ ΑΓਂ͍஌ࣝΛಘ͍ͨதʙ্ڃऀʹ΋͓קΊͷҰ࡭Ͱ͋Δɻ IUUQTHJIZPKQCPPL͜ͷຊͷ֓ཁΑΓ

Slide 6

Slide 6 text

ϑϨʔϜϫʔΫΛ࡞ͬͯ 8FCΞϓϦέʔγϣϯΛ ։ൃ͠·͢

Slide 7

Slide 7 text

࣮ࡍʹֶशͯ͠Έͯ

Slide 8

Slide 8 text

#FGPSF ͦ΋ͦ΋ΦϒδΣΫτࢦ޲ͬͯԿʁɹඒຯ͍͠ͷʁ UIJT QVCMJD JOUFSGBDF TFMG ʜ֮͑Δ୯ޠଟ͘ͳ͍ʁ ϑϨʔϜϫʔΫ΋தͰԿͯ͠ΔΜ͔ ਖ਼௚Θ͔Βͳ͍ɾɾɾ

Slide 9

Slide 9 text

"GUFS ΦϒδΣΫτࢦ޲ͱ ϑϨʔϜϫʔΫͷ࢓૊Έ ׬શʹཧղͨ͠

Slide 10

Slide 10 text

࣮ࡍʹϑϨʔϜϫʔΫΛར༻ͯ͠ ࡞੒͢Δ8FCΞϓϦέʔγϣϯ͸ ͜Μͳײ͡Ͱ͢ʢࠓ͔Βө͠·͢ʣ

Slide 11

Slide 11 text

ϑϨʔϜϫʔΫʹ͍ͭͯ গ͠ղઆΛߦ͍͖ͬͯ·͢

Slide 12

Slide 12 text

ύʔϑΣΫτ̥̝̥Ͱ࡞Δ ϑϨʔϜϫʔΫʹ͍ͭͯ

Slide 13

Slide 13 text

ϑϨʔϜϫʔΫͷཁ݅ • MVCϞσϧʹΑΔ໾ׂͷ෼཭ • σʔλϕʔεͷ઀ଓ؅ཧ • ϩάΠϯঢ়ଶͷ؅ཧ • URLͱ෺ཧతͳσΟϨΫτϦߏ଄ͱΛ੾Γ཭͢ϧʔςΟϯάػೳ • CSRFରࡦ

Slide 14

Slide 14 text

ϑϨʔϜϫʔΫͷ ߏ଄ɾॲཧͷྲྀΕ

Slide 15

Slide 15 text

3FRVFTU (&5΍1045 ύϥϝʔλɺ63-౳ ͷ؅ཧ "QQMJDBUJPO 3PVUFS 63-Λड͚औΓ ݺͼग़͢ ίϯτϩʔϥΛࢦఆ $POUSPMMFS Ϟσϧ΍Ϗϡʔͷ ੍ޚΛߦ͏ ΞΫγϣϯΛఆٛ 3FTQPOTF ϦΫΤετʹର͠ ࠷ऴతʹϢʔβ΁ ฦ͢৘ใΛ؅ཧ %C.BOBHFS σʔλϕʔε΁ͷ઀ଓ ৘ใ΍%C3FQPTJUPSZ ͷ؅ཧ %C3FQPTJUPSZ ΞΫηεΛ൐͏ॲཧΛ ؅ཧɻϞσϧʹ૬౰ 4FTTJPO ηογϣϯ Λ؅ཧ͢Δ 7JFX දࣔΛ੍ޚ͢Δɻ ϑΝΠϧͷಡΈࠐΈ΍ ड͚౉͠Λߦ͏ ύʔϑΣΫτ1)1 ϖʔδΑΓ ͜ͷҰ࿈ͷྲྀΕΛ ੍ޚ͢ΔΫϥε ࠷ॳ͸͔͜͜Βʂ ࠷ޙʹ৘ใΛग़ྗʂ

Slide 16

Slide 16 text

͜͏͍͏಺෦తͳ ॲཧ͕͋Δͷ͔ͱ ษڧʹͳͬͨ͜ͱ

Slide 17

Slide 17 text

৭ʑ͋Γ·͢

Slide 18

Slide 18 text

ྫ͑͹

Slide 19

Slide 19 text

ΫϥεͱΦʔτϩʔυ

Slide 20

Slide 20 text

ΫϥεͱΦʔτϩʔυ ΦʔτϩʔυΛઃఆ͢Δ͜ͱͰΫϥεΛݺͼग़ͨ͠ࡍʹ ͦͷΫϥε͕PHP্ʹಡΈࠐ·Ε͍ͯͳ͍৔߹ɺ ࣗಈతʹϑΝΠϧͷಡΈࠐΈΛߦ͏͜ͱ͕Ͱ͖ΔΑ͏ʹͳΔɻ ຖճಡΈࠐΈॲཧΛॻ͔ͳͯ͘ྑ͍

Slide 21

Slide 21 text

Ͳ͏΍͍ͬͯΔͷʁ

Slide 22

Slide 22 text

ClassLoader.phpͱ bootstrap.php

Slide 23

Slide 23 text

ClassLoader.php

Slide 24

Slide 24 text

ClassLoader.php spl_autoload_register()ϝιουͰ ઃఆͨ͠ίʔϧόοΫؔ਺ΛΦʔτϩʔυ࣌ʹݺͼग़ͤΔ

Slide 25

Slide 25 text

ClassLoader.php σΟϨΫτϦͷొ࿥Λߦ͏

Slide 26

Slide 26 text

ClassLoader.php Φʔτϩʔυ࣌ʹPHP͔Βࣗಈతʹݺͼग़͞Ε ΫϥεϑΝΠϧͷಡΈࠐΈΛߦ͏

Slide 27

Slide 27 text

ClassLoader.php $dirsϓϩύςΟʹઃఆ͞ΕͨσΟϨΫτϦ͔Β ʮΫϥε໊.phpʯΛ୳͠ݟ͔ͭͬͨ৔߹ʹrequireͰಡΈ͜Ή

Slide 28

Slide 28 text

bootstrap.php ClassLoaderΛੜ੒͠ɺcoreɺmodelσΟϨΫτϦΛ Φʔτϩʔυͷର৅σΟϨΫτϦʹઃఆ͠ɺ register()ϝιουͰΦʔτϩʔυʹొ࿥

Slide 29

Slide 29 text

bootstrap.php ͦͯ͠ɺbootstrap.phpΛಡΈࠐΉͱ Φʔτϩʔυ͕ઃఆ͞Ε·͢

Slide 30

Slide 30 text

͜ͷΑ͏ͳॲཧͰ ΦʔτϩʔυΛ࣮૷ ͍ͯ͠·ͨ͠ ศརͰ͢Ͷ

Slide 31

Slide 31 text

͜͏͍͏಺෦తͳ ॲཧ͕͋Δͷ͔ͱ ษڧʹͳͬͨ͜ͱ Part2

Slide 32

Slide 32 text

࣌ؒͷ౎߹্ࡉ͔͘ ࿩ͤͦ͏ʹ͋Γ·ͤΜʜ

Slide 33

Slide 33 text

গ͠ૣޱͰ ͱͯ΋ͬ͘͟Γͱ

Slide 34

Slide 34 text

ApplicationΫϥεͷ࣮૷ ίϯτϩʔϥͷݺͼग़͠ ϩάΠϯ੍ޚͳͲ

Slide 35

Slide 35 text

ଟ਺ͷ಺෦తͳॲཧΛ هड़͠ɺಈ͖Λ஌Δ ͜ͱ͕Ͱ͖·͢

Slide 36

Slide 36 text

ࠓ೔࿩ͨ͠಺༰͸ ύʔϑΣΫτPHPͷ ΄ΜͷҰ෦͚ͩͰ͢

Slide 37

Slide 37 text

ͥͻҰ౓ ύʔϑΣΫτPHPΛ ಡΜͰΈ͍ͯͩ͘͞

Slide 38

Slide 38 text

FIN. ͝੩ௌ͋Γ͕ͱ͏͍͟͝·ͨ͠