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
0
46
モバイルアプリ開発を始めよう!
2025/05/17 NxTEND Shinkan Fes. 2025 にて発表
Yuta Tomiyama
May 17, 2025
Tweet
Share
More Decks by Yuta Tomiyama
See All by Yuta Tomiyama
Git勉強会
yt8492
0
100
なんでもやってみる勇気
yt8492
0
81
Android Autoが思ったよりしんどい話
yt8492
0
190
apollo-kotlinにcontributeした話
yt8492
0
120
DMM TVのSDカードダウンロード機能を実装した話
yt8492
1
830
今だからこそ知りたいKotlin Multiplatform
yt8492
0
290
State management and API calls in Jetpack Compose: Learning Apollo + Jetpack Compose through React Hooks
yt8492
0
1.2k
サーバーフレームワークの仕組みが気になったので車輪の再発明をしてみた
yt8492
0
200
Compose for Webを始めよう
yt8492
0
400
Other Decks in Programming
See All in Programming
Spring gRPC で始める gRPC 入門 / Introduction to gRPC with Spring gRPC
mackey0225
2
520
「ElixirでIoT!!」のこれまでとこれから
takasehideki
0
370
Blazing Fast UI Development with Compose Hot Reload (droidcon New York 2025)
zsmb
1
130
Gleamという選択肢
comamoca
6
750
Claude Codeの使い方
ttnyt8701
1
130
第9回 情シス転職ミートアップ 株式会社IVRy(アイブリー)の紹介
ivry_presentationmaterials
1
210
コードの90%をAIが書く世界で何が待っているのか / What awaits us in a world where 90% of the code is written by AI
rkaga
42
28k
The Evolution of Enterprise Java with Jakarta EE 11 and Beyond
ivargrimstad
1
860
GraphRAGの仕組みまるわかり
tosuri13
7
460
社内での開発コミュニティ活動とモジュラーモノリス標準化事例のご紹介/xPalette and Introduction of Modular monolith standardization
m4maruyama
1
130
ktr0731/go-mcpでMCPサーバー作ってみた
takak2166
0
170
Datadog RUM 本番導入までの道
shinter61
1
310
Featured
See All Featured
Optimizing for Happiness
mojombo
379
70k
Become a Pro
speakerdeck
PRO
28
5.4k
Faster Mobile Websites
deanohume
307
31k
CSS Pre-Processors: Stylus, Less & Sass
bermonpainter
357
30k
Fight the Zombie Pattern Library - RWD Summit 2016
marcelosomers
233
17k
The Cult of Friendly URLs
andyhume
79
6.4k
What’s in a name? Adding method to the madness
productmarketing
PRO
22
3.5k
Save Time (by Creating Custom Rails Generators)
garrettdimon
PRO
31
1.2k
Templates, Plugins, & Blocks: Oh My! Creating the theme that thinks of everything
marktimemedia
31
2.4k
Producing Creativity
orderedlist
PRO
346
40k
Responsive Adventures: Dirty Tricks From The Dark Corners of Front-End
smashingmag
252
21k
The Art of Delivering Value - GDevCon NA Keynote
reverentgeek
15
1.5k
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だけでなく他の分野にも活かしやすい - 困ったら同じ分野の先輩に聞こう! - モバイルアプリ開発は入門のハードルが高いという事実はあります (環境構築など) - 先輩たちも通った道です。きっと優しく教えてくれます。というか僕に気軽に聞いてね!