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
2024新卒技術研修_Android
Search
DMM.com_新卒採用
September 10, 2024
0
59
2024新卒技術研修_Android
DMM.comの24新卒エンジニア技術研修_Android研修の資料です。
DMM.com_新卒採用
September 10, 2024
Tweet
Share
More Decks by DMM.com_新卒採用
See All by DMM.com_新卒採用
DDD‗20250716_traP×DMM
dmm_recuruit
0
1
組織運営‗20250716_traP×DMM
dmm_recuruit
0
4
DMMにおけるレコメンドの紹介‗20250716_traP×DMM
dmm_recuruit
0
160
KC3Hack2025向け_ハッカソンのコツ.pdf
dmm_recuruit
0
82
DMM.com_技育祭2024秋講演資料
dmm_recuruit
0
200
2024新卒技術研修_BE
dmm_recuruit
0
76
2024新卒技術研修_FE①
dmm_recuruit
0
41
2024新卒技術研修_FE②
dmm_recuruit
0
39
2024新卒技術研修_FE③
dmm_recuruit
0
50
Featured
See All Featured
Imperfection Machines: The Place of Print at Facebook
scottboms
267
13k
Art, The Web, and Tiny UX
lynnandtonic
300
21k
Scaling GitHub
holman
460
140k
Exploring the Power of Turbo Streams & Action Cable | RailsConf2023
kevinliebholz
34
5.9k
jQuery: Nuts, Bolts and Bling
dougneiner
63
7.8k
Agile that works and the tools we love
rasmusluckow
329
21k
The Straight Up "How To Draw Better" Workshop
denniskardys
235
140k
Sharpening the Axe: The Primacy of Toolmaking
bcantrill
44
2.4k
Creating an realtime collaboration tool: Agile Flush - .NET Oxford
marcduiker
30
2.2k
How To Stay Up To Date on Web Technology
chriscoyier
790
250k
Cheating the UX When There Is Nothing More to Optimize - PixelPioneers
stephaniewalter
282
13k
Into the Great Unknown - MozCon
thekraken
40
1.9k
Transcript
© DMM 開始までお待ちください comment screen: **** password: ****
© DMM © DMM CONFIDENTIAL Android 技術研修2024 DMMポイントクラブグループ 宮里颯斗 2024/06/03
© DMM お品書き • 講師紹介 • Androidアプリ開発の概要 • 研修の進め方 •
ゴール • 進め方 • Q&A 3
© DMM Androidアプリ開発の概要
© DMM Androidアプリ開発の選択肢 • ネイティブ開発(Kotlin/Java) • Flutter • KMP •
React Native • .NET MAUI • ノーコード • etc… 5
© DMM 必要なツール・言語など • Android Studio • IDE、動物の名前が使われる(Jellyfish) • Kotlin/Java
• 新規はKotlinが多い • XML • アプリリソース管理 • Gradle • ビルドシステム構築 • スマホ • エミュレータでも 6
© DMM Androidアプリの開発を 支える技術・知識
© DMM Androidアプリの開発を支える技術・知識 • Activity/Fragment • Lifecycle • Resource •
Permission • Android SDK • APK/AAB • adb • Manifest • Android View • AVD • Context • Gradle 8 • Jetpack Library • Jetpack Compose • Material Component • Kotlin Coroutine/Flow • LiveData • ViewModel • DI • Retrofit • Json Parser • ConstraintLayout • MotionLayout • Bundle • RecyclerView • Paging • Repository • UseCase • Room • Storage • Thread • DataBinding • Navigation • Animation • Large Screen/Foldable • SplashScreen
© DMM
© DMM 大丈夫
© DMM Androidアプリの開発を支える技術・知識 • Activity/Fragment • Lifecycle • Resource •
Permission • Android SDK • APK/AAB • adb • Manifest • Android View • AVD • Context • Gradle 11 • Jetpack Library • Jetpack Compose • Material Component • Kotlin Coroutine/Flow • LiveData • ViewModel • DI • Retrofit • Json Parser • ConstraintLayout • MotionLayout • Bundle • RecyclerView • Paging • Repository • UseCase • Room • Storage • Thread • DataBinding • Navigation • Animation • Large Screen/Foldable • SplashScreen
© DMM Androidアプリの開発を支える技術・知識 • Activity/Fragment • Lifecycle • Resource •
Permission • Android SDK • APK/AAB • adb • Manifest • Android View • AVD • Context • Gradle 12 • Jetpack Library • Jetpack Compose • Material Component • Kotlin Coroutine/Flow • LiveData • ViewModel • DI • Retrofit • Json Parser • ConstraintLayout • MotionLayout • Bundle • RecyclerView • Paging • Repository • UseCase • Room • Storage • Thread • DataBinding • Navigation • Animation • Large Screen/Foldable • SplashScreen
© DMM 研修の範囲
© DMM Androidアプリの開発を支える技術・知識 • Activity/Fragment • Lifecycle • Resource •
Permission • Android SDK • APK/AAB • adb • Manifest • Android View • AVD • Context • Gradle 14 • Jetpack Library • Jetpack Compose • Material Component • Kotlin Coroutine/Flow • LiveData • ViewModel • DI • Retrofit • Json Parser • ConstraintLayout • MotionLayout • Bundle • RecyclerView • Paging • Repository • UseCase • Room • Storage • Thread • DataBinding • Navigation • Animation • Large Screen/Foldable • SplashScreen
© DMM Androidアプリの開発を支える技術・知識 • Activity/Fragment • Lifecycle • Resource •
Permission • Android SDK • APK/AAB • adb • Manifest • Android View • AVD • Context • Gradle 15 • Jetpack Library • Jetpack Compose • Material Component • Kotlin Coroutine/Flow • LiveData • ViewModel • DI • Retrofit • Json Parser • ConstraintLayout • MotionLayout • Bundle • RecyclerView • Paging • Repository • UseCase • Room • Storage • Thread • DataBinding • Navigation • Animation • Large Screen/Foldable • SplashScreen
© DMM 研修の進め方
© DMM 研修のゴール 弊社でも採用されているデファクトスタンダードな開発手法で Androidアプリ開発できるようになる 17
© DMM 進め方 ハンズオン形式で講義資料を読みつつYatterアプリの開発を行う 休憩時間も各自で決め、各自のペースで進めてください 18
© DMM 進め方 (外部公開用に内容が同じなインターンシップのURLに置き換え) 講義資料 https://github.com/mitohato14/Yatter2024- Internship/tree/main/%E8%AC%9B%E7%BE%A9%E8%B3%87%E6 %96%99 Yatterテンプレート https://github.com/mitohato14/Yatter2024-
Internship/tree/main/Yatter2024 19
© DMM 進め方 Androidアプリ開発の基礎的な部分が身についている(はず) 20
© DMM 講義資料 Markdownで記述 ローカルにダウンロードしてもGitHub上でも 21
© DMM 講義資料の説明 • Yatter • tutorial • appendix 22
© DMM Yatter 研修期間中メインで進めていく資料 Yatterアプリ開発をベースにハンズオン形式 アプリ開発を進めていく上で必要な分の解説 UI実装にフォーカスしているがそれ以外の部分(appendix)も 23
© DMM tutorial Androidアプリ開発を進める上で必要な知識 主にYatterアプリ開発進めるための前提知識 DMMで推奨されているアーキテクチャの解説も 24
© DMM appendix Androidアプリ開発について深掘りたい人向け よく利用されている概念や要素の解説書に近い 従来の開発手法であるAndroid Viewの解説など 25
© DMM 必須項目 • Yatter • tutorial • appendix 26
© DMM 必須項目 • Yatter • tutorial • appendix 27
© DMM オススメの進め方(appendixは任意) Androidアプリ開発初めて tutorial→Yatter→appendix 28
© DMM オススメの進め方(appendixは任意) Androidアプリ開発初めて tutorial→Yatter→appendix Androidアプリ開発に少し自信ある、挑戦したい Yatter→appendix 29
© DMM オススメの進め方(appendixは任意) Androidアプリ開発初めて tutorial→Yatter→appendix Androidアプリ開発に少し自信ある、挑戦したい Yatter→appendix Androidアプリ開発チョットデキル 自由に進める 30
© DMM Yatterテンプレート 講義資料を進める上で必要な実装が含まれる Yatter講義資料のappendix以外で実装できる 使わなくても良い 31
© DMM 進捗表 終わったら随時チェックマークをつけてください 進み具合を把握するために利用します 周りが早いからといって焦らないでください 各自のペースで学んでいきましょう〜 32
© DMM Q&A
© DMM Q.講義はありますか? 基本的にはない予定 進捗状況や要望に応じて解説を行う 34
© DMM Q.その他のコンテンツはありますか? 希望者が多ければ、ライブコーディングやコードレビュー実施予定 もし、「こういう話が聞きたい!」という要望があれば頑張る 35
© DMM Q.資料不備を見つけました すみません!ありがとうございます! 講師陣にお伝えください PR出しても大丈夫です 36
© DMM Q.Yatter講義資料終わりました 講義資料で解説していない機能も実装してみましょう appendix資料も学んでみましょう CI/CDの導入やDIツールの移行、UI改善など課題設定しても 37
© DMM Q.ハンズオン内容の質問して良いですか? もちろん!遠慮なく! 調べても分からないことは講師やチームメンバーに聞きましょう 質問するまでの基準を決めて質問してみると良いかも 38
© DMM Q.質問方法は何に対応している? 口頭でもテキストでも テキストであれば他の方からも見れる利点が 口頭であればタイムラグ無しに解決する利点が 口頭で聞かれたこともなるべくテキストにするようにしますが、 両方すると最高かも 39
© DMM Q.Gemini in Android Studioは使って良い? 今回はNG プロンプト情報を送信するため 意図せずコードを送信してしまう可能性がある デフォルトでOFF
40
© DMM Q.Android Studioが重いです ネイティブモバイルアプリ開発は要求スペック高め 開発に支障きたすと感じたら、相談ください 41
© DMM 頑張っていきましょう
© DMM 学習リンク集
© DMM 事前課題 • 必須 • https://developer.android.com/courses/kotlin-bootcamp/overview • 推奨or任意 •
https://developer.android.com/courses/kotlin-android- fundamentals/overview • https://developer.android.com/jetpack/compose/tutorial?hl=ja • https://play.kotlinlang.org/koans/overview 44
© DMM 学習コース • 公式 • https://developer.android.com/courses?hl=ja • ロードマップ •
https://roadmap.sh/android • 勉強会の解説動画 • https://tokyo.gdgjapan.org/devfest2020/schedule/1/103 • Codelab • https://codelabs.developers.google.com/?product=android 45
© DMM キャッチアップリンク • 公式 • https://android-developers.googleblog.com/ • https://www.youtube.com/@AndroidDevelopers/videos •
https://codelabs.developers.google.com/ • DroidKaigi • https://2023.droidkaigi.jp/timetable/day1/ • Android Dagashi • https://androiddagashi.github.io/ • Android Wagashi • https://scrapbox.io/android-wagashi/ 46
© DMM 質問タイム
© DMM 5日間よろしくお願いします!
© DMM
© DMM 待機所
© DMM 1日目締め
© DMM 1日目お疲れ様でした!
© DMM Androidアプリ開発どうでしたか?
© DMM 初めてのことだらけで大変だったと思います
© DMM 進捗表を見ると結構進めている
© DMM 素晴らしい
© DMM チーム内で協力している様子
© DMM
© DMM 待機所
© DMM 3日目締め
© DMM 出席+進捗のチェックお願いします!
© DMM みなさん調子はいかがですか?
© DMM 進捗表や各チーム回っている限りは 少しづつでも進められてそう
© DMM 講義資料にない部分も深掘り始めてる
© DMM 1日目に比べてAndroid慣れてきました......?
© DMM サポート引き続き頑張ります
© DMM Yatter講義資料以外も気になり始めている(はず)
© DMM appendix資料も読んでみてください
© DMM モックサーバについて
© DMM
© DMM yatter-backend-go-2024のクローン時期によって 画像URLが正しく取得できない可能性
© DMM cherry-pickなどで差分取り込んでみてください
© DMM やって欲しいことがあれば聞きたいです
© DMM 例えば コードレビュー ライブコーディング 各チームへの長時間滞在 など。。。
© DMM 今日で折り返し。。。 頑張っていきましょう
© DMM
© DMM 待機所 comment screen: **** password: ****
© DMM 最終日締め
© DMM Android研修修了です!
© DMM お疲れ様でした!
© DMM Androidアプリ開発慣れましたか?
© DMM 研修のゴールを振り返ってみる
© DMM 研修のゴール 弊社でも採用されているデファクトスタンダードな開発手法で Androidアプリ開発できるようになる 83
© DMM 達成できてそうですか?
© DMM
© DMM 🥲
© DMM Androidアプリの開発を支える技術・知識 振り返り
© DMM Androidアプリの開発を支える技術・知識 • Activity/Fragment • Lifecycle • Resource •
Permission • Android SDK • APK/AAB • adb • Manifest • Android View • AVD • Context • Gradle 88 • Jetpack Library • Jetpack Compose • Material Component • Kotlin Coroutine/Flow • LiveData • ViewModel • DI • Retrofit • Json Parser • ConstraintLayout • MotionLayout • Bundle • RecyclerView • Paging • Repository • UseCase • Room • Storage • Thread • DataBinding • Navigation • Animation • Large Screen/Foldable • SplashScreen
© DMM なんとなく分かりましたか?
© DMM
© DMM
© DMM Androidアプリ開発がなんとなく分かったら嬉しい
© DMM Android研修を乗り越えた皆さんはすごい
© DMM 自信を持ってこれからも進んでください
© DMM
© DMM 今後は?
© DMM Android特有の機能を活用する
© DMM Yatterアプリの機能を充実させる
© DMM 開発設計の理解を深める
© DMM 0からアプリを作ってみる
© DMM 業務では?
© DMM モバイルアプリのバックエンド担当するかもしれない
© DMM 直接開発せずともモバイルアプリの気持ちがわかる
© DMM モバイルアプリ開発を始めているかもしれない
© DMM Androidアプリ開発の基礎は身についている(はず)
© DMM いつでもAndroidアプリ開発できる!
© DMM いつでもお待ちしてますね
© DMM #team-android
© DMM 講師陣からの感想
© DMM 皆さんからの感想
© DMM 来年以降のためにもぜひFBを
© DMM 今日の残り時間
© DMM 時間が来るまで残りの開発を進めましょう!
© DMM キリの良いタイミングで切り上げて明日に備える
© DMM お疲れ様でした!
© DMM 研修残りも頑張ってください! 応援しています〜!
© DMM これからもよろしくお願いします!