個人的Androidアプリ開発学習リソース

2022年ZOZOアドベントカレンダー2回目の投稿となります。まさです！
本記事は ZOZO Advent Calendar 2022 カレンダー Vol.3 の24日目の記事です。

明日はいよいよクリスマスですね🎄皆さんの準備は終わりましたでしょうか？

本記事では、振り返りとまとめの意味を込めて、普段Android開発の学習をする上で私個人がよくお世話になっているウェブサイト達や、それらをより効率的に活用できるようにサポートしてくれるツールの数々をできるかぎる紹介をしていこうと思います。また、これらのツールやサイトを`「Android技術学習・開発用」`、`「Android関連情報収集用」`および`「内容まとめ用」`の3つのジャンルで紹介していこうと思いますので、ぜひ少しでも皆さんの新しい発見や興味に繋がるキッカケになれれば幸いです。
<font color="DarkGray">_※特に紹介する順番などには意味はありませんので、ご了承お願いいたしします_</font>


# 📚Android技術学習・開発用サイトとツール

## Android Developers
https://developer.android.com/

　言わずと知れたGoogle社がメンテナンスをしている、Android開発者向けの公式サイトです。Android開発者であれば１度は必ず世話になっていると言ってもいいことでしょう。
　Android SDK ツールや豊富API ドキュメントを提供しており、またAndroidアプリ開発言語であるKotlinや最新のComposeなどといったトレーニングコースもあるためオススメです。

**💡ひとことオススメポイント**：
豊富なドキュメントや学習コンテンツが用意されており、初心者の方や困った場合はまずここを確認してみるといいかもしれないですね

## Google Codelabs
https://codelabs.developers.google.com/

Google CodelabsはGoogleが提供しているAndroid関連のトピックの教育コンテンツを提供しているウェブサイトです。
各チャプターごとにステップが分けられており、チュートリアル形式で内容が大変分かりやすくまとめられています。

**💡ひとことオススメポイント**：
学習の方向性や、進め方がわからないトピックがあったときは、一回Codelabsから始めてみるのもいいかもしれないです！

## Android Code Search
https://cs.android.com/

　Android Code SearchとはAOSP(Android Open Source Project)のソースコードの閲覧が可能な公式が提供しているサービスです。公式での関数や変数などの実装やエラーについて一歩踏み込みたい時の参考に利用するといいでしょう。

**💡ひとことオススメポイント**：
対象になるワードを検索することで、Androidのソースコードが閲覧できます。

## Qiita
https://qiita.com/

　本記事を投稿するためにも使用させていただいているQiitaですが、エンジニアに関する知識を記録・共有するためのサービスとなっております。Androidはもちろん、他の技術やマネージメントなどエンジニアに関するノウハウの情報がたくさん集まっています。
　また、知識を習得するというインプットだけでなく自分から記事投稿というアウトプットもできるという点でも魅力的だと思います。

**💡ひとことオススメポイント**：
日本語での記事が多数で読みやすく、インプットとアウトプットの双方向の学習ができます！

## [Medium](https://cs.android.com/)
https://medium.com/

　Medium（ミディアム） とは、主に英語圏で人気があるブログサービスであり、英語版のQiitaみたいなサービスです。様々な国々からのエンジニアのAndroid関連の記事が投稿されており、Androidの技術スキルアップはもちろん英語でのテックワードや表現の勉強にも繋がります。

**💡ひとことオススメポイント**：
私がAndroidの実装で困難に直面した時に、かなりの頻度でここで解決策につながるようなアイデアやアプローチを得ています。

## ProAndroidDev
https://proandroiddev.com/

こちらのはサイトはベルリンの経験豊富なAndroid Developersのチームによって2017年に設立されました。サイト上で投稿が許可されているトピックは、Androidアプリ開発に関するもの、またはそれに関連するものである必要がされており、また内容も中身のエンジニアさん達によって校訂されています。
投稿されている記事は上級者向けから初心者向けのレベルまで様々あり、実際海外のDroidConでの発表に基づいた記事なども投稿されているため、すごく勉強になります。


