Pro Yearly is on sale from $80 to $50! »

はてなと技術研修

0ac642c69b7f699a69e3ae3372244dc6?s=47 shibayu36
December 06, 2015

 はてなと技術研修

0ac642c69b7f699a69e3ae3372244dc6?s=128

shibayu36

December 06, 2015
Tweet

Transcript

  1. ͸ͯͳͱٕज़ݚम 2015/12/06 ࢣఋొஃ @shiba_yu36

  2. ࢣঊ : @shiba_yu36 ఋࢠ : @amagitakayosi

  3. ࣗݾ঺հ • @shiba_yu36 • 4೥໨͸ͯͳΤϯδχΞ

  4. ຊ೔࿩͢͜ͱ • ͸ͯͳͰͷݚमͷߟ͑ํ • ݚम಺༰ͷ঺հ • ͸ͯͳڭՊॻ • ۀ຿Λ௨ͯ͡ •

    @amagitakayosi͔Β࣮ࡍʹݚमΛड͚ͯΈͯ
  5. ͸ͯͳͷݚमͷߟ͑ํ

  6. ΤϯδχΞͷ ֮͑Δ͜ͱ͸ແݶ

  7. ΤϯδχΞͷ ֮͑Δ͜ͱ͸ແݶ ࣮ફͰ౎౓ ਎ʹ෇͚Δ͔͠ͳ͍

  8. ͸ͯͳͷݚमͷߟ͑ํ • ࣮ફͰࣗΒߟ͑ͯखΛಈ͔͢͜ͱ ͕Ұ൪ͷֶश • ര଎Ͱ࠷௿ݶͷ஌ࣝΛ਎ʹ͚ͭɺ ͙͢ʹνʔϜʹ഑ଐ

  9. ര଎Ͱ࣮ફ΁ʁ

  10. ര଎Ͱ࣮ફ΁ʁ 2िؒޙʹνʔϜ഑ଐ

  11. 1. ͸ͯͳڭՊॻͰ1िؒͷݚम 2. ΦϦδφϧαʔϏεΛ1िؒͰ 3. ࣮ࡍʹνʔϜ഑ଐ ݚमͷྲྀΕ

  12. None
  13. 1.͸ͯͳڭՊॻͰͷݚम https://github.com/hatena/Hatena-Textbook

  14. ͸ͯͳڭՊॻͱ͸ 1िؒͰ࠷௿ݶͷWebͷٕज़ ΛֶͿͨΊͷڭՊॻ

  15. ͸ͯͳڭՊॻͱ͸ 1िؒͰ࠷௿ݶͷWebͷٕज़ ΛֶͿͨΊͷڭՊॻ ग़དྷΔͷ͔ʁ

  16. WebͰ࠷௿ݶඞཁͳٕज़ ݴޠɺΦϒδΣΫτࢦ޲ɺςετɺDBɺ SQLɺURIɺHTTPɺWebαʔόɺHTMLɺ JSɺηΩϡϦςΟɺetc…

  17. WebͰ࠷௿ݶඞཁͳٕज़ ݴޠɺΦϒδΣΫτࢦ޲ɺςετɺDBɺ SQLɺURIɺHTTPɺWebαʔόɺHTMLɺ JSɺηΩϡϦςΟɺetc… ଟ͗͢Δʂʂ

  18. ՝୊Ͱஈ֊తʹ ֓೦Λ֮͑ΒΕΔ޻෉ designed by Freepik

  19. ஈ֊తʹֶͿ ϒϩάαʔϏεΛஈ֊తʹ࡞Γ ্͛ͯɺ஌ࣝΛੵΈ্͍͛ͯ͘

  20. ϓϩάϥϛϯάجૅ σʔλϕʔε WebΞϓϦέʔγϣϯ JS (εϚϗΞϓϦ։ൃ) 1೔໨. 2೔໨. 3೔໨. 4೔໨.

  21. ϓϩάϥϛϯάجૅ σʔλϕʔε WebΞϓϦέʔγϣϯ JS (εϚϗΞϓϦ։ൃ) ΦϒδΣΫτͷؔ܎͚ͩͰϒϩά DBͳͲͰӬଓԽ͸͠ͳ͍

  22. # ೔هͷ࡞੒ my $diary = Diary->new('Johnͷ೔ه'); # هࣄͷ࡞੒ my $entry1

    = $diary->add_entry( title => '೔هͩΑ', body => '͜Ε͕೔هͷຊจͩΑ', ); my $entry2 = $diary->add_entry( title => '͜Ε΋೔هͩΑ', body => '΍ͬͺΓ೔هͷຊจͩΑ', ); # ग़ྗ $diary->print;
  23. $ object_diary.pl # Johnͷ೔ه # [1] ೔هͩΑ : ͜Ε͕೔هͷຊจͩΑ #

    [2] ͜Ε΋೔هͩΑ : ΍ͬͺΓ೔هͷຊจͩΑ
  24. ϓϩάϥϛϯάجૅ σʔλϕʔε WebΞϓϦέʔγϣϯ JS (εϚϗΞϓϦ։ൃ) ϓϩάϥϛϯάͷ֓೦͚ͩΛֶͿ • ݴޠͷ࢖͍ํ • ઃܭ

    • ΦϒδΣΫτࢦ޲ • ςετ
  25. ϓϩάϥϛϯάجૅ σʔλϕʔε WebΞϓϦέʔγϣϯ JS (εϚϗΞϓϦ։ൃ)

  26. ϓϩάϥϛϯάجૅ σʔλϕʔε WebΞϓϦέʔγϣϯ JS (εϚϗΞϓϦ։ൃ) ΦϒδΣΫτͷؔ܎͚ͩͷϒϩάΛ σʔλϕʔεͰӬଓԽɻೖग़ྗ͸CLIɻ

  27. $ db_diary.pl add_entry λΠτϧ1 ຊจ1 $ db_diary.pl add_entry λΠτϧ2 ຊจ2

    $ db_diary.pl list_entry # [1] λΠτϧ1 : ຊจ1 # [2] λΠτϧ2 : ຊจ2
  28. ϓϩάϥϛϯάجૅ σʔλϕʔε WebΞϓϦέʔγϣϯ JS (εϚϗΞϓϦ։ൃ) • MySQL • SQL •

    ݴޠ͔ΒDBΞΫηε • DBηΩϡϦςΟ • CLI DBͷ֓೦͚ͩΛֶ΂Δ
  29. ϓϩάϥϛϯάجૅ σʔλϕʔε WebΞϓϦέʔγϣϯ JS (εϚϗΞϓϦ։ൃ)

  30. ϓϩάϥϛϯάجૅ σʔλϕʔε WebΞϓϦέʔγϣϯ JS (εϚϗΞϓϦ։ൃ) DBͰӬଓ͞ΕͨϒϩάΛ Web্Ͱॻ͚ΔΑ͏ʹ͢Δ

  31. None
  32. ϓϩάϥϛϯάجૅ σʔλϕʔε WebΞϓϦέʔγϣϯ JS (εϚϗΞϓϦ։ൃ) • HTTPɺURLઃܭɺWebαʔό • WebαʔϏεͷ࡞Γํ •

    WebͰͷηΩϡϦςΟ Webͷ֓೦͚ͩΛֶ΂Δ
  33. ϓϩάϥϛϯάجૅ σʔλϕʔε WebΞϓϦέʔγϣϯ JS (εϚϗΞϓϦ։ൃ)

  34. ϓϩάϥϛϯάجૅ σʔλϕʔε WebΞϓϦέʔγϣϯ JS (εϚϗΞϓϦ։ൃ) WebͰॻ͚ΔϒϩάΛ JSͰಈ͔ͯ͠࢖͍΍͘͢͢Δ

  35. • JSON APIΛ࢖ͬͨΦʔτϖʔδϟ • ͦͷ৔ฤू

  36. ϓϩάϥϛϯάجૅ σʔλϕʔε WebΞϓϦέʔγϣϯ JS (εϚϗΞϓϦ։ൃ) • JSͷجૅɺDOMͷجૅ • Πϕϯτۦಈ •

    JSON APIͰͷ࿈ܞ ϑϩϯτΤϯυͷ֓೦͚ͩΛֶ΂Δ
  37. ϓϩάϥϛϯάجૅ σʔλϕʔε WebΞϓϦέʔγϣϯ JS (εϚϗΞϓϦ։ൃ)

  38. ϓϩάϥϛϯάجૅ σʔλϕʔε WebΞϓϦέʔγϣϯ JS (εϚϗΞϓϦ։ൃ) εϚϗΤϯδχΞ޲͚ʹ͸͞Βʹ Swiftͷ՝୊΋ʂʂ

  39. ϓϩάϥϛϯάجૅ σʔλϕʔε WebΞϓϦέʔγϣϯ JS (εϚϗΞϓϦ։ൃ) 1೔໨. 2೔໨. 3೔໨. 4೔໨.

  40. ௿ϨΠϠʔ͔ΒͷੵΈॏͶͰ ஈ֊తʹ֓೦Λֶ΂Δ designed by Freepik

  41. ڭՊॻʹΑΔݚमऴྃ

  42. 2. ΦϦδφϧαʔϏε ͷ࡞੒

  43. ࣗ෼Ͱاըͯ͠ ࣗ෼Ͱ࡞Δʂ

  44. ΦϦδφϧαʔϏε࡞੒ શࣾһͷલͰൃද 5-9೔໨. 10೔໨.

  45. ΦϦδφϧαʔϏε࡞੒ શࣾһͷલͰൃද 5-9೔໨. 10೔໨. • اը • UI • ػೳ։ൃͷྲྀΕ

    WebαʔϏε࡞੒ͷখ͞ͳ࣮ફ ڭՊॻͰֶΜͩ͜ͱΛ׆͔͢
  46. None
  47. ΦϦδφϧαʔϏε࡞੒ શࣾһͷલͰൃද 5-9೔໨. 10೔໨.

  48. શࣾһͷલͰൃද • ࣗ෼ͷαʔϏεΛΞϐʔϧ • ίʔυΛಡ·Εٕज़తʹ΋ಥͬࠐ·ΕΔ • ઈରʹηΩϡϦςΟϗʔϧΛ୳͞ΕΔ

  49. ΦϦδφϧαʔϏεͷ ࡞੒ऴྃ

  50. 3. ۀ຿Λ௨ͨ͡ݚम

  51. 1. ೉ͯ͘͠΋௅ઓͯ͠΋Β͏ 2. αϙʔτମ੍͸ॆ࣮ͤ͞Δ ߟ͑ํ

  52. 1.௅ઓͯ͠΋Β͏ • ࣮ࡍʹಈ͍͍ͯΔαʔϏεΛ৮Δ • ͲΜͲΜ࢓ࣄΛ೚ͤΔ • ೉͍͠ۀ຿Ͱ΋௅ઓͯ͠΋Β͏

  53. ௅ઓ • ͦͷਓ͕ڵຯ͕͋Δ͜ͱ • ٕज़తʹ೉͍͠՝୊ • ΤϯδχΞ͔Βͷӽڥ

  54. 2.αϙʔτମ੍Λॆ࣮ • νʔϜϝϯλʔ • ίʔυϨϏϡʔ • γχΞΤϯδχΞ • ͦͷଞ

  55. νʔϜϝϯλʔ • νʔϜ಺Ͱڭҭ܎ • ೋਓͰઃܭ૬ஊΛ͠ͳ͕Β։ൃ

  56. ίʔυϨϏϡʔ • ίʔυ͸GitHubͰϨϏϡʔ • ࢦఠΛडֶ͚ͯश͢Δ • ࣗ෼Ͱ΋ଞͷਓͷίʔυΛݟֶͯश

  57. γχΞΤϯδχΞ • νʔϜ֎ͷΤϯδχΞ͕Ұਓ෇͘ • ΤϯδχΞͱͯ͠ͷํ޲ੑΛαϙʔτ

  58. ͦͷଞ • ϖΞϓϩ • ࣾ಺ษڧձ • ٕज़ॻࢧԉ • ߹॓ •

    னٳΈ
  59. ۀ຿Λ௨ͨ͡ݚम͸ ͍ͭ·Ͱ΋ଓ͘…

  60. ·ͱΊ

  61. 1. ͸ͯͳڭՊॻ 2. ΦϦδφϧαʔϏε 3. νʔϜ഑ଐ ݚमͷྲྀΕ

  62. ͸ͯͳͰ͸ര଎Ͱۀ຿ʹ ೖΕΔΑ͏޻෉͍ͯ͠·͢

  63. ௅ઓͰ͖Δ؀ڥΛ ἧ͍͑ͯ·͢

  64. 13 • ͸ͯͳͰ͸௅ઓ͍ͨ͠ΤϯδχΞΛื ू͍ͯ͠·͢ • http://hatenacorp.jp/recruit/fresh/