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
Sponsored
·
SiteGround - Reliable hosting with speed, security, and support you can count on.
→
toshi0383
September 05, 2024
Programming
340
1
Share
Swiftコードバトル必勝法
The Bash - iOSDC Japan 2024で発表した内容です。
https://hey.connpass.com/event/325419/
toshi0383
September 05, 2024
More Decks by toshi0383
See All by toshi0383
CoreDataはじめました
toshi0383
0
180
Sheets API使ってみた
toshi0383
2
400
visionOSについてGlobeeが取り組んでいること
toshi0383
0
600
agile20150512-150512055145-lva1-app6892.pdf
toshi0383
0
260
たのしいAirPlay
toshi0383
1
780
Profiling using Signpost
toshi0383
2
1k
AVPlayer周りの設計tips
toshi0383
6
920
cmdshelf::from("Swift")
toshi0383
3
930
AbemaTV iOSのダウンロード再生機能
toshi0383
4
1k
Other Decks in Programming
See All in Programming
セキュリティの専門家じゃなくてもできる。「セキュリティ意識」をアップデートして サプライチェーン攻撃への耐性を高めよう。
tk3fftk
5
590
タクシーアプリ『GO』の バックエンド開発のおける AI利活用と若者のすべて
pyama86
3
1.8k
CSC307 Lecture 17
javiergs
PRO
0
310
ローカルLLMを使ってB2Bサービスを作っていての学び
yaotti
0
110
「AIで開発し、AIを届ける」をEvalでつなぐ 〜AIネイティブに始めるプロダクト開発の実践〜 / Connecting "Develop with AI, deliver AI" with Eval
rkaga
4
2k
正しくソフトウェアを作る、前提を疑うための認知の視点 / doubt-premise
minodriven
17
5.7k
Old Dog, New Tricks: The Java 25 Reinvention - JNation
bazlur_rahman
0
140
Signal Forms: Beyond the Basics @ngBaguette 2026 in Paris
manfredsteyer
PRO
0
220
権限チェックの一貫性を型で守る TypeScript による多層防御
mnch
4
1.1k
開発体験を左右するライブラリの API 設計 - GraphQL スキーマ構築ライブラリから考える #tskaigi
izumin5210
2
1.6k
The NotImplementedError Problem in Ruby
koic
1
480
AIエージェントと協働するCLI開発 — BunとOpenClawで学んだこと
yoshikouki
1
230
Featured
See All Featured
The Organizational Zoo: Understanding Human Behavior Agility Through Metaphoric Constructive Conversations (based on the works of Arthur Shelley, Ph.D)
kimpetersen
PRO
0
350
How Software Deployment tools have changed in the past 20 years
geshan
0
34k
HTML-Aware ERB: The Path to Reactive Rendering @ RubyCon 2026, Rimini, Italy
marcoroth
1
140
Build your cross-platform service in a week with App Engine
jlugia
234
18k
The Success of Rails: Ensuring Growth for the Next 100 Years
eileencodes
47
8.2k
Tips & Tricks on How to Get Your First Job In Tech
honzajavorek
1
530
Exploring anti-patterns in Rails
aemeredith
3
390
Agile that works and the tools we love
rasmusluckow
331
21k
Collaborative Software Design: How to facilitate domain modelling decisions
baasie
1
230
Optimising Largest Contentful Paint
csswizardry
37
3.7k
We Are The Robots
honzajavorek
0
240
More Than Pixels: Becoming A User Experience Designer
marktimemedia
3
430
Transcript
toshi0383 20249݄4(Ր) The Bash - iOSDC Japan 2024 @ STORES
OFFICE Swiftίʔυότϧ ඞউ๏
https://note.com/toshi0383/n/nf3ca213837e4 SwiftίʔυότϧͰ༏উͨ͠
ͱ͠ԬͰ͢ɻΑΖ͓͘͠ئ͍͠·͢ɻ ࣗݾհ
Swiftίʔυότϧඞউ๏ʢΞϯΧϯϑΝϨϯε༧ఆͩͬͨωλʣ ࠓ͢͜ͱ • ͍ίʔυʹײಈ͢Δ γΣϧܳฤ • ͍ίʔυʹײಈ͢Δ ؔܕϓϩάϥϛϯάฤ • ຊ൪ϝϯλϧΛ͑Δ
• ศརπʔϧͰരఏग़
͍ίʔυʹײಈ͢Δ γΣϧܳฤ
• “#γΣϧܳ” ͷλάΛर͍γΣϧεΫϦϓτͱ࣮ͯ͠ߦ͠ɺ݁ՌΛߘ ͢Δbot • X(Twitter)͔ΒผͷSNSʁʹҠಈ༷ͨ͠ • ṖͷεΫϦϓτ͔Βੜ͞ΕͨṖͷίϯςϯπΛָ͠ΉจԽɻ ࠷ॳ͔ΒऄͰ͕͢ γΣϧܳbot͍ͬͯͬͯ·͔͢
None
None
None
None
ʮγΣϧܳʯʹ͍ͭͯղઆ͠·͢ Ͳ͔͜ΒಥͬࠐΜͰ͍͍͔Θ͔Βͳ͍ͱࢥ͍·͕͢ • https://b.ued a .tech/?p a ge=01434#γΣϧܳͱ • ཁ͢ΔʹϫϯϥΠφʔͷ͜ͱ
• ࢝ͷγΣϧܳਓ: ্ా ོҰ͞Μ
աڈΞʔΧΠϒಈը γΣϧܳษڧձ • https://b.ued a .tech/?p a ge=00684#γΣϧܳษڧձҰཡ
ͷྫ • ͷཻSwiftίʔυότϧʹ͔ͳΓ͍ۙ • ৽͍͠ൃݟ͕ଟͯ͘໘ന͍ • ͜͏͍͏ίϛϡχςΟΛ͍ͯΈ͍͍ͯΜͰͳ͍Ͱ͠ΐ͏͔
͍ίʔυʹײಈ͢Δ ؔܕϓϩάϥϛϯάฤ
ڝٕϓϩάϥϛϯάͷαΠτ HaskellΛֶͿతͰ࢝Ίͨ Codewars
Codewarsͷಛ • ྑ͘ͳ͍ͱ͜Ζ: AtCoderͱҧ੍ͬͯ࣌ؒݶ͕ͳ͍ͷͰɺதͯ͠ؾ ͕ͭ͘ͱேʹͳͬͯ͠·͏ɻ • ྑ͍ͱ͜Ζ: ͷཻ͕෯͍ɻ؆୯Ͱ͙͢ղ͚Δͨ͘͞Μ ͋ΔɻධՁج४͕ʮBest Pr
a cticeʯʮCleverʯͷ2࣠͋Γɺ໘ന͍ɻ
None
ղ͚·͔ͨ͠ʁ Codewars
Haskell ؔܕϓϩάϥϛϯάͷָ͠͞ • ͜ͷ࠶ؼΛ͏ͱεο ΩϦ͢Δέʔε • ڧྗͳύλʔϯϚονه๏ • खଓ͖తͳॻ͖ํ͕Ͱ͖ͳ͍ ͷͰɺ͘ͳΓ͍͢ҹ
• ͪͳΈʹม໊جຊ1-2จ ࣈͷจԽ • ॳ৺ऀઢͰ͔͠ίϝϯτͰ ͖ͳ͍͚Ͳ
AtCoderͰഓΘΕͳ͍ײ֮ͩͱࢥ͏ɻ ίʔυͷγϯϓϧ͞ʹඒֶΛײ͡Δ͔Ͳ͏͔ • γΣϧܳਓΛબͿ͔͠Εͳ͍͚ͲɺCodew a rs͓͢͢ΊͰ͢ɻ
ຊ൪ϝϯλϧΛ͑Δ
ʮਓʹݟΒΕͳ͕Βίʔυॻ͘ͷۓு͢Δʯ • ਓʹը໘ΛݟΒΕͳ͕ΒίʔυΛॻ͘ͷීஈͷڥͱҧ͍͗͢ ͯɺ݁ߏۓு͢Δਓ͕ଟ͍༷ɻ • ͱ͠Ԭશવେৎͩͬͨɻ
ͱ͠Ԭͷ߹ • ұϊܕʮΧʔτϨʔεʯ ͣͬͱےτϨΛ͠ͳ͕ΒἤΓӡసΛड͚͍ͯΔ Α͏ͳঢ়ଶɻ • ್ϊܕʮδϟϜηογϣϯʯ ॳΊ·ͯ͠ͷ૬खʹશ෦ݟΒΕͳ͕Βԋ͢ Δɻ •
ϓϨογϟʔʹ͑ͳ͕Βࣗͷ࣮ྗΛग़͠ Δ׆ಈͱɺͦͷͨΊͷܭըతͳ࿉ɻ • ͨͩ͜͏͍͏ͷ݁ߏݸਓ͕ࠩ͋Γͦ͏ͳͷͰ..
ͱ͠Ԭͷ߹ • ұϊܕʮΧʔτϨʔεʯ ͣͬͱےτϨΛ͠ͳ͕ΒἤΓӡసΛड͚͍ͯΔ Α͏ͳঢ়ଶɻ • ್ϊܕʮδϟϜηογϣϯʯ ॳΊ·ͯ͠ͷ૬खʹશ෦ݟΒΕͳ͕Βԋ͢ Δɻ •
ϓϨογϟʔʹ͑ͳ͕Βࣗͷ࣮ྗΛग़͠ Δ׆ಈͱɺͦͷͨΊͷܭըతͳ࿉ɻ • ͨͩ͜͏͍͏ͷ݁ߏݸਓ͕ࠩ͋Γͦ͏ͳͷͰ.. ֤ࣗ🙏
ศརπʔϧͰരఏग़
SwiftCodeBattleHelper.app • ίʔυότϧ༧બͷলΛ ׆͔͠ɺͦͷिͷAtCoder ͷίϯςετͰςετӡ ༻ɺiOSDCʹຬΛ࣋͠ ͯೖɻ • ࣮ࣗମXcodeͰߦ͏ɻ ίϯύΠϧ࣮ͯ͠ߦ͢Δͩ
͚ͷm a cOSΞϓϦɻ • ͜ΕͰ30ඵՔ͛ͨͱࢥ ͏ɻ • ੜAIར༻ͳ͠ɻ
ࣅͨΑ͏ͳπʔϧ৭ʑ͋Δ༷ ੜAIར༻ͳ͠ • https://info. a tcoder.jp/entry/llm- a bc-rules-j a ?
_gl=1*16ko9gi*_g a *MTc5NDQ3MTMwMy4xNzI0NzcxMjc4*_g a _RC512FD18N*MTcyNTM1MDY0Ny40LjEuMTcyNTM1MDY1Mi4wLjAuMA.. • ࠓճͷίʔυότϧͰ Copilotڐ༰ͩͬ ͨɻ • ͷқʹΑͬͯ ͜͏͍͏ϨΪϡϨʔ γϣϯඞཁͳͷ͔ʁ
• https://github.com/toshi0383/SwiftCodeB a ttleHelper ެ։͠·ͨ͠ • ༻๏ɾ༻ྔΛक͓͍͍ͬͯͩ͘͞ɻ • ίϯτϦϏϡʔτ͓ؾܰʹɻ
ίʔυότϧඞউ๏ ·ͱΊ • ͍ίʔυʹײಈ͢Δ • ຊ൪ϝϯλϧΛ͑Δ • ศརπʔϧͰരఏग़ • iOSDC͓ࡇΓͳͷͰɺউͭ͜ͱΑΓɺʮίϛϡχςΟͷͨΊʹԿ
͕Ͱ͖Δ͔ʯΛߟ͑Δ͜ͱΛେࣄʹ͍ͨ͠ͱࢥ͍ͬͯͨɻ ʮ୭͔ͷͨΊʹʯͱ͍͏Φʔϓϯͳ࢟Λࠓޙେࣄʹ͍ͨ͠ɻ
ૉΒ͍͠ΠϕϯτͷاըӡӦɺ ͋Γ͕ͱ͏͍͟͝·ͨ͠ʂ
abceedΛ͍ͬ͠ΐʹͭ͘Ζ͏ ΧδϡΞϧ໘ஊͰࣾͱѲख ϝϯόʔืू