Swiftでアプリを開発した体験記

 Swiftでアプリを開発した体験記

SwiftでiOS8 Day1 に向けてリリースしたSIORIの開発記

Acbf3391de0494432a92221ffe89f34e?s=128

yohei sugigami

October 16, 2014
Tweet

Transcript

  1. Swift LT @Wantedly 2014-10-16 yohei sugigami SwiftͰΞϓϦΛ։ൃͨ͠ମݧه

  2. ਿ্༸ฏ εΪΨϛϤ΢ϔΠ 5XJUUFS(JU)VC!TVTJFZZ J04ΤϯδχΞ௕͍ ݄͔̒Β8BOUFEMZ+PJO

  3. ݄̕೔J04%BZ 4JPSJϦϦʔε

  4. 4JPSJ ϦϦʔε͸J04ͱಉ࣌ʢظؒλΠτʣ ։ൃ͸#FUB൛ͷ4XJGU9DPEFˍJ04 νϟϨϯδϯάͳ6*69

  5. Ͳ.ײඬ͏ ָ͍͠։ൃͰͨ͠ ɾТɾʆ

  6. %&.0

  7. ։ൃεέδϡʔϧ 6݄2೔
 iOS8
 Swiftൃද 7݄த०
 ։ൃ։࢝ 9্݄०
 ਃ੥ ɾ7݄த०͔ΒϓϩλΠϓ࡞੒ ɾ8݄͔Βຊ֨։ൃ

    6݄1೔ Wantedlyೖࣾ ←̎ϲ݄ऑ→ 7݄຤ Swift࠾༻ܾఆ
  8. ։ൃମ੍໊ σΟϨΫγϣϯ iOS (Swift) Server (Rails) iOS (Swift) ͚ͩ׼ σβΠϯ

    iOS (Swift) εʔύʔΤϯδχΞ ৽ถΤϯδχΞ εʔύʔσβΠφ
  9. ΈΜͳͰ4XJGUίʔσΟϯά

  10. 6݄ 9݄ 7݄ 8݄ ϓϩδΣΫτ͕࢝·Δલ ݄ʙ݄̓த०

  11. ηϯηʔγϣφϧͳ4XJGUൃද "QQMFͷຊؾ͕఻Θͬͯ͘Δ

  12. ·ͣ͸ษڧˍ৘ใऩू ษڧձΛ։͍ͯSwiftͷ஌ݟΛ ΈΜͳͰσΟεΧογϣϯ Swiftʹؔ৺͕͋ΔΤοδͷ ޮ͍ͨਓ͕ͨͪࢀՃͯ͘͠Ε ͨͷͰೱΏ͍৘ใަ׵͕ Ͱ͖·ͨ͠

  13. ௐ΂ͨ͜ͱΛΞ΢τϓοτ QiitaʹΞ΢τϓοτ Swiftͷهࣄ̍̔ຊ ίϝϯτཝͰٞ࿦ͯ͠ ॿ͚߹͍

  14. 4XJGUͰͭͳ͕ͬͨਓͨͪͷ͓͔͛ 4XJGUྗ͕͍ͭͨͷ͸

  15. 4XJGUָ͍͠Ͷ ࣍ͷϓϩδΣΫτͰ࢖͍͍ͨʂ

  16. ৽نϓϩδΣΫτൃ଍ ݄̓த०ʙ຤ 6݄ 9݄ 7݄ 8݄ 4XJGUͰ։ൃ͸ܾ·ͬͯ·ͤΜͰͨ͠

  17. ϓϩτλΠϓΛ4XJGUͰ࡞ͬͯΈΔ ࢼ࡞̍߸Ξχϝʔγϣϯ΋͢ΔΑ ࠓͷσβΠϯͱ͸શવҧ͏͆

  18. ϓϩτλΠϓΛ4XJGUͰ࡞ͬͯΈΔ ࢼ࡞̎߸
 3BJMTαʔόͱ௨৴΋͢ΔΑ 3FTU,JUΛݕূ0, ͜ͷ͜Ζ͸هࣄΛݟΔͷ͸ ॎεΫϩʔϧͰͨ͠ ࠓ͸ԣʣ

  19. 4XJGU࠾༻ܾఆʂ ݄̓຤ ͋ͱ࢒Γ̍ϲ݄ͪΐͬͱ ࢓༷ࡦఆͱϓϩλΠϓ ظؒʹ4XJGUΛݕূ ߦ͚ͦ͏ʂ

  20. 6݄ 9݄ 7݄ 8݄ ຊ֨։ൃ ݄̔ʙ্݄̕०

  21. ݄̔த०69ͷ๞͘ͳ͖௥ٻ 69ͷมߋͱ*OUFSBDUJWF5SBOTJUJPOͷ׆༻

  22. #FUB൛ͷ9DPEFJ04 ˍ4XJGUʹ೰·͞ΕΔ

  23. #FUB൛ͷ9DPEFJ04ˍ4XJGUʹ೰·͞ΕΔ ɾ໰୊͕ൃੜͨ͠ͱ͖ʹXcode, iOS8, Swiftͷ ɹͲͷϨΠϠʔͷ໰୊͔੾Γ෼͚͕ඞཁ ɹશ෦Beta ͦΕͧΕ҆ఆ͠ͳ͍͠ڍಈ͕͓͔͍͆͠ 
 ɾXcode͕Α͘མͪΔ ɾγϯλοΫεϋΠϥΠτˍೖྗิ׬͕

    ɹΑ͘ޮ͔ͳ͘ͳΔ
  24. #FUB൛ͷ9DPEFJ04ˍ4XJGUʹ೰·͞ΕΔ ɾXcodeBeta1͔ΒBeta7·ͰΞοϓσʔτ͢Δ ɹ౓ʹେྔͷίϯύΠϧΤϥʔ ɾPureSwiftϥΠϒϥϦ͕BetaόʔδϣϯΞοϓͷରԠΛ ɹ଴ͯͳ͍ͷͰPureSwiftϥΠϒϥϦΛఘΊΔ ɾObjCϥΠϒϥϦ΋Ұ෦ಈ͔ͳ͍ ɹiOS8 or Swiftʢ༧໿ޠͱόοςΠϯάʣ ɾσόοά࣌ʹม਺ͷ஋͕·ͬͨ͘ݟ͑ͳ͍

  25. 4XJGUͰΑ͔ͬͨ఺

  26. ଞͷݴޠΛΑ͘ݚڀ͞Εͯ࡞ΒΕͨϞμ ϯݴޠ͸΍Γ͍ͨ͜ͱ͕ΑΓॻ͚Δ ॻ͘ͷ͕ؾ͍͍࣋ͪʂ ؔ਺ϑΝʔετΫϥεɺΫϩʔδϟɺλϓ ϧɺλΠϓΠϯλʔϑΣʔεɺϓϩτίϧ ֦ுɺܕਪ࿦ɺ(FOFSJDT Α͔ͬͨ఺

  27. ίʔυྔ͕0CK$ʹൺ΂ͯ̒̌ˋ͙Β͍ ɹ 4XJGU͸දݱྗ͕ߴ͍ͷͰ୺తʹهड़Ͱ͖ ΔɺՄಡੑ΋ߴ͘ίʔυϦʔσΟϯά͠ ΍͍͢ Α͔ͬͨ఺

  28. ڧྗͳ&OVNʹΑΔঢ়ଶ؅ཧͱ 4XJUDIʹΑΔύλʔϯϚονϯά
 ʢঢ়ଶ෼ذॲཧʣ ֤ঢ়ଶͷϩδοΫΛ&OVNʹهड़
 Ͱ͖ΔͷͰہॴԽͰ͖Δ Α͔ͬͨ఺

  29. 4XJGUͱ0CK$ͷڞଘͨ͠։ൃ͕Մೳ ࠷ѱ4XJGUͰͲ͏ʹ΋Ͱ͖ͳ͍෦෼͸0CK$ Ͱهड़͢Ε͹͍͍ͱ͍͏҆৺ײ Ұ൪ࠔΔͷ͸
 EFpOF ϚΫϩΛۦ࢖ͨ͠ϥΠϒϥϦ 4XJGU͔Βݟ͑ͳ͍෦෼͸0CK$Ͱϥοϓ Α͔ͬͨ఺

  30. ࠔ͍ͬͯΔ͜ͱ

  31. 4XJGU΋αϙʔτ͞Ε͚ͨͲ ͪΌΜͱಈ͍ͯͳ͍ʁʂ

  32. 9DPEFͰ4XJGU͸Wʹͳ͕ͬͨ 9DPEF#FUBͰ͸ 4XJGUͷ࢓༷͕·ͨมߋ͞Εͯ ίϯύΠϧΤϥʔ͕ग़Δ ๞͘ͳ͖υϥεςΟοΫͳ 4XJGUݴޠͷվળ ૉ੖Β͍͠Ͱ͢Ͷʂ

  33. 4XJGUͷֶश

  34. J044%,ͷ஌͕ࣝ͋Ε͹ࢀೖোน͸௿͍ ֶशۂઢ΋ॳظͷஈ֊͔Β৳ͼ͍͖ͯ΍͍͢ 㱺ָ͍͠ʂ
 খ͞ΊͷίʔυϦʔσΟϯά͕͓͢͢Ί NBUUU͞Μͷ"MBNPpSF
 IUUQTHJUIVCDPN"MBNPpSF"MBNPpSF 0CK$ܦݧऀ

  35. ֎తཁҼͷ໰୊ ɾ৘ใˍαϯϓϧίʔυ͕গͳ͍ ɾωοτͰ͸#FUB৘ใ͕ೖΓཚΕΔ ɾϕετϓϥΫςΟεͷ໛ࡧ ɾ໰୊ൃੜ࣌ͷղܾ΋ࣗݾղܾ͢Δ
 ɹඞཁੑ J04ॳ৺ऀ ϞςΟϕʔγϣϯͰ৐Γ੾Δʂ

  36. ઃܭํ਑ɺίʔσΟϯάن໿ͳͲ ڞ௨ೝ͕ࣝͳ͍ͱهड़ʹଟ༷ੑ͕ ͋ΔͷͰ౷Ұ͠ʹ͍͘ νʔϜͰಋೖ͢ΔͳΒ 1VMM3FRʹΑΔίʔυϨϏϡʔͰ୲อ
 ͯ͠·ͨ͠

  37. 4XJGUίʔσΟϯάن໿!8BOUFEMZ

  38. ·ͱΊ ˒ 4XJGUͷ։ൃ͸ָ͍͠ʂ ˒ 4XJGUͷ஌ݟ΍ࠔͬͨ͜ͱ͸
 0OMJOF0⒐JOFڞʹ৘ใڞ༗ ˒ 4XJGUͰΞϓϦ͸࡞ΕΔʂ

  39. ` iOS, Android Rails ΤϯδχΞ ืूத hiring@wantedly.com ڵຯ͕͋Δํ͸ͪ͜Β͔Β͝࿈བྷ͍ͩ͘͞ ৽͍ٕ͠ज़ʹͲΜͲΜ௅ઓ͍ͨ͠ ϞόΠϧΤϯδχΞɾ΢Υϯςουʂʂ

    ͪ͜Β͔ΒͰ΋OKͰ͢