Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
Swiftでアプリを開発した体験記
Search
yohei sugigami
October 16, 2014
Technology
0
110
Swiftでアプリを開発した体験記
SwiftでiOS8 Day1 に向けてリリースしたSIORIの開発記
yohei sugigami
October 16, 2014
Tweet
Share
More Decks by yohei sugigami
See All by yohei sugigami
Snapshot Testing in iOS
susieyy
6
2.9k
Redux with iOS
susieyy
0
1.1k
Why use Redux in iOS
susieyy
5
2.4k
ReduxRxを活用したアプリアーキテクチャ
susieyy
8
2.1k
Redux+Rxを活用したiOSアプリアーキテクチャ
susieyy
10
1.8k
Swaggerで始めるAPI定義管理とコードジェネレート
susieyy
14
7.2k
開発中のアプリをXcode9 & Swift4に移行しました
susieyy
0
3.5k
Wantedly People ViewModel and Rx
susieyy
7
6.8k
ReduxDevTools' power to the iOS development
susieyy
0
770
Other Decks in Technology
See All in Technology
AOAI Dev Day LLMシステム開発 Tips集
hirosatogamo
15
3.8k
Scaling Technical Excellence at 104: Evolution in AWS and Developer Empowerment
scotthsieh825
1
160
ABEMAにおけるLLMを用いたコンテンツベース推薦システム導入と効果検証
cyberagentdevelopers
PRO
1
750
[NIKKEI Tech Talk]Bias for Action!! 実践から学ぶための仕組とコミュニティ / Community for Practice and Learning
kanamasa
0
280
頼られるのが大好きな 皆さんへ - 支援相手との期待の合わせ方、突き放し方 -/For_people_who_like_to_be_relied_on
naitosatoshi
1
290
OSSコミットしてZennの課題を解決した話
dyoshikawa1993
0
150
セキュリティ研修 Day1【MIXI 24新卒技術研修】
mixi_engineers
PRO
0
160
DDDにおける認可の扱いとKotlinにおける実装パターン / authorization-for-ddd-and-kotlin-implement-pattern
urmot
4
390
楽しくGoを学び合う、LayerXの勉強会文化 / LayerX's study culture of having fun and learning Go together
ar_tama
2
350
MySQLのロックの種類とその競合
yoku0825
6
1.6k
LINE WORKSへ簡単通知!Incoming Webhookアプリの紹介
mmclsntr
0
110
AWSでRAGを作る法方
sonoda_mj
1
140
Featured
See All Featured
How to Think Like a Performance Engineer
csswizardry
4
590
Rails Girls Zürich Keynote
gr2m
93
13k
StorybookのUI Testing Handbookを読んだ
zakiyama
15
4.9k
Teambox: Starting and Learning
jrom
130
8.6k
Put a Button on it: Removing Barriers to Going Fast.
kastner
58
3.3k
The Art of Programming - Codeland 2020
erikaheidi
48
13k
Building Effective Engineering Teams - LeadDev
addyosmani
47
2.2k
Agile that works and the tools we love
rasmusluckow
325
20k
[RailsConf 2023 Opening Keynote] The Magic of Rails
eileencodes
17
8.7k
Visualizing Your Data: Incorporating Mongo into Loggly Infrastructure
mongodb
36
9.1k
A Philosophy of Restraint
colly
200
16k
ピンチをチャンスに:未来をつくるプロダクトロードマップ #pmconf2020
aki_iinuma
90
47k
Transcript
Swift LT @Wantedly 2014-10-16 yohei sugigami SwiftͰΞϓϦΛ։ൃͨ͠ମݧه
ਿ্༸ฏ εΪΨϛϤϔΠ 5XJUUFS(JU)VC!TVTJFZZ J04ΤϯδχΞ͍ ݄͔̒Β8BOUFEMZ+PJO
݄̕J04%BZ 4JPSJϦϦʔε
4JPSJ ϦϦʔεJ04ͱಉ࣌ʢظؒλΠτʣ ։ൃ#FUB൛ͷ4XJGU9DPEFˍJ04 νϟϨϯδϯάͳ6*69
Ͳ.ײඬ͏ ָ͍͠։ൃͰͨ͠ ɾТɾʆ
%&.0
։ൃεέδϡʔϧ 6݄2 iOS8 Swiftൃද 7݄த० ։ൃ։࢝ 9্݄० ਃ ɾ7݄த०͔ΒϓϩλΠϓ࡞ ɾ8݄͔Βຊ֨։ൃ
6݄1 Wantedlyೖࣾ ←̎ϲ݄ऑ→ 7݄ Swift࠾༻ܾఆ
։ൃମ੍໊ σΟϨΫγϣϯ iOS (Swift) Server (Rails) iOS (Swift) ͚ͩ σβΠϯ
iOS (Swift) εʔύʔΤϯδχΞ ৽ถΤϯδχΞ εʔύʔσβΠφ
ΈΜͳͰ4XJGUίʔσΟϯά
6݄ 9݄ 7݄ 8݄ ϓϩδΣΫτ͕࢝·Δલ ݄ʙ݄̓த०
ηϯηʔγϣφϧͳ4XJGUൃද "QQMFͷຊؾ͕Θͬͯ͘Δ
·ͣษڧˍใऩू ษڧձΛ։͍ͯSwiftͷݟΛ ΈΜͳͰσΟεΧογϣϯ Swiftʹؔ৺͕͋ΔΤοδͷ ޮ͍ͨਓ͕ͨͪࢀՃͯ͘͠Ε ͨͷͰೱΏ͍ใަ͕ Ͱ͖·ͨ͠
ௐͨ͜ͱΛΞτϓοτ QiitaʹΞτϓοτ Swiftͷهࣄ̍̔ຊ ίϝϯτཝͰٞͯ͠ ॿ͚߹͍
4XJGUͰͭͳ͕ͬͨਓͨͪͷ͓͔͛ 4XJGUྗ͕͍ͭͨͷ
4XJGUָ͍͠Ͷ ࣍ͷϓϩδΣΫτͰ͍͍ͨʂ
৽نϓϩδΣΫτൃ ݄̓த०ʙ 6݄ 9݄ 7݄ 8݄ 4XJGUͰ։ൃܾ·ͬͯ·ͤΜͰͨ͠
ϓϩτλΠϓΛ4XJGUͰ࡞ͬͯΈΔ ࢼ࡞̍߸Ξχϝʔγϣϯ͢ΔΑ ࠓͷσβΠϯͱશવҧ͏͆
ϓϩτλΠϓΛ4XJGUͰ࡞ͬͯΈΔ ࢼ࡞̎߸ 3BJMTαʔόͱ௨৴͢ΔΑ 3FTU,JUΛݕূ0, ͜ͷ͜ΖهࣄΛݟΔͷ ॎεΫϩʔϧͰͨ͠ ࠓԣʣ
4XJGU࠾༻ܾఆʂ ݄̓ ͋ͱΓ̍ϲ݄ͪΐͬͱ ༷ࡦఆͱϓϩλΠϓ ظؒʹ4XJGUΛݕূ ߦ͚ͦ͏ʂ
6݄ 9݄ 7݄ 8݄ ຊ֨։ൃ ݄̔ʙ্݄̕०
݄̔த०69ͷ͘ͳ͖ٻ 69ͷมߋͱ*OUFSBDUJWF5SBOTJUJPOͷ׆༻
#FUB൛ͷ9DPEFJ04 ˍ4XJGUʹ·͞ΕΔ
#FUB൛ͷ9DPEFJ04ˍ4XJGUʹ·͞ΕΔ ɾ͕ൃੜͨ͠ͱ͖ʹXcode, iOS8, Swiftͷ ɹͲͷϨΠϠʔͷ͔Γ͚͕ඞཁ ɹશ෦Beta ͦΕͧΕ҆ఆ͠ͳ͍͠ڍಈ͕͓͔͍͆͠ ɾXcode͕Α͘མͪΔ ɾγϯλοΫεϋΠϥΠτˍೖྗิ͕
ɹΑ͘ޮ͔ͳ͘ͳΔ
#FUB൛ͷ9DPEFJ04ˍ4XJGUʹ·͞ΕΔ ɾXcodeBeta1͔ΒBeta7·ͰΞοϓσʔτ͢Δ ɹʹେྔͷίϯύΠϧΤϥʔ ɾPureSwiftϥΠϒϥϦ͕BetaόʔδϣϯΞοϓͷରԠΛ ɹͯͳ͍ͷͰPureSwiftϥΠϒϥϦΛఘΊΔ ɾObjCϥΠϒϥϦҰ෦ಈ͔ͳ͍ ɹiOS8 or Swiftʢ༧ޠͱόοςΠϯάʣ ɾσόοά࣌ʹมͷ͕·ͬͨ͘ݟ͑ͳ͍
4XJGUͰΑ͔ͬͨ
ଞͷݴޠΛΑ͘ݚڀ͞Εͯ࡞ΒΕͨϞμ ϯݴޠΓ͍ͨ͜ͱ͕ΑΓॻ͚Δ ॻ͘ͷ͕ؾ͍͍࣋ͪʂ ؔϑΝʔετΫϥεɺΫϩʔδϟɺλϓ ϧɺλΠϓΠϯλʔϑΣʔεɺϓϩτίϧ ֦ுɺܕਪɺ(FOFSJDT Α͔ͬͨ
ίʔυྔ͕0CK$ʹൺͯ̒̌ˋ͙Β͍ ɹ 4XJGUදݱྗ͕ߴ͍ͷͰతʹهड़Ͱ͖ ΔɺՄಡੑߴ͘ίʔυϦʔσΟϯά͠ ͍͢ Α͔ͬͨ
ڧྗͳ&OVNʹΑΔঢ়ଶཧͱ 4XJUDIʹΑΔύλʔϯϚονϯά ʢঢ়ଶذॲཧʣ ֤ঢ়ଶͷϩδοΫΛ&OVNʹهड़ Ͱ͖ΔͷͰہॴԽͰ͖Δ Α͔ͬͨ
4XJGUͱ0CK$ͷڞଘͨ͠։ൃ͕Մೳ ࠷ѱ4XJGUͰͲ͏ʹͰ͖ͳ͍෦0CK$ Ͱهड़͢Ε͍͍ͱ͍͏҆৺ײ Ұ൪ࠔΔͷ EFpOF ϚΫϩΛۦͨ͠ϥΠϒϥϦ 4XJGU͔Βݟ͑ͳ͍෦0CK$Ͱϥοϓ Α͔ͬͨ
ࠔ͍ͬͯΔ͜ͱ
4XJGUαϙʔτ͞Ε͚ͨͲ ͪΌΜͱಈ͍ͯͳ͍ʁʂ
9DPEFͰ4XJGUWʹͳ͕ͬͨ 9DPEF#FUBͰ 4XJGUͷ༷͕·ͨมߋ͞Εͯ ίϯύΠϧΤϥʔ͕ग़Δ ͘ͳ͖υϥεςΟοΫͳ 4XJGUݴޠͷվળ ૉΒ͍͠Ͱ͢Ͷʂ
4XJGUͷֶश
J044%,ͷ͕ࣝ͋Εࢀೖোน͍ ֶशۂઢॳظͷஈ֊͔Β৳ͼ͍͖͍ͯ͢ 㱺ָ͍͠ʂ খ͞ΊͷίʔυϦʔσΟϯά͕͓͢͢Ί NBUUU͞Μͷ"MBNPpSF IUUQTHJUIVCDPN"MBNPpSF"MBNPpSF 0CK$ܦݧऀ
֎తཁҼͷ ɾใˍαϯϓϧίʔυ͕গͳ͍ ɾωοτͰ#FUBใ͕ೖΓཚΕΔ ɾϕετϓϥΫςΟεͷࡧ ɾൃੜ࣌ͷղܾࣗݾղܾ͢Δ ɹඞཁੑ J04ॳ৺ऀ ϞςΟϕʔγϣϯͰΓΔʂ
ઃܭํɺίʔσΟϯάنͳͲ ڞ௨ೝ͕ࣝͳ͍ͱهड़ʹଟ༷ੑ͕ ͋ΔͷͰ౷Ұ͠ʹ͍͘ νʔϜͰಋೖ͢ΔͳΒ 1VMM3FRʹΑΔίʔυϨϏϡʔͰ୲อ ͯ͠·ͨ͠
4XJGUίʔσΟϯάن!8BOUFEMZ
·ͱΊ ˒ 4XJGUͷ։ൃָ͍͠ʂ ˒ 4XJGUͷݟࠔͬͨ͜ͱ 0OMJOF0⒐JOFڞʹใڞ༗ ˒ 4XJGUͰΞϓϦ࡞ΕΔʂ
` iOS, Android Rails ΤϯδχΞ ืूத
[email protected]
ڵຯ͕͋Δํͪ͜Β͔Β͝࿈བྷ͍ͩ͘͞ ৽͍ٕ͠ज़ʹͲΜͲΜઓ͍ͨ͠ ϞόΠϧΤϯδχΞɾΥϯςουʂʂ
ͪ͜Β͔ΒͰOKͰ͢