PHPを学ぶということ / phpcondo-2019

PHPを学ぶということ / phpcondo-2019

PHPカンファレンス北海道2019スライド

PHPは言語としては初学者にもやさしく、入門しやすい言語かもしれません。
一方で、実際にWebアプリケーションを作るにあたり、知らなければいけない周辺知識はたくさんあります。
ではまず、Webアプリケーションフレームワークのチュートリアルをやっておけば良いのでしょうか?
また、どこから学んだら良いかわからず、入門書っぽい本で学習するのが良いでしょうか?
このセッションでは、初学者(Web系の言語入門者を含む)にとって、Webアプリケーションを開発することを学ぶにはどこから取り組むのが良いのか?ということを紹介します。

C4c161ae9eeeed8f161197410f7a228a?s=128

Kenichiro Kishida

September 21, 2019
Tweet

Transcript

  1. 1)1ΛֶͿͱ͍͏͜ͱ 1)1ΧϯϑΝϨϯε๺ւಓ ,FOJDIJSP,JTIJEB !TJ[VIJLP

  2. ,FOJDIJSP,JTIJEB 5PLZP +"1"/ TJ[VIJLP!HNBJMDPN !TJ[VIJLP IUUQTHJUIVCDPNTJ[VIJLP IUUQCMPHPQFOUPLZPKQ

  3. None
  4. w৘ใΛ૊৫͠ॲཧ͢ΔλεΫʹ͍ͭͯͷཧ ղΛ༰қʹ͠ɺΞϧΰϦζϜΛਖ਼֬ʹදݱ ͢Δ͜ͱ͕Ͱ͖Δɻ wਓؒಉ࢜ͷձ࿩ͱൺֱͯ͠ɺਖ਼֬ੑͱ׬શ ੑͷཁٻੑ͕ඇৗʹߴ͍ͱ͍͏ಛ௃͕͋Δɻ ࣗવݴޠͰਓؒಉ͕࢜ର࿩͢Δ৔߹ɺεϖ ϧϛε΍จ๏తͳΤϥʔ͕͋ͬͯ΋૬ख͸ ঢ়گ͔Βద౰ʹิਖ਼͠ɺਖ਼֬ͳ಺༰Λ೺Ѳ ͢Δɻ͔͠͠ίϯϐϡʔλ͸ࢦ͕ࣔᐆດͰ ͸ಈ࡞ͤͣɺϓϩάϥϚ͕ίʔυʹࠐΊͨ

    ҙਤΛཧղͤ͞Δ͜ͱ͸Ͱ͖ͳ͍ 8JLJQFEJBʹΑΔͱ https://ja.wikipedia.org/wiki/ϓϩάϥϛϯάݴޠ
  5. w1FSTPOBM)PNF1BHF5PPMTɻ ೥ʹ(1-ͷԼͰެ։ wಈతͳ8FCϖʔδΛੜ੒͢ΔπʔϧΛىݯ ͱ͍ͯ͠ΔͨΊɺެࣜͷॲཧܥʹ͸8FCΞ ϓϦέʔγϣϯ։ൃʹؔ͢Δػೳ͕๛෋ʹ ૊Έࠐ·Ε͍ͯΔɻݩʑ1)1͸ϓϩάϥ ϛϯάݴޠͱݴ͑Δ΋ͷͰ͸ͳ͘ɺ୯ʹς ϯϓϨʔτతͳॲཧΛߦ͏͚ͩͰ͕͋ͬͨɺ ౓ॏͳΔػೳ௥Ճ΍ίʔυͷॻ͖௚͠ʹΑ Γɺݱࡏ͸໨తʹΑΒͣ൚༻తʹ࢖͏͜ͱ

    ͷग़དྷΔεΫϦϓτݴޠͱͳ͍ͬͯΔ "CPVU1)11)1)ZQFSUFYU1SFQSPDFTTPS https://ja.wikipedia.org/wiki/PHP_(ϓϩάϥϛϯάݴޠ)
  6. 8):VTF1)1       ࢓ࣄ $.4 1)1ίϛϡχςΟ͕޷͖

    ֶߍ 1)1͕޷͖ ͦͷଞ ৅͕޷͖ ਤ͸ΠϝʔδͰ͢
  7. 8IBUNBLFXJUI1)1      8FCΞϓϦ ։ൃπʔϧϥΠϒϥϦ $-*ΞϓϦ (6*ΞϓϦ

    ͦͷଞ +7. ϑΝϛίϯ
 FUDʜ ਤ͸ΠϝʔδͰ͢
  8. wίϯϐϡʔλʔ͕දݱ͢ΔΞϧΰϦζϜΛ ֶͿ wࢦ͕͍ࣔ͋·͍Ͱ͸͍͚ͳ͍ͷͰɺޡΓ͕ গͳ͘ͳΔ*%&Λར༻͢Δ wݴޠಛ༗ͷར༻ํ๏΍पล஌ࣝΛֶͿ wॻ͍ͯಈ͔͢ -FBSO1SPHSBNNJOH https://www.amazon.co.jp/dp/4798149772 http://algorithm.wiki/ja/app/

  9. wΞΠσΞΛΑΓૣ͘ܗʹ wίϛϡχςΟ͕׆ൃ
 8):1)1

  10. http://gihyo.jp/news/report/2015/12/1401

  11. wίϯϐϡʔλʔ͕දݱ͢ΔΞϧΰϦζϜΛ ֶͿ wࢦ͕͍ࣔ͋·͍Ͱ͸͍͚ͳ͍ͷͰɺޡΓ͕ গͳ͘ͳΔ*%&Λར༻͢Δ wݴޠಛ༗ͷར༻ํ๏΍पล஌ࣝΛֶͿ wॻ͍ͯಈ͔͢ -FBSO1SPHSBNNJOH https://www.amazon.co.jp/dp/4798149772 http://algorithm.wiki/ja/app/

  12. wίϯϐϡʔλʔ͕දݱ͢ΔΞϧΰϦζϜΛ ֶͿʢ-FFU$PEFͳͲ w1)14UPSNΛ࢖͓͏ w8FCΞϓϦέʔγϣϯαΠτΛ࡞ΔͳΒ )5.-$44+BWB4DSJQU )551 T  1)1 42-ͱଟذʹΘͨΔ

    wQIQBc43&1-JO1)14UPSN -FBSO1)1 Read-Eval-Print Loop
  13. w)5.-ݴޠ͡ΌΜ w$44ݴޠ͡ΌΜ ࠷ޙ͕-͡Όͳ͍͚ ͲελΠϧγʔτݴޠͱݴ͍·͢  w+BWB4DSJQUݴޠ͡ΌΜ w1)1͜͜ΛֶΜͰԿ͔Λ࡞Γ͍ͨʂ w42-ݴޠ͡ΌΜ "MPUPG4LJMMTOFFEFE

  14. None
  15. Webアプリって
 15分でできるんでしょ?

  16. )JTUPSZ ݱࡏ )551  )5.-  +4  1)1 

    42-  .PKBWJ  "HBWJ  4ZNGPOZ $BLF1)1  $* ;FOE  :JJ  4MJN 'VFM -BSWFM "VSB Y https://github.com/pmjones/php-history
  17. PHPͷೖྗ͸HTTPϦΫΤετ
 ग़ྗ͸HTML͚ͩͲɺҰ୴๨ΕΑ͏ PHP͔Β͸PDOܦ༝ͰSQL
 (Web APIͳΒHTTP CLIENT) ೖྗ ஝ੵ Ճ޻

  18. None
  19. -FBSO8FC https://www.amazon.co.jp/dp/4873118042 https://www.amazon.co.jp/dp/4774142042

  20. -FBSO42-3%# https://www.amazon.co.jp/dp/4297104083 https://www.amazon.co.jp/dp/4774180661

  21. -FBSO1)1 http://php.net/manual/ja/getting-started.php

  22. https://qiita.com/shibacho/items/20f6eee42083c620b556

  23. None
  24. None
  25. 5SZ3VO > - $ php -S 0.0.0.0:8080 -t src PHP

    Development Server started Listening on http://0.0.0.0:8080 Document root is /var/src Press Ctrl-C to quit. $ php -a Interactive shell php > var_dump("Hello World!"); string(12) "Hello World!"
  26. w1)1ͱ42-JUFΛΠϯετʔϧ͢Δ w)5.-λάͱ؆୯ͳ1)1ίʔυΛؚΜ ͩQIQϑΝΠϧΛ࡞ͬͯΈΔ
 http://php.net/manual/ja/tutorial.firstpage.php w)5.-ʹGPSNΛೖΕͯɺૹ৴͞Ε͖ͯͨ৘ ใΛऔಘ͢Δ
 http://php.net/manual/ja/tutorial.forms.php
 http://php.net/manual/ja/language.variables.external.php w1%0Λ࢖ͬͯ%#ʹ஋Λอଘͯ͠ΈΔ
 http://php.net/manual/ja/book.pdo.php

  27. wؔ਺Λ࡞ͬͯΈΔ wϑΝΠϧΛ෼ׂͯ͠ΈΔ w֎෦ϥΠϒϥϦΛ࢖ͬͯΈΔ wΦϒδΣΫτࢦ޲ʹऔΓ૊ΜͰΈΔ wϑϨʔϜϫʔΫΛ࢖ͬͯΈΔ wʜ

  28. -PWF$PNNVOJUZ wશࠃ֤஍ͰΧϯϑΝϨϯε΍ษڧձ͕࣮ࢪ ͞Ε͍ͯ·͢ w1)1Ϣʔβʔζ ೔ຊޠ 4MBDLʹՃೖ͠ ͯɺަྲྀ࣭໰ͯ͠ΈΑ͏ʂ
 ͪ͜Β͔ΒՃೖ
 ⬇ 


    IUUQTTMBDLJOQIQVTFST KBIFSPLVBQQDPN
  29. 5P#F1SPGFTTJPOBM w1)15IF3JHIU8BZ
 IUUQKBQIQUIFSJHIUXBZDPN wࣗ෼ͷମݧΛൃදͯ͠ΈΑ͏ w044ͷιʔείʔυΛಡΜͰΈΔ w044ʹύονΛ౤͛ͯΈΑ͏

  30. Walk on road, hm? Walk left side, safe. Walk right

    side, safe. Walk middle, sooner or later, “get squish just like grape.” Here, karate, same thing. Either you karate do "yes" or karate do "no." You karate do "guess so,"just like grape. Understand? 
 [ from Karate Kid / Mr.Miyagi]
  31. WJTJUNZCMPHHJUIVC https://github.com/sizuhiko http://blog.open.tokyo.jp