返回排行榜

amitshekhariitbhu/android-developer-roadmap

Javaoutcomeschool.com

Android Developer Roadmap - A complete roadmap to learn Android App Development

androidroadmaplearningandroid-appdevelopementdeveloperandroid-developerjavakotlinjetpackrxjavarxjava2
Star 增长趋势
Star
2.9k
Forks
490
周增长
Issues
11
1k2k
2019年7月2021年11月2024年3月2026年7月
制品库Mavengit clone https://github.com/amitshekhariitbhu/android-developer-roadmap.git
README

Android Developer Roadmap

Android Developer Roadmap

A complete roadmap to learn Android App Development. This roadmap will help you in becoming a complete Android Developer.

Note: All the resources to learn all of the concepts in the roadmap will be provided on:

About me

Hi, I am Amit Shekhar, Founder @ Outcome School • IIT 2010-14 • I have taught and mentored many developers, and their efforts landed them high-paying tech jobs, helped many tech companies in solving their unique problems, and created many open-source libraries being used by top companies. I am passionate about sharing knowledge through open-source, blogs, and videos.

Follow Amit Shekhar

Follow Outcome School

I teach at Outcome School

  • AI and Machine Learning
  • Android

Join Outcome School and get a high-paying tech job: Outcome School

Live session on "Android Developer Interview Preparation for Product-based Companies"

I conducted a live session on "Android Developer Interview Preparation for Product-based Companies"

Interacted with over 500 Android Developers.

Guided, motivated, and inspired them to aim higher and achieve more.

Recording Link: https://drive.google.com/file/d/1VWW3l_itH6vYbNYzNer6XW5_x0jzOF4O/view?usp=sharing

Document Link: https://docs.google.com/document/d/14UdD7Gd1j3no583ALx2t2Ggt3G_CECYhenLE-m-bkzA/edit?usp=sharing

Roadmap to learn Android App Development

  • Programming
    • Java
    • Kotlin
  • Android Studio
    • Android Studio IDE Overview
    • Project Structure
      • Java/Kotlin
      • XML
      • .gradle files
  • Android Component
    • Activity
      • Activity Lifecycle
      • Tasks & Back Stack
    • Service
    • Broadcast Receiver
    • Content Provider
  • Intents
    • Types of Intent
      • Implicit
      • Explicit
    • Intent Filter
  • Static User Interface
    • View
      • Button, ImageView, TextView, EditText etc
    • ViewGroup
      • LinearLayout, RelativeLayout, FrameLayout, ConstraintLayout
  • Dynamic User Interface
    • RecyclerView
    • ViewPager
    • Spinner
  • CustomView
    • Canvas
    • Bitmap
    • Paint
  • UI Resources
    • Drawables
    • String
    • Styles
  • Fragments
    • Fragment Lifecycle
    • Fragment Manager
  • Support User Interface
    • ProgressBar
    • Dialogs
    • Toast & Snackbar
  • Storage
    • Shared Preferences
    • DataStore
    • File Systems
    • Database
      • RoomDB
  • Build
    • Gradle
    • Debug / Release Configuration
  • Threading
    • Thread
    • Handler/Looper
    • ThreadPoolExecutor
    • RxJava
    • Coroutines/Flow
    • WorkManager
  • Debugging
    • Memory profiling
    • Logging
    • Systrace
    • Exceptions
    • Error Handling
  • Memory Leak
    • Detecting and Fixing Memory Leaks
    • Context
  • 3rd Party Library
    • Image Loading
      • Glide
      • Picasso
    • Dependency Injection
      • Dagger
    • Networking
      • Fast Android Networking Library
      • Retrofit
    • MultiThreading
      • RxJava
      • Coroutines
      • Kotlin Flow API
  • Coroutines - You can learn these topics here: Master Kotlin Coroutines
    • coroutines
    • suspend
    • launch, async-await, withContext
    • dispatchers
    • scope, context, job
    • lifecycleScope, viewModelScope, GlobalScope
    • suspendCoroutine, suspendCancellableCoroutine
    • coroutineScope, supervisorScope
  • Kotlin Flow API - You can learn these topics here: Kotlin Flow API
    • Flow Builder, Operator, Collector
    • flowOn, dispatchers
    • Operators such as filter, map, zip, flatMapConcat, retry, debounce, distinctUntilChanged, flatMapLatest
    • Terminal operators
    • Cold Flow vs Hot Flow: Cold Flow vs Hot Flow
    • StateFlow, SharedFlow, callbackFlow, channelFlow
  • Data Format
    • JSON
      • GSON
    • Flat Buffer
    • Protocol Buffer
  • Networking
    • GET/POST/DELETE/PUT/PATCH
    • OkHttp, Interceptor
    • Caching
    • Retrofit with Coroutines/Flow
    • Multipart request
    • Read, Write Timeout
    • OAuth 2.0 - Refresh and Access Token
    • HTTP Status Codes
  • Android Jetpack
    • Foundation Components
      • AppCompat
      • Android KTX
      • Multidex
    • Architecture Components
      • LiveData
      • ViewModel
      • DataBinding
      • Paging
      • Work Manager
      • Navigation
    • Behaviour Components
      • Download Manager
      • Media Playback
      • Notification
      • Permissions
      • Preference
      • Sharing
      • Slice
    • UI Component
      • Animation & Transition
      • Android Auto
      • Emoji
      • Palette
      • Android TV
      • Android Wear
  • Compose
    • State: remember, rememberSaveable, MutableState
    • Recomposition
    • State hoisting
    • Side-effects
    • Modifier
    • Theme
    • Layout, List
    • Gestures, Animation
    • CompositionLocal
  • Common Design Patterns and Architecture
    • Builder Pattern
    • Singleton
    • Dependency Injection
    • Factory
    • Observer
    • Repository
    • MVVM
    • MVP
    • MVI
    • Clean architecture
  • Unit Testing
    • Local Unit Testing
    • Instrumentation Testing
  • Firebase
    • FCM
    • Crashlytics
    • Analytics
    • Remote Config
    • App Indexing
    • Dynamic Link
  • Security
    • Encrypt / Decrypt
    • Proguard
    • R8
  • App Release
    • .keystore file
    • App Bundle
    • Playstore
  • Keep Learning and Improving

