Slide 1

Slide 1 text

momochan ʹ΋෼͔ΔPSRߨ࠲ 2021.04.08 ucan-lab in גࣜձࣾϛϥΠτσβΠϯ

Slide 2

Slide 2 text

No content

Slide 3

Slide 3 text

͓͠ͳ͕͖ • PSRͱ͸ • PHP-FIGͱ͸ • PSRͷࡦఆϓϩηε • PSRҰཡ • PSRΧςΰϦ • PSRൈਮ঺հ

Slide 4

Slide 4 text

PSRͱ͸

Slide 5

Slide 5 text

PSRͱ͸ • https://www.php- fi g.org/psr • PHP Standards Recommendations • PHPඪ४ίʔσΟϯάקࠂ • ४ڌ(ڧ੍Ͱ͸ͳ͍)

Slide 6

Slide 6 text

PHP-FIGͱ͸

Slide 7

Slide 7 text

PHP-FIGͱ͸ • https://www.php- fi g.org/personnel • PSRͷ࡞੒Λߦ͍ͬͯΔ • PHPͷϑϨʔϜϫʔΫ΍πʔϧͳͲͷϓϩδΣΫτ։ൃ ऀʹΑͬͯߏ੒͞Ε͍ͯΔ૊৫ • CakePHP, Composer, Magento, PEAR, Phalcon, Slim… • SymfonyͱLaravel͸ҙݟ͕߹Θͳ͘ͳͬͯ཭୤

Slide 8

Slide 8 text

ࡦఆϓϩηε

Slide 9

Slide 9 text

ࡦఆϓϩηε • Pre-Draft (ఏҊ) • Draft (૲Ҋ) • Review (ධՁ) • Accepted (ঝೝ) • Deprecated (ඇਪ঑) • Abandoned (์غ)

Slide 10

Slide 10 text

PSRҰཡ

Slide 11

Slide 11 text

PSRҰཡ Accepted (ঝೝ) • PSR-1 Basic Coding StandardʢجຊతͳίʔσΟϯάඪ४ʣ • PSR-3 Logger InterfaceʢϩΨʔΠϯλϑΣʔεʣ • PSR-4 AutoloaderʢΦʔτϩʔμʔʣ • PSR-6 Caching InterfaceʢΩϟογϯάΠϯλʔϑΣΠεʣ • PSR-7 HTTP Message InterfaceʢHTTPϝοηʔδΠϯλʔϑΣΠεʣ • PSR-11 Container InterfaceʢίϯςφΠϯλϑΣʔεʣ • PSR-12 Extended Coding Styleʢ֦ுίʔσΟϯάελΠϧʣ • PSR-13 Hypermedia LinksʢϋΠύʔϝσΟΞϦϯΫʣ • PSR-14 Event DispatcherʢΠϕϯτσΟεύονϟʔʣ • PSR-15 HTTP HandlersʢHTTPϋϯυϥʣ

Slide 12

Slide 12 text

PSRҰཡ Draft (૲Ҋ) • PSR-5 PHPDoc Standard (PHPDocඪ४) • PSR-19 PHPDoc tags (PHPDocλά) • PSR-20 Clock (ΫϩοΫ)

Slide 13

Slide 13 text

PSRҰཡ Deprecated (ඇਪ঑) • PSR-0ɹAutoloaderʢΦʔτϩʔμʔʣ • PSR-2ɹCoding Style GuideʢίʔσΟϯάε λΠϧΨΠυʣ

Slide 14

Slide 14 text

PSRҰཡ Abandoned (์غ) • PSR-8 Huggable Interface (ϋάΞϒϧΠϯλʔϑΣ Πε) • PSR-9 Security Advisories (ηΩϡϦςΟΞυόΠβ Ϧ) • PSR-10 Security Reporting Process (ηΩϡϦςΟϨ ϙʔτϓϩηε)

Slide 15

Slide 15 text

PSRΧςΰϦ

Slide 16

Slide 16 text

PSRΧςΰϦ • ΦʔτϩʔσΟϯά(PSR-0, 4) • ΠϯλʔϑΣΠε(PSR-3, 6, 11,13, 14, 16) • HTTP(PSR-7, 15, 17, 18) • ίʔσΟϯάελΠϧ(PSR-1, 2, 12)

Slide 17

Slide 17 text

PSRൈਮ঺հ

Slide 18

Slide 18 text

PSRൈਮ঺հ(PSR-1) • Basic Coding Standard • ϑΝΠϧͰ͸λά

Slide 19

Slide 19 text

PSRൈਮ঺հ(PSR-12, PSR-2) • Extended Coding Style Guide • PSR-2 ͷίʔσΟϯάελΠϧΨΠυͷ֦ுͱͳΔ • શͯͷ PHP ϑΝΠϧ͸ɺUnix LFʢϥΠϯϑΟʔυʣͷߦ຤ͷΈΛ࢖༻ ͢Δ • શͯͷ PHP ϑΝΠϧ͸ɺۭനҎ֎ͷߦͰऴΘΓɺ୯Ұͷ LF Ͱऴྃ͢Δ • PHP ͷΈΛؚΉϑΝΠϧͰ͸ɺऴྃλάΛলུ͢Δ • ΠϯσϯτϨϕϧ͝ͱʹ̐ͭͷεϖʔεͷΠϯσϯτΛ࢖༻͢Δ

Slide 20

Slide 20 text

PSRൈਮ঺հ(PSR-20) • ClockInterface • ࣌ؒૢ࡞ܥͷΠϯλʔϑΣʔεʢݱࡏDraftதʣ • ݱࡏͷ࣌ؒʹґଘ͢ΔίʔυΛςετ͢Δͱ͖ʹ૬ޓ ӡ༻ੑΛՄೳʹ͢Δ • ݱࡏͷ࣌ࠁΛऔಘ͢ΔͨΊͷҰ؏ͨ͠ΠϯλʔϑΣΠε • ࠶ݱੑͷͨΊʹ࣮࣌ؒΛ؆୯ʹෳ੡Ͱ͖·͢ɻ

Slide 21

Slide 21 text

͓͠·͍

Slide 22

Slide 22 text

143׬શʹཧղͨ͠ʂ