Upgrade to PRO for Only $50/Year—Limited-Time Offer! 🔥
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
wwdc19
Search
Shigure Shimotori
June 25, 2019
Programming
2
410
wwdc19
https://line.connpass.com/event/134346/
#LINE_DM
Shigure Shimotori
June 25, 2019
Tweet
Share
More Decks by Shigure Shimotori
See All by Shigure Shimotori
AsyncSequenceとAsyncStreamのプロポーザルを全部読む!!
s_shimotori
1
340
アメ車でサンノゼを走ってきたよ!
s_shimotori
0
290
おっと、お飲みごろの時間です!
s_shimotori
1
140
Synchronizationを支える技術
s_shimotori
1
280
1人で挑むSwiftコンパイラ 〜型システム入門編〜
s_shimotori
0
1.1k
英語
s_shimotori
1
960
Parallel Socket Communication in Swift
s_shimotori
1
880
UIColor Anatomy
s_shimotori
1
2.8k
UIColor Cluster
s_shimotori
1
810
Other Decks in Programming
See All in Programming
モデル駆動設計をやってみようワークショップ開催報告(Modeling Forum2025) / model driven design workshop report
haru860
0
280
The Past, Present, and Future of Enterprise Java
ivargrimstad
0
310
メルカリのリーダビリティチームが取り組む、AI時代のスケーラブルな品質文化
cloverrose
2
360
脳の「省エネモード」をデバッグする ~System 1(直感)と System 2(論理)の切り替え~
panda728
PRO
0
120
認証・認可の基本を学ぼう後編
kouyuume
0
250
愛される翻訳の秘訣
kishikawakatsumi
3
340
公共交通オープンデータ × モバイルUX 複雑な運行情報を 『直感』に変換する技術
tinykitten
PRO
0
160
AIエージェントを活かすPM術 AI駆動開発の現場から
gyuta
0
470
Navigating Dependency Injection with Metro
l2hyunwoo
1
170
実はマルチモーダルだった。ブラウザの組み込みAI🧠でWebの未来を感じてみよう #jsfes #gemini
n0bisuke2
3
1.3k
AIの誤りが許されない業務システムにおいて“信頼されるAI” を目指す / building-trusted-ai-systems
yuya4
6
3.9k
チームをチームにするEM
hitode909
0
370
Featured
See All Featured
AI in Enterprises - Java and Open Source to the Rescue
ivargrimstad
0
1k
職位にかかわらず全員がリーダーシップを発揮するチーム作り / Building a team where everyone can demonstrate leadership regardless of position
madoxten
51
42k
Ethics towards AI in product and experience design
skipperchong
1
140
Why Our Code Smells
bkeepers
PRO
340
57k
AI: The stuff that nobody shows you
jnunemaker
PRO
1
12
Speed Design
sergeychernyshev
33
1.4k
Why Mistakes Are the Best Teachers: Turning Failure into a Pathway for Growth
auna
0
27
More Than Pixels: Becoming A User Experience Designer
marktimemedia
2
260
Effective software design: The role of men in debugging patriarchy in IT @ Voxxed Days AMS
baasie
0
170
The AI Revolution Will Not Be Monopolized: How open-source beats economies of scale, even for LLMs
inesmontani
PRO
2
2.8k
Public Speaking Without Barfing On Your Shoes - THAT 2023
reverentgeek
1
280
SEO in 2025: How to Prepare for the Future of Search
ipullrank
3
3.3k
Transcript
͡ΊͯͷWWDC WWDC19 Recap at LINE
͡ΊͯͷWWDC @S_Shimotori_pub ▸ LINE.appͷUI·ΘΓ ▸ iOSDCωοτϫʔΫελοϑ ▸ DroidKaigiӡӦελοϑ ▸ WWDCॳࢀՃ
͡ΊͯͷWWDC ࠓ͢͜ͱ ▸ ࢀՃऀઍਓͱ ▸ ϥϘͰฉ͍͖ͯͨ͜ͱ ▸ ΞΫηγϏϦςΟͲ͏ͨ͠Β͍͍ͷ ▸ λΠจࣈ;ͨͨͼ
▸ μʔΫϞʔυରԠɺ։ນ
ࢀՃऀઍਓͱ
ࢀՃऀઍਓͱ WWDCʹॳࢀՃͯ͠Θ͔ͬͨ͜ͱ ▸ ᷚ௨Γͷςϯγϣϯͷߴ͞ ▸ ظઓʹ༏͍͠ՌͱOdwalla ▸ /16ͰIPΞυϨεେ൫ৼΔ͍ ▸ ަ௨खஈ͕ͱͯͭΒ͍
▸ ಥવͷ৽ཁૉൃදͰ্खʹϥϘΛ׆༻Ͱ͖ͳ͍ ▸ ϚΠϊϦςΟͷਓΛݟ͔͚Δ͜ͱ͕Ͱ͖Δ
ࢀՃऀઍਓͱ WWDCʹॳࢀՃͯ͠Θ͔ͬͨ͜ͱ ▸ ᷚ௨Γͷςϯγϣϯͷߴ͞ ▸ ظઓʹ༏͍͠ՌͱOdwalla ▸ /16ͰIPΞυϨεେ൫ৼΔ͍ ▸ ަ௨खஈ͕ͱͯͭΒ͍
▸ ಥવͷ৽ཁૉൃදͰ্खʹϥϘΛ׆༻Ͱ͖ͳ͍ ▸ ϚΠϊϦςΟͷਓΛݟ͔͚Δ͜ͱ͕Ͱ͖Δ
ࢀՃऀઍਓͱ ϚΠϊϦςΟͷਓΛݟ͔͚Δ͜ͱ͕Ͱ͖Δ ▸ ൺͰߟ͑Δͱଟ͍ͱݴ͑ͳ͍ ▸ ࢀՃऀ͕ઍਓ͍ΔͷͰਓࣗମଟ͘ײ͡ΒΕΔ ▸ Ҋ൘࠵͠Ͱଘࡏʹؾ͔ͮ͞ΕΔ
None
None
ϥϘͰ ฉ͍͖ͯͨ͜ͱ
ϥϘͰฉ͍͖ͯͨ͜ͱ Ͳ͜ͷϥϘʁ ▸ ΞΫηγϏϦςΟͲ͏ͨ͠Β͍͍ͷ ˠAccessibility Design Lab ▸ λΠจࣈ;ͨͨͼ ˠText
Lab ▸ μʔΫϞʔυରԠɺ։ນ ˠUIKit Lab
ΞΫηγϏϦςΟ Ͳ͏ͨ͠Β͍͍ͷ
None
ΞΫηγϏϦςΟͲ͏ͨ͠Β͍͍ͷ ରԠ࣮ʹࠔΔྫ ▸ ʮ14:30ʯͷຊޠಡΈ্͕͓͔͍͛͠ ▸ ಠࣗʹʮ͡Ύ͏Α͡͞Μͬ͡Μʯͱಡ·͍͍ͤͯʁ ▸ ߴޱ࠲൪߸ͳͲͷݸਓใ ▸ ಡΈ্͍͍͛ͤͯ͞ͷʁ
ΞΫηγϏϦςΟͲ͏ͨ͠Β͍͍ͷ ΞΫηγϏϦςΟରԠͰࠔͬͨΒ ▸ Appleͷ࡞ͬͨΞϓϦͷ࣮ʹ฿͏ ▸ উखʹ͞ͳ͍Ͱόάใࠂ͚ͩ͢Δͱ͔ ▸ Apple PayͷΫϨΧಡΈ্͛Λਅࣅ͢Δͱ͔
λΠจࣈ ;ͨͨͼ
▸ λΠจࣈॎʹ͍ͷͰ༉அ͢ΔͱΈग़ͪΌ͏ʂ λΠจࣈ;ͨͨͼ λΠจࣈͱ ຊ Japan ประเทศญี่ปุ่น
λΠจࣈ;ͨͨͼ λΠจࣈͷߴ͞ΛΓ͍ͨʂ ▸ UIKitͷྗͰจࣈͷ࣮αΠζΛऔಘ͢Δ͜ͱ͕Ͱ͖ͳ͍
λΠจࣈ;ͨͨͼ จࣈͷେ͖͞ʢਅʣΛௐΔ ▸ Core TextΛ͑ਖ਼֬ͳେ͖͕͞Θ͔Δ let word = "ประเทศญี่ปุ่น" let
attributedString = NSAttributedString(string: word) let line = CTLineCreateWithAttributedString(attributedString) let rect = CTLineGetBoundsWithOptions(line, .useGlyphPathBounds)
λΠจࣈ;ͨͨͼ λΠจࣈ;ͨͨͼ - vs Swift UI Text ▸ clip͞Εͨɺͩͱ……ʁʁ
μʔΫϞʔυରԠɺ։ນ
μʔΫϞʔυରԠɺ։ນ ҰൠతͳʁμʔΫϞʔυରԠ ▸ Assetʹొ͢ΕࣗಈͰ͍͚ͯ͘ΕΔΑ ▸ System colorSemantic colorͰҰൃରԠͩΑ
None
μʔΫϞʔυରԠɺ։ນ LINE.appͷμʔΫϞʔυରԠ ▸ Assetʹొ͢ΕࣗಈͰ͍͚ͯ͘ΕΔΑ →ొ͠·ͤΜͰ͖·ͤΜ ▸ System colorSemantic colorͰҰൃରԠͩΑ →͍·ͤΜͰ͖·ͤΜ
μʔΫϞʔυରԠɺ։ນ AssetΛΘͣʹdynamicͳͷΛͭ͘Δ ▸ Dynamic color ▸ UIColor.init(dynamicProvider:) ▸ Dynamic image
▸ ͋Εʁઆ໌͞Ε͚ͯͨͬʁ
μʔΫϞʔυରԠɺ։ນ dynamic imageͷͭ͘Γ͔ͨ ▸ UIImageAssetΛ࡞Ε͍͚Δʂ let imageAsset = UIImageAsset() imageAsset.register(lightImage,
with: lightTraitCollection) imageAsset.register(darkImage, with: darkTraitCollection) let image = imageAsset.image(with: UITraitCollection.current)
·ͱΊʁ
·ͱΊʂ WWDC͜Μͳͱ͜Ζ ▸ ੈքதͷ։ൃऀͱձ͑Δ ▸ ࣗͷ࣮ྗ͕ϥϘͷ׆༻۩߹ʹग़ͪΌ͏ ▸ ظ͕͍ؒͷͰؤுΓ·͠ΐ͏