iOS 開発者のためのバックエンド入門 (1)

iOS 開発者のためのバックエンド入門 (1)

iOS 開発者のためのバックエンド入門 シリーズ 1

バックエンド一般に付いて話の話

* BaaSの機能で足りるなら、それを使うのが楽勝
* 独自のバックエンドを作る場合も PaaS を使えばインフラエンジア・知識がいらない
* 独自のバックエンド用のフレームワークもある

7ec547b3208545bcb5e6c0f1feb732c7?s=128

裕美 吉田

March 07, 2015
Tweet

Transcript

  1. J04։ൃऀͷͨΊͷ όοΫΤϯυೖ໳  !ZVVNJ٢ా༟ඒ

  2. ͓඼ॻ͖ ࣗݾ঺հ όοΫΤϯυ #BT4 N#BBT  ಠࣗͷόοΫΤϯυΛ࡞Δ 2

  3. ࣗݾ঺հ

  4. ٢ా༟ඒ :PTIJEB:VVNJ  ༗ݶձࣾ&:0⒏DF IUUQXXXFZP⒏DFDPN #MPHIUUQZVVNJIBUFOBCMPHDPN 5XJUUFS!ZVVNJ 4

  5. աڈ େֶͷ޻ֶ෦ଔۀ ଔۀݚڀͰ-JTQॲཧܥʹؔΘΔ ૊ࠐܥͷձࣾʹब৬ $"%ͷϕϯνϟʔاۀʹస৬ $"%ͷίΞ෦෼ͷ։ൃ γϦίϯόϨʔΛ๚໰ͨ͠Γɺถࠃਓͱ࢓ࣄΛ ܦݧ 5

  6. ಠཱ ΧϦϑΥϧχΞͷ੨͍ۭΛΈͨ ͋·ΓձࣾʹೃછΊͳ͍ਓͩͬͨ 6 IUUQCMPHMFYVFTDPKQIUNM͔Β

  7. &:0⒏DF ೥ʹಠཱ ։ൃ 8FC 3VCZPO3BJMT  J1IPOF ڭҭ ͓٬༷ͷ໰୊Λղܾ͢Δ*5ڭҭ 3VCZPO3BJMT

    J1IPOF 7
  8. &:0⒏DF։ൃ 8FC 8 w ΞδΞϦʔάΞΠεϗοέʔ wIUUQXXXBMIPDLZKQ wνʔϜɾબखͷ੒੷ूܭ w1FSMಠࣗϑϨʔϜϫʔΫ wΞϩϋύʔΫ wIUUQQBSLBMPIB

    TUSFFUDPN w4/4 w+BWB4FBTBS wωοτγϣοϓ wIUUQXXXCPSPDPKQ w3BJMTK2VFSZ w34QFD$VDVNCFS w๖͑τʔΫ ੠༏ͱ4LZQF Ͱ͓࿩  wIUUQXXXNPFUBMLKQ w੠༏ͱͷձ࿩༧໿༧໿ w3BJMTK2VFSZ w34QFD3FRVFTU
  9. &:0⒏DF։ൃ J1IPOF 9 ֆຊΞϓϦ J1IPOFJ1BE 5XFFUͳ͏ ແྉ ڭ͑ࢠ͕࡞ͬͨΞϓϦ

  10. ࣥච 10

  11. ߨԋ 11 RubyKaigi2008 Ruby World Conference 2013 Qcon Tokyo 2009

  12. ࠓճ͸όοΫΤϯ υҰൠʹ෇͍ͯ࿩ ͠·͢

  13. όοΫΤϯυ

  14. ྫ$PPLQBE 14 αʔόʔ"84 8FC J04 ୆ͷαʔόʔΛ࢖ͬ ͯΔΒ͍͠ "1* IUUQ "OESPJE

  15. ྫύζυϥ 15 αʔόʔ"84 J04 "OESPJE "1*

  16. ྫ"QQMF 16 J$MPVE (BNF$FOUFS *O"QQQVSDIBTF SDK "1*

  17. όοΫΤϯυ·ͱΊ 17 αʔόʔ ӡӦऀ CSPXTFS Web Page Title 3%# ίϯςϯπͷ഑৴

    Ϣʔβʔ৘ใͷऩूɾ஝ੵɾूܭ ΞϓϦͷ੍ޚ ʜ
  18. όοΫΤϯυʹඞཁͳٕज़ 18 #BDLFOE"QQMJDBUJPO 'SBNFXPSL 3VCZPO3BJMT -BOHVBHF 3VCZ -JCSBSZ (FN 04

    -JOVY 3%#TFSWFS .Z42- 3%#42- "QQTFSWFS 6OJDPSO 8FCTFSWFS OHJOY /FUXPSL 5$1*1
  19. Ϋϥ΢υJTԿ 19

  20. Ϋϥ΢υͷ෼ྨ 4BB4 4PGUXBSFBTB4FSWJDF 1BB4 1MBUGPSNBTB4FSWJDF *BB4 )BB4  *OGSBTUSVDUVSFBTB4FSWJDF 20

    ਤ͸8JLJQFEJBΑΓ
  21. Ϋϥ΢υͷ෼ྨ 4BB4ΞϓϦέʔγϣϯ $3. &31 .BJM 0⒏DF 1BB4ϓϥοτϑΥʔϜ 04 3%# .JEEMFXBSF

    *BB4Πϯϑϥ $16 %JTL /FUXPSL 21 ਤ͸8JLJQFEJBΑΓ
  22. 4BB4 1BB4 *BB4 Ϋϥ΢υͷ෼ྨ 22 ਤ͸8JLJQFEJBΑΓ

  23. #BT4

  24. #BB4 N#BB4 #BDLFOEBTB4FSWJDF NPCJMF#BDLFOEBTB4FSWJDF όοΫΤϯυ༻ͷ4BB4·ͨ͸1BB4 24

  25. #BB4͸·ͩઓࠃ࣌୅ͩͬͨͷ͔ɺ ·ͱΊɻ ࣥචத 2JJUB 25 IUUQRJJUBDPNDPHOJUPNJUFNTFBECDBBDDΑΓ

  26. 1BSTFDPN #BB4ͷ୅ද  4BB4తɺػೳ σʔλͷอଘɾಉظ '# 58ͳͲΛ࢖ͬͨϩάΠϯ 1VTI௨஌ Ϋϥογϡղੳ ੑೳ

    SFRTFD Ͱ՝ۚɺ੍ݶ෇͖ͰGSFF 26
  27. 1BSTFDPN %# ςʔϒϧ ͕ఆٛग़དྷΔ "1*΋ࣗಈతʹ࡞੒͞ΕΔ "$-ϕʔεͷΞΫηε؅ཧ͕ग़དྷΔ શϢʔβʔʹ഑৴͢Δσʔλ Ϣʔβʔຖͷ৘ใͷอ࣋ ઃఆ͠ͳ͍ͱσʔλ͕Φʔϓϯʁ 27

  28. 4USPOH-PPQ ઐ༻"1*αʔόʔ͕࡞ΕΔ1BB4తͳ #BB4 -PPQ#BDLɿ044ͷ"1*ϑϨʔϜϫʔΫ Λ࡞Γɾ࢖͍ͬͯΔ /PEFKT 28

  29. #BB4·ͱΊ 29 1BSTFDPN 4USPOH-PPQ "84 04 αʔόʔ 3%# ϓϩάϥϛϯά ݴޠ

    'SBNFXPSL #BDLFEΞϓϦ ؅ཧ༻ιϑτ 04 αʔόʔ 3%# ϓϩάϥϛϯά ݴޠ 'SBNFXPSL #BDLFEΞϓϦ ؅ཧ༻ιϑτ 04 αʔόʔ 3%# ϓϩάϥϛϯά ݴޠ 'SBNFXPSL #BDLFEΞϓϦ ؅ཧ༻ιϑτ
  30. ಠࣗόοΫΤϯυ Λ࡞Δ

  31. 04 -JOVY͕ແ೉ $ͳͲ.4ὑͳΒ8JOEPXT .BD049Λαϙʔτ͍ͯ͠ ΔΫϥ΢υ΋͋ΔΒ͍͠ #4% 4PMBSJTʜ 31 04 αʔόʔ

    3%# ϓϩάϥϛϯά ݴޠ 'SBNFXPSL #BDLFEΞϓϦ ؅ཧ༻ιϑτ
  32. 8FCαʔόʔɺ3%# ࠷ۙ8FCαʔόʔ͸OHJOY 3%# .Z42- 1PTUHSF42- 0SBDMF 42-TFSWFS /PO42- .POHP%# 32

    04 αʔόʔ 3%# ϓϩάϥϛϯά ݴޠ 'SBNFXPSL #BDLFEΞϓϦ ؅ཧ༻ιϑτ
  33. ϓϩάϥϛϯάݴޠ օ͞Μͷେ޷͖ͳ 0CKFDUJWF$΍4XJGUͰͷ όοΫΤϯυ։ൃ͸೉͍͠ Ͱ͢ 33 04 αʔόʔ 3%# ϓϩάϥϛϯά

    ݴޠ 'SBNFXPSL #BDLFEΞϓϦ ؅ཧ༻ιϑτ
  34. ϓϩάϥϛϯάݴޠ 3VCZ 1)1 /PEFKT +BWB4DSJQU  1ZUIPO 1FSM +BWB 4DBMB

    $ ʜ 34 04 αʔόʔ 3%# ϓϩάϥϛϯά ݴޠ 'SBNFXPSL #BDLFEΞϓϦ ؅ཧ༻ιϑτ
  35. ૣָ͘ʹ࡞Γ͍ͨ 3VCZ 1)1 /PEFKT 35 ϓϩάϥϛϯάݴޠ

  36. खݎ͘େਓ਺Ͱ࡞Γ͍ͨ +BWB $ 4DBMB 36 ϓϩάϥϛϯάݴޠ

  37. ॲཧೳྗΛߴ͍ͨ͘͠ (P /PEFKT +BWB $ 37 ϓϩάϥϛϯάݴޠ

  38. ։ൃޮ཰ɺن໛ɺੑೳͳͲ͔ΒબͿ ΋͠஌͍ͬͯΔݴޠ͕͋Ε͹ͦΕΛ ࢖͏ͷ΋ྑ͍ͱࢥ͏ 3VCZ͸ແ೉ͩͱࢥ͏ ৽͍͠΋ͷ͕޷͖ͳΒ/PEFKT  4DBMB (Pʜ 38 ϓϩάϥϛϯάݴޠ݁࿦

  39. ϑϨʔϜϫʔΫ ͍͍ͨͯͷݴޠʹ͸3VCZ PO3BJMTʹΠϯεύΠΞ͞ ΕͨϑϨʔϜϫʔΫ͕͋Δ "1*ઐ༻ͷϑϨʔϜϫʔΫ ΋͋Δ 39 04 αʔόʔ 3%#

    ϓϩάϥϛϯά ݴޠ 'SBNFXPSL #BDLFEΞϓϦ ؅ཧ༻ιϑτ
  40. ൚༻8FCϑϨʔϜϫʔΫ ྫ3VCZPO3BJMT  ৘ใ͕ଟ͍ ੑೳ͸΍΍௿͍ ઐ༻ϑϨʔϜϫʔΫ ྫ-PPQ#BDL  ࢖͍қ͍ɺ؆ܿ ৘ใ͕গͳ͍

    40 ϑϨʔϜϫʔΫ
  41. IUUQTHJUIVCDPNJOUSJEFBHSBQF 3VCZ 3VCZ%4-Λ࢖͍"1*͕൑Γ΍͢ ͘ߏஙͰ͖Δ 3%#पΓ͸"DUJWF3FDPSE 3VCZ PO3BJMT ͷϥΠϒϥϦʔΛ࢖͏ 41 ϑϨʔϜϫʔΫྫ(SBQF

  42. IUUQTHJUIVCDPNTUSPOHMPPQMPPQCBDL /PEFKT 'VMM4UBDL 3%# 4FSWFS "VUI  %FQMPZʜ  "1*ఆٛ͸+40/ʴ+BWB4DSJQU

    (6*πʔϧ΋͋Δ 42 ϑϨʔϜϫʔΫྫ-PPQ#BDL
  43. *BB4WT1BB4 04ɺαʔόʔɺ3%#Λࣗ෼ ͰΠϯετʔϧग़དྷͳ͍ͱόο ΫΤϯυ͸࡞Εͳ͍ͷ͔ʁ /Pˠ1BB4Λ࢖͏ 43 04 αʔόʔ 3%# ϓϩάϥϛϯά

    ݴޠ 'SBNFXPSL #BDLFEΞϓϦ ؅ཧ༻ιϑτ
  44. 1BB4ͷྫ)FSPLV IUUQTXXXIFSPLVDPN 3VCZPO3BJMT /PEFKT 1)1ʜ࣮ߦ ؀ڥ͕௚͙ʹ࡞ΕΔ 3%# 1PTUHSF42- αʔόʔ΋Πϯε τʔϧ͞ΕͯΔ

    ۃখΞΫηεෛՙͳΒແྉ 44
  45. (JUΛ࢖ͬͯ؆୯ʹ%FQMPZग़དྷΔ ͓ۚΛग़ͤ͹ɺ͔ͳΓεέʔϧ͢Δ 57Ͱ࿩୊ʹͳͬͯ΋͍ͩ͡ΐ͏Ϳ ΠϯϑϥΤϯδχΞ ஌ࣝ ෆཁ "84Ͱಈ͍͍ͯΔ͕"84Λ௚઀࢖͏ ͷʹൺ΂ߴՁ 45 1BB4ͷྫ)FSPLV

  46. ࠷ۙͷαΫηεετʔϦʔ ·ͣ͸1BB4Ͱ࢝ΊΔ ໥͔ΔΑ͏ʹͳͬͨΒΠϯϑϥΤϯ δχΞΛޏ͍*BB4ʹҠߦ 46 *BB4WT1BB4

  47. ؅ཧ༻ιϑτ 'SBNFXPSLΛ࢖͍௨ৗͷ8FC ΞϓϦͱͯ͠࡞੒ 3BJMT"ENJOͷΑ͏ʹ؅ཧը໘ Λ؆୯ʹ࡞ΕΔϥΠϒϥϦʔ΋ ͋Δ ΞοϓϩʔυɺάϥϑදࣔͳͲ ޿͘࢖ΘΕ͍ͯΔ'SBNFXPSL ͳΒྑ͍ϥΠϒϥϦʔ͕͋Δ 47

    04 αʔόʔ 3%# ϓϩάϥϛϯά ݴޠ 'SBNFXPSL #BDLFEΞϓϦ ؅ཧ༻ιϑτ
  48. ·ͱΊ

  49. όοΫΤϯυʹ͸৭ʑͳબ୒ ࢶ͕͋Δ #BB4 4BB4త1BSTFDPN 1BB4త4USPOH-PPQ ಠࣗ ݴޠɾϑϨʔϜϫʔΫ *BB4ɺ1BB4 49

  50. όοΫΤϯυ #BB4ͷػೳͰ଍ΓΔͳΒɺͦΕΛ࢖ ͏ͷָ͕উ ಠࣗͷόοΫΤϯυΛ࡞Δ৔߹΋ 1BB4Λ࢖͑͹ΠϯϑϥΤϯδχΞɾ ஌͕͍ࣝΒͳ͍ ಠࣗͷόοΫΤϯυ༻ͷϑϨʔϜϫʔ Ϋ΋͋Δ 50

  51. ࣍ճͷ༧ࠂ 3VCZPO3BJMTͰόοΫΤϯυΛ ࡞ͬͯΈ·͢ 51

  52. ͝੩ௌ͋Γ͕ͱ͏͍͟͝·͢ 2BOE" ڵຯͷ͋Δํ͸ɺٳܜ࣌ؒ΍࠙਌ձ Ͱ੠Λ͔͚ͯԼ͍͞ 52