Get High Paying Tech Job: Outcome School

Found this project useful :heart:

  • Support by clicking the :star: button on the upper right of this page. :v:

License

   Copyright (C) 2024 Amit Shekhar

   Licensed under the Apache License, Version 2.0 (the "License");
   you may not use this file except in compliance with the License.
   You may obtain a copy of the License at

       http://www.apache.org/licenses/LICENSE-2.0

   Unless required by applicable law or agreed to in writing, software
   distributed under the License is distributed on an "AS IS" BASIS,
   WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
   See the License for the specific language governing permissions and
   limitations under the License.

Contributing to Android Developer Roadmap

Just make a pull request. You are in!

相关仓库
flutter/flutter

Flutter makes it easy and fast to build beautiful apps for mobile and beyond

DartBSD 3-Clause "New" or "Revised" Licensemobileandroid
flutter.dev
177.9k30.7k
Genymobile/scrcpy

Display and control your Android device

CApache License 2.0androidc
146.1k13.5k
react/react-native

A framework for building native applications using React

C++MIT Licenseandroidapp-framework
reactnative.dev
126.2k25.2k
facebook/react-native

A framework for building native applications using React

C++MIT Licenseandroidapp-framework
reactnative.dev
120.9k24.5k
rustdesk/rustdesk

An open-source remote desktop application designed for self-hosting, as an alternative to TeamViewer.

Rustcrates.ioGNU Affero General Public License v3.0remote-controlremote-desktop
rustdesk.com
118.6k18.1k
justjavac/free-programming-books-zh_CN

:books: 免费的计算机编程类中文书籍,欢迎投稿

GNU General Public License v3.0pythonjavascript
weibo.com/justjavac
117.7k28.2k
Hack-with-Github/Awesome-Hacking

A collection of various awesome lists for hackers, pentesters and security researchers

Creative Commons Zero v1.0 Universalhackingsecurity
116.6k10.5k
tldr-pages/tldr

Collaborative cheatsheets for console commands 📚.

MarkdownOthershellman-page
tldr.sh
63.2k5.3k
Solido/awesome-flutter

An awesome list that curates the best Flutter libraries, tools, tutorials, articles and more.

Dartflutterawesome-list
60.7k6.9k
2dust/v2rayNG

A V2Ray client for Android, support Xray core and v2fly core

KotlinGNU General Public License v3.0androidproxy
v2rayng.2dust.link
59.9k7.8k
termux/termux-app

Termux - a terminal emulator application for Android OS extendible by variety of packages.

JavaMavenOtherandroidterminal
f-droid.org/en/packages/com.termux
57.9k7k
wasabeef/awesome-android-ui

A curated list of awesome Android UI/UX libraries

MIT Licenseandroidawesome
56.9k10.3k