## Zenn
https://zenn.dev/

Zennエンジニアのための新しい情報共有サービスとして提供されています。Android開発関連の知見の記事の投稿はもちろん、1冊の本として自分の記事の内容を無料または有料で公開することもできます。


## Youtube 
　普段は音楽を聴いたり、好きなコンテンツを見る時などレクリエーションに使用するイメージが個人的にあったサービスYoutubeですが、実はAndroidに関連する豊富な学習コンテンツの運営を行なっているチャンネルもあるため、動画を視聴しながらペアプロ感覚で実装や学習ができるのがオススメポイントです。

また、私が普段学習のために視聴している４つのチャンネル以下で紹介します。

https://www.youtube.com/@AndroidDevelopers
<details>
<summary>個人的チャンネル情報</summary>
Google社が運営している公式のチャンネルです。モダンなAndroid開発という英語のフレーズの頭文字をとった<b>MAD（Modern Android Development）</b>シリーズからアーキテクチャーに関するトピックやWearable　OSに関してのトピックなど様々な投稿があります。
また毎年行われているGoogle I/Oのアーカイブ動画の視聴もできます。
</details>

https://www.youtube.com/@PhilippLackner
<details>
<summary>個人的チャンネル情報</summary>
Philippさんのチャンネルでは、新しいトレンドであるComposeに関するチュートリアルからアーキテクチャやコーディングのマインドセットなどのAndroidに関する幅広いコンテンツが提供されています。また、Instagramの方も運営されており、shortsでのコーディングTipsなどのコンテンツもあります。
</details>

https://www.youtube.com/@codingwithmitch
<details>
<summary>個人的チャンネル情報</summary>
Mitchさんのチャンネルは６年間運営されており、最新のComposeから少し前のRaJavaなどAndroidに関する多くのノウハウが投稿されています。また、Youtubeでのチャンネル以外にも <a href= "https://codingwithmitch.com/">https://codingwithmitch.com/</a>という個人サイトを運営されており、こちらではより実践的な内容が提供されており、またコンテンツの内容によってはプロジェクト作成から完了するまでのフルでチュートリアルを提供している物もあります（有料と無料のコンテンツがあります）。
</details>

https://www.youtube.com/@mokelab
<details>
<summary>個人的チャンネル情報</summary>
モケラボチャンネルはモケラボ株式会社が運営している、アプリ開発に関する技術情報の発信や技術支援を行なっているYouTubeチャンネルです。

Android以外にもFlutterやReactなどのコンテンツも提供されています。
</details>



**💡ひとことオススメポイント**：
　動画の一時停止/再生ができ、自分のペースでコードを照らし合わせながら学習できるのが魅力だと感じてます。　
　また筆者は書籍で学習する方法よリ、音や動画などの情報で学習する方が吸収効率がいいと感じているので、同じような方やYoutubeで学習を試したことがない方は試してみては如何でしょうか？

## Udacity
https://www.udacity.com/courses/all

Udacityはコンピュータサイエンス分野のトピックを幅広くカバーしているオンライン講座サイトです。未経験から上級者向けの様々なコースがあり、中にはGoogle社が無料で提供しているAndroid開発関連の講座なども多数ありオススメです。

機械学習やデータ分析などの講座もあります。

**💡ひとことオススメポイント**：
アプリをプロジェクト作成から一緒に作ることができ、Chapter毎に目標が設定されているため、内容はとても分かり易いです！

## Jetpack Compose Playground
https://foso.github.io/Jetpack-Compose-Playground/

Jetpack Compose Playgroundは、Jetpack Composeが提供するAPIと、Composeを用いたAndroidUI開発をどのように改善するかを紹介しているショーケースアプリケーションとウェブサイトです。


**💡ひとことオススメポイント**：
最新のトレンドの一つであるJetpack Composeのサンプルコードなどがあり、とても分かり易いです！

## JetBrains Toolbox App
https://www.jetbrains.com/ja-jp/toolbox-app/

