Upgrade to PRO for Only $50/Year—Limited-Time Offer! 🔥
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
Androidアプリ開発の面白いトコロ
Search
akatsuki174
May 22, 2019
Programming
1
180
Androidアプリ開発の面白いトコロ
2019/05/22 Web Creators MeetUp ビアバッシュLT会 #11
akatsuki174
May 22, 2019
Tweet
Share
More Decks by akatsuki174
See All by akatsuki174
逆向きUIの世界 〜iOSアプリのRTL言語対応〜
akatsuki174
1
350
逆向きUIの世界〜AndroidアプリのRTL言語対応〜
akatsuki174
1
660
私が変えてきたこと、変えなかったこと
akatsuki174
2
940
最近読んでいる本-読書シェア会vol.1
akatsuki174
2
230
SwiftUI、UIKitでキャプチャを撮ろう!
akatsuki174
1
120
Appleにおけるプライバシーの全容を把握する
akatsuki174
0
5.9k
近年のAppleにおける位置情報とプライバシー
akatsuki174
3
480
オフライン勉強会ぼっち対策
akatsuki174
1
680
Xcode 15の新機能
akatsuki174
0
2.8k
Other Decks in Programming
See All in Programming
AIコーディングエージェント(Manus)
kondai24
0
140
AIコーディングエージェント(NotebookLM)
kondai24
0
140
複数人でのCLI/Infrastructure as Codeの暮らしを良くする
shmokmt
5
2.2k
Integrating WordPress and Symfony
alexandresalome
0
130
テストやOSS開発に役立つSetup PHP Action
matsuo_atsushi
0
140
251126 TestState APIってなんだっけ?Step Functionsテストどう変わる?
east_takumi
0
300
AIと協働し、イベントソーシングとアクターモデルで作る後悔しないアーキテクチャ Regret-Free Architecture with AI, Event Sourcing, and Actors
tomohisa
5
19k
Rediscover the Console - SymfonyCon Amsterdam 2025
chalasr
2
140
【CA.ai #3】ワークフローから見直すAIエージェント — 必要な場面と“選ばない”判断
satoaoaka
0
220
宅宅自以為的浪漫:跟 AI 一起為自己辦的研討會寫一個售票系統
eddie
0
480
配送計画の均等化機能を提供する取り組みについて(⽩⾦鉱業 Meetup Vol.21@六本⽊(数理最適化編))
izu_nori
0
130
Level up your Gemini CLI - D&D Style!
palladius
1
180
Featured
See All Featured
The Cult of Friendly URLs
andyhume
79
6.7k
10 Git Anti Patterns You Should be Aware of
lemiorhan
PRO
659
61k
How to Create Impact in a Changing Tech Landscape [PerfNow 2023]
tammyeverts
55
3.1k
Learning to Love Humans: Emotional Interface Design
aarron
274
41k
Exploring the Power of Turbo Streams & Action Cable | RailsConf2023
kevinliebholz
36
6.2k
Performance Is Good for Brains [We Love Speed 2024]
tammyeverts
12
1.3k
Stop Working from a Prison Cell
hatefulcrawdad
273
21k
StorybookのUI Testing Handbookを読んだ
zakiyama
31
6.4k
Rebuilding a faster, lazier Slack
samanthasiow
84
9.3k
Dealing with People You Can't Stand - Big Design 2015
cassininazir
367
27k
Faster Mobile Websites
deanohume
310
31k
Put a Button on it: Removing Barriers to Going Fast.
kastner
60
4.1k
Transcript
@akatsuki174 AndroidΞϓϦ։ൃͷ ໘ന͍τίϩ
ࣗݾհ
• ਢ౻ຘʢ@akatsuki174ʣ • iOSΤϯδχΞ • TechTrain ϝϯλʔ • ϋϯυϝΠυ࡞Ո •
DXELओ࠵ • TECH PLAYঁࢠ෦ ڞಉද • Women In Technology (WITY) ઃ ϝϯόʔ ͦͷଞॾʑ
֓ཁ
;ΜΘΓ֓ཁ ࠷ۙAndroidΞϓϦ։ൃΛ࢝Ίͨࢲͷࢹ͔Βɺ ʮAndroidʢKotlinʣͬͯ͜Μͳ͜ͱͰ͖ΔΜͩʯ ͱࢥͬͨͷΛ٧Ί߹Θ͓ͤͯ͑͠·͢ɻ ڵຯΛ͖͔͚࣋ͭͬʹͳΕͱ… ※ࠓհͨ͜͠ͱ ≠ Android։ൃͰॏཁͳ͜ͱ
ࠓ͢͜ͱ ɾKotlin͔Θ͍͍ ɾϨΠΞτ࡞ָ͕ ɾAndroidͰଞͷΞϓϦͷϦιʔε͕͑Δ ɹɾจࣈྻ ɹɾը૾
Kotlin
Kotlinͱ ɾJetBrains͕2011ʹൃදͨ͠ݴޠ ɾJavaͱ100%૬ޓӡ༻Մೳ ɾɾJavaίʔυΛϖʔετͨ͠ΒࣗಈͰKotlin ɹɹίʔυʹॻ͖͑ͯ͘ΕͨΓ ɾGoogle I/O 2017ʹͯެࣜ࠾༻ ɾGoogle I/O
2019ʹͯਪݴޠ
Kotlinͷಛ ɾ੩తܕ͚ ɾΦϒδΣΫτࢦ ɾNull҆શ ɾ؆ܿʹॻ͚Δ ɾΫϥΠΞϯταΠυαʔόαΠυॻ͚Δ etc…
KotlinΫΠζ ̍- ͬͱ؆ܿʹॻ͚·͢ɻͲ͏ॻ͚ΔͰ͠ΐ͏ʁ if (data == null) return
KotlinΫΠζ ̍- ͑ data ?: return ʮ?:ʯΤϧϏεԋࢉࢠɻԋࢉࢠͷࠨଆ͕nullͰ ͳ͚ΕͦΕΛฦ͠ɺnullͩͬͨΒӈଆΛฦ͢ɻ ※ KotlinͰreturnࣜ
KotlinΫΠζ ̎- Javaͩͱ͜ͷΑ͏ʹॻ͘ॲཧɺKotlinͩͱ ͲͷΑ͏ʹॻ͚ΔͰ͠ΐ͏͔ʁ if (anyObject instanceof String) {
String str = (String)anyObject; str.length; }
KotlinΫΠζ ̎- ͑ if (anyObject is String) { anyObject.length }
ܕͷνΣοΫͱΩϟετΛಉ࣌ʹߦͬͯ͘ΕΔ ʢεϚʔτΩϟετʣ
ϨΠΞτ࡞
AndroidͷϨΠΞτ࡞ ɾxmlͰUIཁૉΛهड़͍ͯ͘͜͠ͱɺktϑΝΠϧ ɹଆͰϨΠΞτཁૉͷΠϯελϯεΛ࡞͢Δ ɹ͜ͱͰ͖Δ ɾxmlͰUIΛهड़͢Δͱɺಈ࡞੍ޚίʔυͱ ɹUIදࣔίʔυΛ͚Δ͜ͱ͕Ͱ͖Δ
AndroidͷϨΠΞτ࡞ ɾLayout Editor Λ͏ͱɺGUIͰૢ࡞͢Δ͚ͩͰ ɹϨΠΞτΛ࡞͢Δ͜ͱ͕Ͱ͖Δ
σϞ ※ ͵Δ͵Δಈ͘GUIɺϨΠΞτ࡞ͷ؆୯͕͞ ɹΘ͔ΔΑ͏ͳͷΛݟͤΔ
ଞΞϓϦͷϦιʔεΛ͏
DroidKaigiʹͯ ʮAndroidଞͷΞϓϦͷϦιʔεΛ͏͜ͱ͕ Ͱ͖Δʯͱ͍͏Λฉ͖ɺͱͯؾʹͳ͍ͬͯͨ ͷͰࠓճௐͯΈͨ
σϞ Qiitaهࣄ https://qiita.com/akatsuki174/items/ ff57714cbc57e5ce9909 αϯϓϧίʔυ https://github.com/akatsuki174/ UseOtherAppResourceSample
จࣈྻΛऔಘ͢Δίʔυ
ը૾Λऔಘ͢Δίʔυ
એ
None
͝ਗ਼ௌ ͋Γ͕ͱ͏͍͟͝·ͨ͠ʂ