Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Sign up for free
Menu
Search
Features
All features
Private URLs
Password Protection
Custom URLS
Scheduled publishing
Remove Branding
Restrict embedding
Deck Collections
Notes
Features
All features
Private URLs
Password Protection
Custom URLS
Scheduled publishing
Remove Branding
Restrict embedding
Deck Collections
Notes
Explore
Featured decks
Featured speakers
Programming
Technology
Storyboards
Explore
Featured decks
Featured speakers
Programming
Technology
Storyboards
Pricing
Search
Sign in
Sign up for free
モバイルアプリ開発を始めよう!
Search
Yuta Tomiyama
May 17, 2025
Programming
130
0
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
モバイルアプリ開発を始めよう!
2025/05/17 NxTEND Shinkan Fes. 2025 にて発表
Yuta Tomiyama
May 17, 2025
More Decks by Yuta Tomiyama
See All by Yuta Tomiyama
ビルドプロセスをデバッグしよう!
yt8492
2
520
Git勉強会
yt8492
0
240
なんでもやってみる勇気
yt8492
0
140
Android Autoが思ったよりしんどい話
yt8492
0
260
apollo-kotlinにcontributeした話
yt8492
0
200
DMM TVのSDカードダウンロード機能を実装した話
yt8492
1
1k
今だからこそ知りたいKotlin Multiplatform
yt8492
0
360
State management and API calls in Jetpack Compose: Learning Apollo + Jetpack Compose through React Hooks
yt8492
0
1.4k
サーバーフレームワークの仕組みが気になったので車輪の再発明をしてみた
yt8492
0
260
Other Decks in Programming
See All in Programming
パスワード再設定メールのURLについて知っておこう
uyuki234
0
160
npm との違いを手がかりにGo の依存管理を理解したい
optim
0
590
RAG の “R” を Swift で覗いてみる 〜「意味から探す」検索の仕組み〜
nao_randd
0
160
當我們開始不讀 Code - AI Agent 時代,Code Review 與 Clean Code 還剩下什麼?
jame2408
1
250
Verilogで学ぶCPU自作入門
uyuki234
8
4.1k
3回つくってわかった、 定期実行ジョブ基盤の本質情報
takai
0
510
Atomic Design, Enforced: Scaling Mobile Design Systems (next.app devCon / droidCon Berlin 2026)
steliosf
PRO
0
170
re:Inventに行く前に知っておきたい現地参加のノウハウ
nokomoro3
0
430
APNsからLive Activityを開始する話
yumnumm
0
170
ジョジョの世界をXRで再現する
mofurune
0
170
Performance Optimization With LLMs
xleitix
0
110
Domain-Driven Transformation
hschwentner
2
2.3k
Featured
See All Featured
Large-scale JavaScript Application Architecture
addyosmani
516
110k
Mobile First: as difficult as doing things right
swwweet
225
10k
How Fast Is Fast Enough? [PerfNow 2025]
tammyeverts
3
940
RailsConf & Balkan Ruby 2019: The Past, Present, and Future of Rails at GitHub
eileencodes
141
35k
Evolving SEO for Evolving Search Engines
ryanjones
0
330
Ten Tips & Tricks for a 🌱 transition
stuffmc
1
270
VelocityConf: Rendering Performance Case Studies
addyosmani
331
25k
Conquering PDFs: document understanding beyond plain text
inesmontani
PRO
4
3.2k
Speed Design
sergeychernyshev
33
2.2k
Building a Modern Day E-commerce SEO Strategy
aleyda
45
9.3k
The Curse of the Amulet
leimatthew05
3
16k
The Art of Delivering Value - GDevCon NA Keynote
reverentgeek
16
2.2k
Transcript
モバイルアプリ開発を 始めよう! 2025/05/17 NxTEND Shinkan Fes. 2025
自己紹介 HN: マヤミト 本名: 富山雄太 会津大学出身 22卒 合同会社DMM.com DMMTV開発部 Androidエンジニア
GitHub: https://github.com/yt8492 趣味: Kotlin, Twitter, 同人, 車 ランエボ買って金欠です インターネットのすがた リアルのすがた
マヤミトの学生時代の技術遍歴 高校: 工業高校でC言語を学ぶ B1前半: Kotlinに出会い、Androidを本格的に学び始める B1後半: サイバーエージェントのiOSブートキャンプに参加 B2: サーバーサイドKotlinでバックエンド入門 B3:
KMPにハマる。Kotlin/JSでReactに入門(?) B4: Goでバックエンド書いてみたりTypeScriptでReact書いてみたり
マヤミトの学生時代の技術遍歴 高校: 工業高校でC言語を学ぶ B1前半: Kotlinに出会い、Androidを本格的に学び始める B1後半: サイバーエージェントのiOSブートキャンプに参加 B2: サーバーサイドKotlinでバックエンド入門 B3:
KMPにハマる。Kotlin/JSでReactに入門(?) B4: Goでバックエンド書いてみたりTypeScriptでReact書いてみたり
今回のゴール: モバイルアプリエンジニアについて なんとなくイメージを掴んでもらう
モバイルアプリエンジニアの魅力 - 現代人の所持率 97%※1であるスマホのアプリを開発できる! - 「このアプリ作ったの俺なんだぜ」って言えるようになるかも? - スマホの機能をフルに活かせる! - カメラ
- GPS - ストレージ - 各種センサー - 広い分野に応用が効く! - iOS ←→Android - Webフロントエンド - バックエンド ※1出典: モバイル社会研究所 https://www.moba-ken.jp/project/mobile/20240415.html
モバイルアプリの種類 - ネイティブアプリ: それぞれのOS専用にアプリを開発する - iOS - SwiftUI - Android
- Jetpack Compose - クロスプラットフォームアプリ: どちらのOS向けにもアプリを開発できる - Flutter - React Native - Compose Multiplatform - など
iOS - 開発言語: Swift - UIフレームワーク: SwiftUI - 開発環境: Xcode
- 日本の若者の使用率が高い! - Macじゃないと開発できない🥺
Android - 開発言語: Kotlin - UIフレームワーク: Jetpack Compose - 開発環境:
Android Studio - WindowsでもMacでもLinuxでも開発できる! - 世界シェアは高いけど日本の若者の使用率🥺
Flutter - 開発言語: Dart - 開発環境: Visual Studio Code, Android
Studio - レンダリングエンジンがAndroid, iOSで共通化されているため、基本的に同じ見た 目で作れる。 - Googleが開発。 - 2018年にメジャーリリース。流行ってるし情報も充実してきた感ある。
React Native - 開発言語: JavaScript(TypeScript) - 開発環境: Visual Studio Code,
Android Studio - Flutterと違い、レンダリングは共通化されず最終的にネイティブのコードに変換さ れる。 - Meta(旧Facebook)が開発。 - 2015年に公開(一生v1.0.0がリリースされない……w)。流行り自体は過ぎた感あ るが、その分成熟している感がある。
Compose Multiplatform - 開発言語: Kotlin - 開発環境: Android Studio -
レンダリングエンジンがAndroid, iOSで共通。特にAndroid側からは直接処理を 呼び出せる。 - つい最近Compose Multiplatform for iOSがStableになった。 - JetBrainsが開発。 - 2021年に1.0.0リリース。Flutterなどに比べると情報は少ない感あり。
Q. どれを学べばいいのか?
Q. どれを学べばいいのか? A. 一概には言えない。(それはそう) どちらのOSにも対応したアプリを1つのコードベースで作りたいというモチベーションがあ るならクロスプラットフォームを学べばいいと思うし、自分が普段使っている方のOSのネ イティブから学ぶのもアリだと思う。 強いて言えば、端末の機能をフルに使ったアプリを作りたいならネイティブのほうがやり やすい。 今主流の技術はネイティブもクロスプラットフォームも基本的に宣言的UIなので、学んだ
ことは基本的に無駄にならない。
モバイルアプリ開発の第1歩 - iOS - MIXIの新卒研修資料がかなり優秀 - https://speakerdeck.com/mixi_engineers/2024-new-grad-training-ios - Android -
Googleの公式コードラボが日本語に対応してて神 - https://developer.android.com/courses/android-basics-compose/course?hl=ja - https://developer.android.com/develop/ui/compose/tutorial?hl=ja - クロスプラットフォーム - Flutter - 日本語チュートリアルがある - https://flutter.ctrnost.com/tutorial/ - React Native, Compose Multiplatformは日本語の初心者向け記事やチュートリアルが少なくて 大変かも
入門したあとの2歩目 - 作りたいアプリがもともとあるならそれを作り始めるのが一番いい - モチベーションが続きやすい - ネタが思い浮かばないときは普段使っているアプリを模倣してみると勉強になって かつ楽しいかも - インスタやTwitterなどのSNSとか
- どのレベルまで再現するか (ただの見た目だけか、動作も含めてか )で難易度が変わる - ハッカソンに参加して実力をつけるのもアリ💪 - 技術力の高い先輩と一緒に出て学ぶのもよし - 自分の力だけでアプリ部分を作って己を鍛えるのもよし
今から学び始めるみんなに伝えたいこと - モバイルアプリ開発は楽しい! - 普段スマホで使うアプリを自分の手で開発できるって最高 - 興味があることから始めよう! - 「〇〇するべき」よりも「〇〇してみたい」でやるとモチベーションが続きやすい -
途中で方向転換しても学んだことは無駄にはならない! - UIアプリケーション開発の知識はもう片方の OSだけでなく他の分野にも活かしやすい - 困ったら同じ分野の先輩に聞こう! - モバイルアプリ開発は入門のハードルが高いという事実はあります (環境構築など) - 先輩たちも通った道です。きっと優しく教えてくれます。というか僕に気軽に聞いてね!