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 Student Challenge Distinguished Winnerに選出...
Search
CyberAgent
PRO
June 03, 2024
Programming
1
310
Swift Student Challenge Distinguished Winnerに選出していただくまで
Swift Student Challengeに提出したアプリの開発について発表します。
CyberAgent
PRO
June 03, 2024
Tweet
Share
More Decks by CyberAgent
See All by CyberAgent
The Composable Architecture (TCA) を用いたAmebaのリアーキテクチャ
cyberagentdevelopers
PRO
0
10
SwiftUI導入から1年、SwiftUI導入とVueFluxライクな状態管理
cyberagentdevelopers
PRO
0
5
大規模プロジェクトにおける段階的な技術刷新
cyberagentdevelopers
PRO
0
9
SwiftUI移行のためのインプレッショントラッキング基板の構築
cyberagentdevelopers
PRO
0
7
Unity6世代のアップデートをサラッとまとめ
cyberagentdevelopers
PRO
0
330
Unity6の新機能 STPについての話
cyberagentdevelopers
PRO
0
180
Unity 6 シェーダーWarmupガイド
cyberagentdevelopers
PRO
0
220
Unity6 の Android周辺の アップデートについて
cyberagentdevelopers
PRO
1
220
ジャンプTOONにおけるサイトマップの自動生成手法について
cyberagentdevelopers
PRO
0
63
Other Decks in Programming
See All in Programming
バッチを作らなきゃとなったときに考えること
irof
2
550
CloudNativePGを布教したい
nnaka2992
0
120
自力でTTSモデルを作った話
zgock999
0
120
SwiftUI移行のためのインプレッショントラッキング基盤の構築
kokihirokawa
0
160
GoとPHPのインターフェイスの違い
shimabox
2
210
iOSでQRコード生成奮闘記
ktcryomm
2
120
『テスト書いた方が開発が早いじゃん』を解き明かす #phpcon_nagoya
o0h
PRO
9
2.5k
Honoとフロントエンドの 型安全性について
yodaka
7
1.5k
1年目の私に伝えたい!テストコードを怖がらなくなるためのヒント/Tips for not being afraid of test code
push_gawa
1
640
sappoRo.R #12 初心者セッション
kosugitti
0
280
Drawing Heighway’s Dragon- Recursive Function Rewrite- From Imperative Style in Pascal 64 To Functional Style in Scala 3
philipschwarz
PRO
0
130
未経験でSRE、はじめました! 組織を支える役割と軌跡
curekoshimizu
1
200
Featured
See All Featured
Fantastic passwords and where to find them - at NoRuKo
philnash
51
3k
Designing Experiences People Love
moore
140
23k
Design and Strategy: How to Deal with People Who Don’t "Get" Design
morganepeng
129
19k
Code Review Best Practice
trishagee
67
18k
Imperfection Machines: The Place of Print at Facebook
scottboms
267
13k
Making the Leap to Tech Lead
cromwellryan
133
9.1k
Automating Front-end Workflow
addyosmani
1369
200k
Testing 201, or: Great Expectations
jmmastey
42
7.2k
Optimizing for Happiness
mojombo
377
70k
Stop Working from a Prison Cell
hatefulcrawdad
268
20k
Principles of Awesome APIs and How to Build Them.
keavy
126
17k
The Art of Programming - Codeland 2020
erikaheidi
53
13k
Transcript
CA .swift#20 Swift Student Challenge Distinguished Winnerʹબग़͍ͯͨͩ͘͠·Ͱ
ࣗݾհ
ࣗݾհ w ϋϦʔʢIBSJJ@ʣ w ੨ࢁֶӃେֶܦࡁֶ෦ݱܦࡁσβΠϯֶՊ# w $"5FDI-PVOHF J04 w
झຯࢄาɺαοΧʔ؍ઓ (JU)VC 9
Swift Student Challenge🤔
Swift Student Challengeͱ
ग़య: Swift Student Challenge (https://developer.apple.com/jp/swift-student-challenge/)
ग़యɿSwift Student ChallengeʮࢀՃࢿ֨ʯ(https://developer.apple.com/jp/swift-student-challenge/eligibility/)
ΠϯλϥΫςΟϒ🤔
ରతͳମݧ
ରతͳମݧ
ཁ݅ w ؒ w ରతͳମݧ w ϩʔΧϧͰಈ࡞͢Δ w TXJGUQNܗࣜͰఏग़ w
Ұ෦έʔύϏϦςΟͷར༻ෆՄ w ʢΞϓϦ՝ۚFUD
ࠓճఏग़ͨ͠ΞϓϦ
ը૾ग़యɿ - WWDC24 (https://developer.apple.com/wwdc24/special- event/) - Apple Vision Pro (https://www.apple.com/jp/newsroom/
2023/06/introducing-apple-vision-pro/) - MacBook Pro (https://www.apple.com/jp/shop/buy- mac/macbook-pro) - iPadPro(https://www.apple.com/jp/newsroom/2024/05/ apple-unveils-stunning-new-ipad-pro-with-m4-chip- and-apple-pencil-pro/) - iPhone 15 Pro(https://www.apple.com/shop/buy- iphone/iphone-15-pro) - Swift(https://developer.apple.com/swift/resources/) - Xcode 15 (https://developer.apple.com/xcode/)
֓ཁ w λʔήοτ w খֶੜʙதֶੜ w ϩʔΧϧͷࣸਅΛύζϧͱ͠ ͯ༡Ϳ͜ͱ͕Ͱ͖Δɻ &Y
ϖοτͷࣸਅ ཱྀߦઌͰͷࣸਅ
εέδϡʔϧ ग़య: Swift Student Challenge (https://developer.apple.com/jp/swift-student-challenge/) ΞΠσΞग़͠ 10݄ʙ1݄ ཁ݅ఆٛ 1݄ʙ2݄લ
࣮ 2݄ ςετ 2݄ ఏग़
࣮ͷྲྀΕ ΞΠσΞग़͠ 10݄ʙ1݄ ཁ݅ఆٛ 1݄ʙ2݄લ ࣮ 2݄ ςετ 2݄ ఏग़
ΞΠσΞग़͠ w ͬͨ͜ͱ w ࢥ͍͍ͭͨ͜ͱΛॻ͘ ΞΠσΞग़͠ 10݄ʙ1݄ ཁ݅ఆٛ 1݄ʙ2݄લ ࣮
2݄ ςετ 2݄
ߏஈ֊ͰͷΞΠσΞ w ύζϧͷܗࣜ w ϐʔεΛࣗ༝ʹҠಈͤ͞Δ w ϐʔεͷԜತɺճస w ฒସ͑ w
εϫΠϓͯ͠ฒସ͑Δܗࣜ ΞΠσΞग़͠ 10݄ʙ1݄ ཁ݅ఆٛ 1݄ʙ2݄લ ࣮ 2݄ ςετ 2݄ ఏग़
ߏஈ֊ͰͷΞΠσΞ w ύζϧͷܗࣜ w ϐʔεΛࣗ༝ʹҠಈͤ͞Δ w ϐʔεͷԜತɺճస w ฒସ͑ w
εϫΠϓͯ͠ฒସ͑Δܗࣜ ΞΠσΞग़͠ 10݄ʙ1݄ ཁ݅ఆٛ 1݄ʙ2݄લ ࣮ 2݄ ςετ 2݄ ఏग़
ΞΠσΞग़͠ 10݄ʙ1݄ ཁ݅ఆٛ 1݄ʙ2݄લ ࣮ 2݄ ςετ 2݄ ఏग़ ߏஈ֊ͰͷΞΠσΞ
w ύζϧͷܗࣜ w ϐʔεΛࣗ༝ʹҠಈͤ͞Δ w ϐʔεͷԜತɺճస w ฒସ͑ w εϫΠϓͯ͠ฒସ͑Δܗࣜ ϓϩτλΠϓ࡞
۩ମతͳ࣮ ΞΠσΞग़͠ 10݄ʙ1݄ ཁ݅ఆٛ 1݄ʙ2݄લ ࣮ 2݄ ςετ 2݄ ఏग़
ϓϩτλΠϓ w తɿૢ࡞ײΛ͔֬ΊΔ w ࣸਅ͔ΒϐʔεʹՃ͢Δ w ਖ਼ํܗɺʷʙʷ w Ճͨ͠ϐʔεΛࣗ༝ʹҠಈͰ͖Δঢ়ଶʹ͢Δ ΞΠσΞग़͠
10݄ʙ1݄ ཁ݅ఆٛ 1݄ʙ2݄લ ࣮ 2݄ ςετ 2݄ ఏग़
ϓϩτλΠϓ w .BYʷ w ࢥͬͯͨΑΓ͍͠ w ΞΠσΞஈ֊ w ύζϧͷܗࣜ w
ϐʔεΛࣗ༝ʹҠಈͤ͞Δ w ϐʔεͷԜತɺճస
ϓϩτλΠϓ w ʷ w ࢥͬͯͨΑΓ͍͠ w ΞΠσΞஈ֊ w ύζϧͷܗࣜ w
ϐʔεΛࣗ༝ʹҠಈͤ͞Δ w ϐʔεͷԜತɺճస
Ϳ͔ͭͬͨ՝
՝1.ࣸਅ͔ΒϐʔεͷՃ
՝1.ࣸਅ͔ΒϐʔεͷՃ
՝1.ࣸਅ͔ΒϐʔεͷՃ
՝1.ࣸਅ͔ΒϐʔεͷՃ ग़య: Apple Developer Document(https://developer.apple.com/documentation/ coregraphics/cgimage/1454683-cropping)
՝2.ύζϧϘʔυͱϐʔεͷඳը
՝2.ύζϧϘʔυͱϐʔεͷඳը
՝2.ύζϧϘʔυͱϐʔεͷඳը ϐʔεɾϘʔυͷఆٛ w ϐʔεͷఆٛ
՝2.ύζϧϘʔυͱϐʔεͷඳը ϐʔεɾϘʔυͷఆٛ w Ϙʔυͷఆٛ
՝2.ύζϧϘʔυͱϐʔεͷඳը ϐʔεɾϘʔυͷఆٛ w Ϙʔυͷఆٛ
՝2.ύζϧϘʔυͱϐʔεͷඳը ग़య: Apple Developer Document(https://developer.apple.com/ documentation/swiftui/lazyvgrid)
՝3.ϐʔεͷਖ਼ޡఆ
՝3.ϐʔεͷਖ਼ޡఆ
՝3.ϐʔεͷਖ਼ޡఆ w ը໘ͷඳը࣌ʹϐʔεͷਖ਼͍͠ҐஔΛอ࣋ w υϥοάதʹਖ਼ղͷҐஔʹϐʔεͷׂ͕ೖΔ w ˠ͕੨͔Β৭ʹมΘΔ
Ϣʔβʔςετ
Ϣʔβʔςετ త w ϢʔβʔࢹʢओʹখதֶੜʣͷϑΟʔυόοΫ͕ཉ͍͠ w ܧଓతʹͬͯΒ͏͜ͱͰɺ69ͷվળόάͷൃݟʹͭͳ͕Δ w ʷʙʷ·Ͱқͷௐઅ͕Մೳ w ˠςετʹ͕͔͔࣌ؒΔ
վળ1.ϐʔε࡞ը໘ͷUI
վળ1.ϐʔε࡞ը໘ͷUI มߋલ
վળ1.ϐʔε࡞ը໘ͷUI มߋޙ
վળ2.ਖ਼ޡఆ
վળ2.ਖ਼ޡఆ มߋલ
վળ2.ਖ਼ޡఆ มߋޙ
վળ3.қͷઃఆ
มߋલ վળ3.қͷઃఆ
վળ3.қͷઃఆ มߋޙ
վળ4.ॳճΠϯετʔϧޙͷྲྀΕ
վળ4.ॳճΠϯετʔϧޙͷྲྀΕ
࡞Δͱ͖ʹҙࣝͨ͜͠ͱ
Ϣʔβʔςετ
࣮ػͰ֬ೝ͢Δ
ࠓޙͷల
ϦϦʔε
λΠϚʔ ετοϓΥονػೳ
τϩϑΟʔػೳ
͋Γ͕ͱ͏͍͟͝·ͨ͠