JetBrainsツールを簡単に管理できるツールであり、一括でのアップデートや自動更新それからロールバックなども行うことができます。Android開発用IDEであるAndroid StudioもJetBrainsツールの一つであり、Toolboxで管理することができます。別々のバージョンのAndroid Studioを容易に管理と切り替えが行え、大変便利でオススメです。

**💡ひとことオススメポイント**：
とにかく便利！PC容量に空きがあるのであれば、インストールしておいて損はないと思います

## DeepL翻訳ツール
https://www.deepl.com/

DeepL翻訳は、無償のニューラル機械翻訳サービスです。テキストだけではなく、ファイルの翻訳などにも使用可能です。
私はどちらかというと英語は得意な方ですが、それでもDeepL翻訳ツールにお世話になることが多々あります。英語以外の言語にも使用できるので、とても便利です。
またウェブサイト以外に、Chromeの拡張機能などもありこちらは閲覧中のウェブに直接翻訳を適用することができるようになってます。

**💡ひとことオススメポイント**：
Androidやエンジニア関連の記事を英語で読むことで、スキルアップとandroid関連の英語の学習にもなり一石二鳥！

# 🔍Android関連情報収集用サイトとツール

## Android Developers Japan Blog
https://android-developers-jp.googleblog.com/

Google社がメンテナンスを行なっている、日本のAndroidデベロッパー向けてGoogle PlayやAndroid開発に関する最新情報をお届けするブログです.　日本のエンジニア向けのブログサイトなので、記事の内容が全て和訳されており大変読みやすくなっております。

**💡ひとことオススメポイント**：
和訳された記事には引用元の記事のリンクも提供されているため、本来の記事と和訳記事を比較しながら読んでみるのもオススメです！

## AndroidDagashi
https://androiddagashi.github.io/

AndroidDagashiは毎週１週間分のAndroid開発に関連ニュースをピックアップをして届けてくれるサイトです。

**💡ひとことオススメポイント**：
毎週中のエンジニアさん達が記事の厳選とピックアップをしていて、最新情報のキャッチアップにはうってつけです！

## Ioreader
https://www.inoreader.com/
InoreaderとはRSSフィーダーの一つであり、更新情報を受け取りたいウェブサイトなどのRSSを登録することで、自動的に更新情報を表示してくれるようなサービスです。「サイトの更新がされることは分かるが、更新のタイミングが分からない！」みたいな方は、是非試してみてください！

パネル形式でサイトの表示ができ、自分好みに表示フォーマットも調整できます。その他、前で紹介したDeepLとの併用でページ全体の日本語化も可能です。以下サンプルイメージとして私個人のInoreaderの表示フォーマットを貼っておきます。
![スクリーンショット 2022-12-24 20.20.38.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/646120/394c779f-91ea-56e4-b8dc-75aedbf22ca4.png)



# ✍️内容まとめ用サイトとツール
## Notion
https://www.notion.so/ja-jp

Notionは、本来企業や組織のメンバーの為のNote-takingソフトウェアプラットフォームとしてサービス提供がされていますが、個人用としてもとても便利だと感じております。

私は学習したノウハウを整理するのにNotionをすごく重宝しているのですが、主に以下の理由があります。
- 豊富なテンプレートやフォーマット用のコンポーネントがあり、とりあえず始めるには便利
- PDFの埋め込み、コードブックの埋め込み、YoutubeやGithubなど外部リンクへの連結もできて、自分のノートと合わせて確認ができ便利
- Notionのスマホアプリもあり、アカウント単位で同期もされていて、プラットフォームの制限なしに見られて便利


# 最後に

今回は、私が個人的にAndroid開発の学習用に使用しているリソースの一部を紹介させていただきました。上記紹介した部分以外でも、ZOZOのテックブログにもノウハウの知見共有がされている良記事が多数あるので、是非閲覧してみてください！

https://techblog.zozo.com/

ここまで記事を読んでいただき、大変ありがとうございます。是非コメント等で皆さんのおすすめのサイトなどの交流ができると嬉しいです。
それでは皆さん良きクリスマスを！メリークリスマス🎅🎄！