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
モバイルアプリ開発を始めよう!
Search
Yuta Tomiyama
May 17, 2025
Programming
120
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
490
Git勉強会
yt8492
0
220
なんでもやってみる勇気
yt8492
0
140
Android Autoが思ったよりしんどい話
yt8492
0
250
apollo-kotlinにcontributeした話
yt8492
0
200
DMM TVのSDカードダウンロード機能を実装した話
yt8492
1
1k
今だからこそ知りたいKotlin Multiplatform
yt8492
0
350
State management and API calls in Jetpack Compose: Learning Apollo + Jetpack Compose through React Hooks
yt8492
0
1.4k
サーバーフレームワークの仕組みが気になったので車輪の再発明をしてみた
yt8492
0
250
Other Decks in Programming
See All in Programming
仕様書を書く前にハーネスを作る - Agent Native開発は「探索を速く、判定を固く」
gotalab555
4
1.7k
進化を続けるGo toolsの現在地 / The Current State of Ever-Evolving Go Tools
hond0413
0
240
バグを直したら useEffect が消えた
colorful12
2
600
わからない話を追いかけたら、プログラミング言語を作る側にいた
ydah
3
520
AWS DevOps AgentのAzure接続機能を検証して見えた活用法/Use Cases Verified for the AWS DevOps Agent's Azure Connectivity Feature
masakiokuda
1
240
in-process GraphQL のすすめ #ginzajs
izumin5210
4
1.3k
Augmenting AI with the Power of Jakarta EE
ivargrimstad
0
630
全PRの83%がAIレビューだけでマージできるようになった開発組織はその後どうなったか
athug
1
1.8k
引き算の組織 ― アウトカムとAIに全振りするために辞めたこと ― / Organization by Subtraction
hirokiyamamoto14
PRO
0
240
ドリフトを絶対に許さない(?)CDK運用 / CDK Ops with Zero Tolerance for Drifts (?)
akihisaikeda
1
200
AI時代に設計が 最大の生産性レバーになる 意図駆動開発とデータを消さない設計|Don't Delete Your Data or Your Intent — Design as the Deepest Lever in the AI Era
tomohisa
1
1k
ルールを書いて終わらせないハーネスエンジニアリング
yug1224
5
1.9k
Featured
See All Featured
Large-scale JavaScript Application Architecture
addyosmani
515
110k
Writing Fast Ruby
sferik
630
63k
The innovator’s Mindset - Leading Through an Era of Exponential Change - McGill University 2025
jdejongh
PRO
1
250
The #1 spot is gone: here's how to win anyway
tamaranovitovic
3
1.1k
The Psychology of Web Performance [Beyond Tellerrand 2023]
tammyeverts
49
3.5k
Statistics for Hackers
jakevdp
799
230k
Game over? The fight for quality and originality in the time of robots
wayneb77
1
240
個人開発の失敗を避けるイケてる考え方 / tips for indie hackers
panda_program
123
22k
Have SEOs Ruined the Internet? - User Awareness of SEO in 2025
akashhashmi
0
420
Refactoring Trust on Your Teams (GOTO; Chicago 2020)
rmw
35
3.8k
Leo the Paperboy
mayatellez
8
2.1k
The MySQL Ecosystem @ GitHub 2015
samlambert
251
13k
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だけでなく他の分野にも活かしやすい - 困ったら同じ分野の先輩に聞こう! - モバイルアプリ開発は入門のハードルが高いという事実はあります (環境構築など) - 先輩たちも通った道です。きっと優しく教えてくれます。というか僕に気軽に聞いてね!