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
⚪⚪の⚪⚪をSwiftUIで再現す る
Search
Sugiy
March 04, 2025
Programming
290
0
Share
⚪⚪の⚪⚪をSwiftUIで再現す る
Sugiy
March 04, 2025
More Decks by Sugiy
See All by Sugiy
The Flutter Journey of Building a Live Streaming App — With a Side of Performance Tuning
u503
1
530
Swiftで我が家を より便利に、安全に!
u503
0
3.2k
PotatoTips_73.pdf
u503
0
110
Swiftでドローンを飛ばしてみた
u503
0
530
Other Decks in Programming
See All in Programming
Moments When Things Go Wrong
aurimas
3
140
LLM Plugin for Node-REDの利用方法と開発について
404background
0
160
権限チェックの一貫性を型で守る TypeScript による多層防御
mnch
4
1.1k
不変条件と整合性境界—ビジネスが決める設計判断と実現パターン / Invariants and Consistency Boundaries
nrslib
13
3.4k
oxlintはeslint/typescript-eslintを置き換えられるのか
shomafujita
2
310
dRuby over BLE
makicamel
2
300
技術記事、AIに書かせるか、自分で書くか? 〜それでも私が自分の手で書く理由〜 / #QiitaConference
jnchito
2
1.3k
Lessons from Spec-Driven Development
simas
PRO
0
130
Why Laravel apps break—Mastering the fundamentals to keep them maintainable
kentaroutakeda
1
340
ReactとSvelteのその先、Ripple-TS / Beyond React and Svelte: Ripple-TS
ssssota
3
2k
作って学ぶ、 JSX (TSX) ランタイムの基本
syumai
7
1.5k
脅威をエンジニアリングの糧にして――現場編 / Turning Threats into Engineering Fuel — Field Edition
nrslib
0
250
Featured
See All Featured
Reflections from 52 weeks, 52 projects
jeffersonlam
356
21k
XXLCSS - How to scale CSS and keep your sanity
sugarenia
250
1.3M
Navigating Weather and Climate Data
rabernat
0
210
How To Speak Unicorn (iThemes Webinar)
marktimemedia
1
480
Practical Orchestrator
shlominoach
191
11k
Navigating the Design Leadership Dip - Product Design Week Design Leaders+ Conference 2024
apolaine
1
340
[Rails World 2023 - Day 1 Closing Keynote] - The Magic of Rails
eileencodes
38
2.9k
Paper Plane (Part 1)
katiecoart
PRO
0
8.4k
10 Git Anti Patterns You Should be Aware of
lemiorhan
PRO
659
62k
Why Mistakes Are the Best Teachers: Turning Failure into a Pathway for Growth
auna
0
150
Data-driven link building: lessons from a $708K investment (BrightonSEO talk)
szymonslowik
1
1.1k
Ethics towards AI in product and experience design
skipperchong
2
300
Transcript
⚪⚪の⚪⚪をSwiftUIで再現す る Swift愛好会 20250304 in DeNA Sugiy/Yugo Sugiyama
README 1. Sugiy/Yugo Sugiyama(Yugo Sugiyama) 2. iOS/Flutterエンジニア 3. Flutter製のスポーツ系ライブ配信サービスの開発をしてます 4.
和食と和菓子と魚が好き 5. 先週注文住宅の長い長い要件定義が終わった!
この形をSwift(UI)で再現しようと思った時に 困ったことはありますか?
実際のUIデザインではなくても、 これをSwift(UI)で作ったらどうなる? って思う時がある
トレーディングカードゲームといえば?
個人的には「遊戯王カード」
「遊戯王カード」の「アニメの召喚エ フェクト」を SwiftUIで再現する Swift愛好会 20250304 in DeNA Sugiy/Yugo Sugiyama
デモ
参考アプリのダウンロード • TestFlightからダウンロードできます ◦ https://testflight.apple.com/join/s5j2zJbS ◦ いつものスライド用アプリ ◦ macOS/iOS/iPadOSをサポート ◦
OTHER > Sample Views > Yugioh Effect • https://github.com/u5-03/YugiohCardEffect
Xcodeでのコード確認
線を表示するためのPathの条件を整理する 1. 線は中央のカードの上と右、左の辺から、それぞれの方向に伸びる a. 気持ち曲がるパターンを多めに、ランダムに生成する 2. 線は直進、左or右に1度曲がり、再び直線に戻る3パターンがある 3. 曲がるパターンの時は、始点方向ではなく、終点方向に伸びる a.
曲がる時の角度は25~35度の範囲にする 4. 最初に曲がるポイントは直線時の進捗率の 10%から60%の間にする 5. 2回目に曲がるポイントは最初に曲がったポイントの進捗率より大きい or 90%までの間のどち らか 6. 各辺上の各始点はある程度ばらけるようにする a. それぞれの点を表示すべき線の数で等間隔に区切り、そのそれぞれの間隔の中でランダ ムに始点を決定する 7. 始点は中央のカードの周囲の辺、終点は外部の枠 (事実上デバイスのエッジ)の枠を指定
結論・学んだこと 1. ただロマン実装 a. パフォーマンスとかまでしっかり考えた実装になっていない b. 他にも改善したいポイントはある 2. 色々なSwiftのAPIの使い方を知ることができた a.
普段なかなか使わないAPIを試すことができた 3. 複雑な仕様の要件を言語化して、整理する能力が鍛えられそう a. 自分で実装する時も、ChatGPTなどで出力する時も、その仕様の実装レベルまでの細分化・整理が必要 4. 「⚪⚪の⚪⚪をSwiftUIで再現する」、なんか他のシリーズもできそう
ちなみに...
さらにちなみに...
おしまい