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で作るiOSアプリ開発入門_05
Search
jollyjoester
March 05, 2016
Education
0
84
Swiftで作るiOSアプリ開発入門_05
Schoo講義資料
jollyjoester
March 05, 2016
Tweet
Share
More Decks by jollyjoester
See All by jollyjoester
BengaluruでLTしてきた
jollyjoester
0
160
try! Swift Tokyo 2024
jollyjoester
0
100
エンジニアが直接会う場の価値について
jollyjoester
8
3.8k
来年Proposalを出すつもりで参加するときっともっと楽しい!
jollyjoester
0
170
My favorite sessions in WWDC 23
jollyjoester
0
460
みんなでAIと戯れよう
jollyjoester
0
39
続く勉強会の作り方
jollyjoester
1
670
Code for INZAIの歩み
jollyjoester
0
240
OSSへの貢献をサポートするための体制づくり
jollyjoester
0
1.1k
Other Decks in Education
See All in Education
執筆テーマの決め方
sapi_kawahara
1
170
4 занятие. Разбор бизнес-моделей и метод красной нити #ideaNN 9.02.2024.
karlov
0
230
Railsチュートリアルの歩き方 (第7版)
yasslab
PRO
1
1M
合理的配慮を知るワークショップ/Understanding Reasonable Accommodations (Workshop)
freee
0
1.4k
Tips for the Presentation - Lecture 2 - Advanced Topics in Big Data (4023256FNR)
signer
PRO
0
130
AI教育の未来『おもしろい』を作れる人材の育て方 #東京AI祭
o_ob
1
350
Tangible, Embedded and Embodied Interaction - Lecture 9 - Next Generation User Interfaces (4018166FNR)
signer
PRO
0
1.2k
全員参加型で会社を強くしていく活動を考えてみる
ikefukurou777
0
190
インターアクトクラブについて:国際ロータリー第2720地区インターアクト委員会 委員長・大分東ロータリークラブ 阿部 克哉 氏
2720japanoke
0
660
Avoin jakaminen ja Creative Commons -lisenssit
matleenalaakso
0
1.1k
子どもたち創造的活動機会の必要性に関する提言/creativehub
codeforeveryone
0
150
Human Perception and Colour Theory - Lecture 2 - Information Visualisation (4019538FNR)
signer
PRO
0
1.7k
Featured
See All Featured
Cheating the UX When There Is Nothing More to Optimize - PixelPioneers
stephaniewalter
273
13k
ピンチをチャンスに:未来をつくるプロダクトロードマップ #pmconf2020
aki_iinuma
76
41k
What's new in Ruby 2.0
geeforr
337
31k
CoffeeScript is Beautiful & I Never Want to Write Plain JavaScript Again
sstephenson
154
14k
The Mythical Team-Month
searls
215
42k
個人開発の失敗を避けるイケてる考え方 / tips for indie hackers
panda_program
60
14k
YesSQL, Process and Tooling at Scale
rocio
163
13k
In The Pink: A Labor of Love
frogandcode
138
21k
Fight the Zombie Pattern Library - RWD Summit 2016
marcelosomers
226
16k
Product Roadmaps are Hard
iamctodd
43
9.7k
Distributed Sagas: A Protocol for Coordinating Microservices
caitiem20
321
20k
Helping Users Find Their Own Way: Creating Modern Search Experiences
danielanewman
19
1.9k
Transcript
SwiftͰ࡞Δ iOSΞϓϦ։ൃೖ 5ݶɿ؆୯ͳ͍ΞϓϦͷاը͔Β։ൃ·ͰΛମݧ 1
ࣗݾհ ࣣౡҒ೭ʢͳͳ͠·ͻͰΏ͖ʣ Reproגࣜձࣾ iPhoneΞϓϦ։ൃ͕͖ 2
ࣗݾհ 3 https://repro.io
ຊίʔεͷඪ ۤΛΓӽ͑ͯ ָ͘͠ΞϓϦ։ൃͰ͖ΔΑ͏ʹͳΔʂ 4
෭ڭࡐ վగ൛ No.1εΫʔϧߨࢣਞʹΑΔ ੈքҰड͚͍ͨ iPhoneΞϓϦ։ൃͷतۀ (ٕज़ධࣾ) 5
ࠓճͷतۀͷඪ ࠓ·Ͱֶशͨ͠༰ΛԠ༻ͯ͠ اը͔Β։ൃ·ͰΛͬͯΈΔ 6
तۀͷલఏ݅ • ͓खݩͷMacʹXcode(version7.0Ҏ্)͕Πϯετʔ ϧ͞Ε͍ͯΔ͜ͱ 7
ຊͷϝχϡʔ • ΞϓϦͷاըΛ͢Δ • ΞϓϦͷݟͨΛͭ͘Δ • ΞϓϦͷಈ࡞Λͭ͘Δ 8
ͦͷલʹલճͷ࣭͝ ʢΞϓϦͷϓϩάϥϛϯάʹ༻͍ΔSwiftΛֶͿʣ • AutoLayoutͷॎํͷϨΠΞτόϥϯεʢ֤ϞσϧʣΛͲ͏ͨ͠ Βྑ͍͔ڭ͍͖͍͑ͯͨͩͨɻࢲɺશͯAutoLayoutͰΈ͍ͨͰ ͕͢͏·͍͔ͣ͘ํͳ͘Ұ෦ίʔυʹͯΧόʔ͍ͯ͠·͢ɻ from લా ܒ͞Μ ‣
શ෦AutoLayoutͰΧόʔ͢Δͷ͕͍͜͠ͱͪΖΜ͋Γ· ͢ɻྫ͑ΞχϝʔγϣϯͳͲಈతʹը໘Λม͑Δ߹ͳͲ ίʔυͱͷΈ߹Θͤવ͋ΓͰ͢ɻ ‣ Teratailͱ͍͏ΤϯδχΞ͚ͷ࣭αΠτͰιʔείʔυ ΩϟϓνϟʔͳͲؚΊ࣭ͯͰ͖·͢ɻͦ͜Ͱ͍͑ͯΔ ͷͰΑ͚Εৄࡉͦ͜Ͱڭ͍͑ͯͩ͘͞ʂ 9
ͦͷલʹલճͷ࣭͝ ʢΞϓϦͷϓϩάϥϛϯάʹ༻͍ΔSwiftΛֶͿʣ • খܕΛ܁Γ্͛ͯܕʹม͢Δ͜ͱͰ͖·͢ ͔ʁ from Kenta Kataoka ‣ Int(ceil(2.5))Έ͍ͨʹ͢ΔͱͰ͖·͢ɻ
10
ͦͷલʹલճͷ࣭͝ ʢΞϓϦͷϓϩάϥϛϯάʹ༻͍ΔSwiftΛֶͿʣ • ग़൛ܦݧͷ͋Δઌੜʹ࣭Ͱ͢ɻଞݴޠͱҟͳΓɺSwift ʢXcodeʣͳͥόʔδϣϯ্͕͕Δͱաڈόʔδϣϯͱޓ ੑ͕ͳ͍ͷͰ͔͢ʁ·ͨɺॻ੶վగ൛͕සൟʹग़͍ͯΔSwift ٕज़ॻͷՁ͕֨ࡾઍԁҎ্͢Δͷ্هͱ͕ؔ͋ΔͷͰ͔͢ʁ ͋Δٕज़ॻͷதͰසൟʹվగ൛͕ग़͍ͯͯՁ֨Ұ൪ߴ͍Α ͏ʹײ͍ͯ͡·͢ɻ͜ΕΒͷཧ༝Λ͝ଘͰ͔͢ʁ from
อࢤ ݈Ұ͞Μ ‣ ޓੑ͕ͳ͍͜ͱʹ͍ͭͯਐԽΛૣΊΔͨΊʹ͋͑ͯ Γࣺ͍ͯͯΔΜͩΖ͏ͱਪଌ͍ͯ͠·͢ɻՁ֨ʹ͍ͭͯग़ ൛ࣾͷதͷਓͰͳ͍ͷͰΘ͔Γ·ͤΜm(_ _)m 11
ͦͷલʹલճͷ࣭͝ ʢΞϓϦͷϓϩάϥϛϯάʹ༻͍ΔSwiftΛֶͿʣ • ϦϓϩTγϟπཉ͍͚͠ͲɺͲ͏͢ΕखʹೖΔΜͩʁ from อࢤ ݈Ұ͞Μ ‣ ੈքʹ̏ண͔͠ͳ͍وॏͳҰͰ͢ʂ Repro͕ྲྀߦΕͦͷ͏ͪɾɾɾ
12
Έͳ͞·࣭͋Γ·ͨ͠Βͥͻ࣭͍ͩ͘͝͞ɻ तۀதʹऔΓ্͛ΒΕͳͯ͘ ग़དྷΔݶΓ͓͑͠·͢ʂ ͳΔ΄ͲʂͱࢥͬͨΒʮͳΔ΄ͲʯϘλϯΛ ԡ͍͚ͯͨͩ͠ΔͱྭΈʹͳΓ·͢(`ŋωŋ´) 13
ΞϓϦͷاըΛ͢Δ 14
ΞϓϦͷاը • طଘͷΞϓϦΛͬͯͯෆศͩͳ͊ • ͜ΜͳΞϓϦ͕͋Εศརͳͷʹͳ͊ • ͜ͷΞϓϦ͛͢ʔԶ࡞ͬͯΈ͍ͨʂ ‣ ࢥͬͨΒଈϝϞʂ 15
ΞϓϦͷاը • طଘͷΞϓϦΛͬͯͯෆศͩͳ͊ • ͜ΜͳΞϓϦ͕͋Εศརͳͷʹͳ͊ • ͜ͷΞϓϦ͛͢ʔԶ࡞ͬͯΈ͍ͨʂ ‣ ࢥͬͨΒଈϝϞʂ 16
ΞϓϦͷاը ߟ͑͗͢Δલʹ࡞Γ࢝ΊΑ͏ʂ ↓ ߟ͑͗͢Δͱ࡞Γ࢝ΊΔલʹఘΊͪΌ͏ 17
ΞϓϦͷاը ߟ͑͗͢Δલʹ࡞Γ࢝ΊΑ͏ʂ ↓ ߟ͑͗͢Δͱ࡞Γ࢝ΊΔલʹఘΊͪΌ͏ 18
ΞϓϦͷاը ͱʹ͔͘खΛಈ͔ͯ͠ Ͱ͖Δͱ͜Ζ·ͰΖ͏ʂ ʢϦϦʔεʹ͍ͨΒͳͯ͘࡞Γ͔͚ͷΞϓϦ͕Կेͱ͋Γ·͢(T T)ʣ 19
ΞϓϦͷاը ͢Ͱʹ͋ΔΞϓϦͷਅࣅΛ͓͢͢Ί ↓ ٕज़తʹ࣮ݱͰ͖Δ͜ͱ͕Θ͔ͬͯΔ ͬͯΒ͑Δ͜ͱ͕Θ͔͍ͬͯΔ ͨͩ͠ɺLineͱ͔ͦ͏͍͏ͷʹ͢Δ߹શ෦Ͱͳ͘ػೳͷҰ෦Λਅࣅ͢Δͱ͔ʹ͠Α͏ ͋ΕԿेਓͱ͍͏ϕςϥϯΤϯδχΞ͕͍͢͝ظ͔͚ؒͯ࡞͍ͬͯΔͷͰ^^;;; 20
ΞϓϦͷاը ͢Ͱʹ͋ΔΞϓϦͷਅࣅΛ͓͢͢Ί ↓ ٕज़తʹ࣮ݱͰ͖Δ͜ͱ͕Θ͔ͬͯΔ ͬͯΒ͑Δ͜ͱ͕Θ͔͍ͬͯΔ ͨͩ͠ɺLineͱ͔ͦ͏͍͏ͷʹ͢Δ߹શ෦Ͱͳ͘ػೳͷҰ෦Λਅࣅ͢Δͱ͔ʹ͠Α͏ ͋ΕԿेਓͱ͍͏ϕςϥϯΤϯδχΞ͕͍͢͝ظ͔͚ؒͯ࡞͍ͬͯΔͷͰ^^;;; 21
ΞϓϦͷاը ΞΠσΞ͕ग़ͨΒ ↓ ؆୯ͳϝϞॻ͖Λॻ͍ͯΈΔ 22
ΞϓϦͷاը 23
ΞϓϦͷاը ʢΞΠσΞʣ ࡞ͬͯΈΔʂ 24 ͜͠ΕͰ͍͚ͦ͏ͩͧͬͯͷ͕Ͱ͖ͨΒ • ͲΜͳϢʔβʔ͕ • ͍ͭ •
ͲΜͳγνϡΤʔγϣϯͰ • Ͳͷ͘Β͍͏͔ʁ Έ͍ͨͳΑΓৄࡉͳاըΛཱͯ·͢ɻ ͦΕϦϦʔε४උͳͲͱҰॹʹୈ10ճͰ͓͢Δ༧ఆʂ
ΞϓϦͷاը ߹ʹΑͬͯఘΊ؊৺Ͱ͢ɻ Ϩϕϧͷߴ͍ͷΛ࡞Ζ͏ͱͯͥ͠ΜͥΜਐ·ͳ͍ΑΓ ϨϕϧΛ͑ͯͤ͞Δํ͕ઌʹਐΊͨΓ͠·͢ ͋Δఔษڧ͔ͯ͠ΒΞϓϦ։ൃΛ࡞Ζ͏ͱ͍͏ͷ᠘Ͱ ͍͠༰͕ग़͖ͯͨ࣌ͰఘΊͯ͠·ͬͨΓ͠·͢ Կ͔ΛֶΜͩ࣌ͰࣗͳΓʹ࡞ΕΔͷΛ࡞Ζ͏ʂ 25
ΞϓϦͷݟͨΛͭ͘Δ 26
ΞϓϦͷݟͨΛͭ͘Δ 27
ΞϓϦͷݟͨΛͭ͘Δ ʢϓϩδΣΫτͷ࡞ʣ 28
ΞϓϦͷݟͨΛͭ͘Δ ʢStoryboardͷηοτʣ 29
ΞϓϦͷݟͨΛͭ͘Δ ʢLabelͱButtonΛஔʣ 30
ΞϓϦͷݟͨΛͭ͘Δ ʢλΠτϧLabelͷઃఆʣ 31
ΞϓϦͷݟͨΛͭ͘Δ ʢλΠτϧLabelͷઃఆʣ 32
ΞϓϦͷݟͨΛͭ͘Δ ʢ͏Ϙλϯͷઃఆʣ 33
ΞϓϦͷݟͨΛͭ͘Δ ʢ͏Ϙλϯͷઃఆʣ 34
ΞϓϦͷݟͨΛͭ͘Δ ʢಈLabelͷઃఆʣ 35
ΞϓϦͷݟͨΛͭ͘Δ ʢಈLabelͷઃఆʣ 36
ΞϓϦͷݟͨΛͭ͘Δ ʢ݁ՌLabelͷઃఆʣ 37
ΞϓϦͷݟͨΛͭ͘Δ ʢ݁ՌLabelͷઃఆʣ 38
ΞϓϦͷݟͨΛͭ͘Δ ʢPreviewͷ֬ೝʣ 39
ΞϓϦͷݟͨΛͭ͘Δ ʢPreviewͷ֬ೝɿԣʣ 40
ΞϓϦͷݟͨΛͭ͘Δ ʢॎํʹ͔͠ରԠ͠ͳ͍ɿDevice Orientationͷઃఆʣ 41
ΞϓϦͷݟͨΛͭ͘Δ ʢγϛϡϨʔλʔͰճస͠ͳ͍͔֬ೝʣ 42 γϛϡϨʔλʔͷճసcommand + ← or →
ΞϓϦͷಈ࡞Λͭ͘Δ 43
44 ΞϓϦͷಈ࡞Λͭ͘Δ ʢͲΜͳಈ࡞ʹ͍͔ͨ͠ʁʣ ಈLabelɺ݁ՌLabelɺ ϘλϯΛϓϩάϥϜͰ ૢ࡞͍ͨ͠ʂ
45 ΞϓϦͷಈ࡞Λͭ͘Δ ʢϘλϯͱιʔείʔυΛ݁Ϳʣ
46 ΞϓϦͷಈ࡞Λͭ͘Δ ʢϘλϯͱιʔείʔυΛ݁Ϳʣ
47 ΞϓϦͷಈ࡞Λͭ͘Δ ʢಈLabelͱιʔείʔυΛ݁Ϳʣ
48 ΞϓϦͷಈ࡞Λͭ͘Δ ʢಈLabelͱιʔείʔυΛ݁Ϳʣ
49 ΞϓϦͷಈ࡞Λͭ͘Δ ʢ݁ՌLabelͱιʔείʔυΛ݁Ϳʣ
50 ΞϓϦͷಈ࡞Λͭ͘Δ ʢ݁ՌLabelͱιʔείʔυΛ݁Ϳʣ
51 ΞϓϦͷಈ࡞Λͭ͘Δ ʢ݁Ϳࡍͷҙʣ
52 ΞϓϦͷಈ࡞Λͭ͘Δ ʢ݁Ϳࡍͷҙʣ
53 ΞϓϦͷಈ࡞Λͭ͘Δ ʢ݁Ϳࡍͷҙʣ
54 ΞϓϦͷಈ࡞Λͭ͘Δ ʢ݁Ϳࡍͷҙʣ
55 ΞϓϦͷಈ࡞Λͭ͘Δ ʢϘλϯΛԡͨ͠ͱ͖ͷॲཧΛϓϩάϥϜΛॻ͘ʣ
56 ʂ
57 ΞϓϦͷಈ࡞Λͭ͘Δ ʢͦΕͧΕͷ͕ग़Δ֬Λม͑ͯΈΔʣ
ຊͷ͓͞Β͍ • ࢥ͍͍ͭͨΒ͙͢࡞Ζ͏ʂ • ΞϓϦ࡞ΓͷྲྀΕ ‣ ΞϓϦͷݟͨΛ࡞ͬͯ ‣ StoryboardͱιʔείʔυΛଓͯ͠ ‣
ϓϩάϥϜΛॻ͘ 58
ࠂ 59 http://love-swift.connpass.com/ ݄࣍̏̎̕ʂ
ࠂ 60 http://liginc.co.jp/?p=228155 LIGϒϩά࿈ࡌ࢝Ί·ͨ͠ʂ