Roadmap for learning Android Development by @championswimmer

Thread Summary 🧵👇
1. Expectations from an Android Developer
i. Android Engineer: Knows basics of programming, can work in android team.
ii. Senior Android Engineer: Knows UI-based development, can be responsible for a small app.
iii. Android Lead: Design + Architecture of complex apps.
2. OOPs Concepts
i. Interfaces, Abstract Classes
ii. Collection Framework - ArrayList, HashMap, Iterator
iii. Visibility (public/private/package) and Inheritance
iv. Exceptions, try-catch syntax
3. Basics of Android
i. Activities and Layouts
ii. Project structure (res, src, manifest etc)
iii. Layouts and UI, XML
4. Event-driven programs (Conceptual)
1. event-driven vs procedural programs
2. concept of ‘view state’
3. UI event listnets
4. etc
5. Important Android Concepts
i. Activity Lifestyle
ii. Components: Activity, Service, Recievers, Providers
iii. Intents
iv. Ids, relations, dp/sp measurements in XML
v. onClickListener, findViewById & view-binding
vi. ListView, RecyclerView, dynamic data
vii. Projects: Calculator, TicTacToe

6. Architecture and State Management (Conceptual)
i. MVC, MVP, MVVM, concept of *MV pattern
ii. Synchronising state and data b/w model and view
iii. Separation of concerns
iv. Stateless and stateful components
v. Persistence of state
vi. Propagation of events

7. Android Architecture Components
i. Fragments and fragment lifecycle
ii. ViewModel, LiveData, and Repository Pattern for MVVM Apps
iii. Saving and restoring state across app and activity restarts
iv. Saving data in local DB using SQLite and Room (ORM)
v. Projects: Task List Manager, Notes App

8. Libraries for Internet Driven Apps
i. OkHttp & Retrofit for: Network calls and REST API libraries
ii. Glide for: Image rendering
iii. Moshi/GSON/Jackson: Serialization frameworks for JSON data
iv. Main Thread vs Background Threads and Basic Coroutines
v. Projects: Github Trending Repo Tracker, Instagram Clone with Imgur API
9. Advanced Language/Platform Concepts
i. Multi-threading, Thread-pool executors
ii. Race conditions, Synchronized, Volatile
iii. OOP Design Patterns: Builder, Factory, Singleton
iv. HLD Patterns
a. Clean Architecture
b. Domain Driven Developments
c. Modularization
d. Dependency Injection (Dagger/Koin/Hilt)
v. RxJava and Reactive Programming

10. Advanced Android Concepts
i. Runtime-permission management
ii. Background tasks, WorkManager, AlarmManager
iii. Android OS providers - Contacts, SMS, Storage access APIs
iv. Audio/Video local and streaming with ExoPlayer
v. GPS, LocationManager, Google Maps API
vi. Android Sensor framework, gesture detection
vii. Firebase Analytics, Push Notification, ML Kit
11. Testing & Automation
i. Unit Testing and Instrumentation Testing Projects
ii. Robo Scripts, Espresso Tests
iii. Mockito, Mokka mocking frameworks
iv. CI/CD integrations, build and deploy pipelines
12. Managing Large Android Projects
i. Projects with 100+ gradle modules
ii. Custom gradle build scripts
iii. Gradle alternatives (Buck, Bazel)
iv. Custom View Components (writing views in Kotlin instead of XML)
v. Custom patterns for RecyclerViews, BaseActivity, BaseFragment with common reusable components
vi. Detecting memory leaks with LeakCanary
vii. Performance Optimisation through Android Profiler

13. Being Up-to-date
i. Watch Google I/O
ii. Jetpack Compose
iii. Dynamic Delivery and Feature Modules
iv. Animations with MotionLayout

You can watch the full video from @scaler_official and @championswimmer here:

• • •

Missing some Tweet in this thread? You can try to force a refresh
 

Keep Current with Lohitaksh Nandan

Lohitaksh Nandan Profile picture

Stay in touch and get notified when new unrolls are available from this author!

Read all threads

This Thread may be Removed Anytime!

PDF

Twitter may remove this content at anytime! Save it as PDF for later use!

Try unrolling a thread yourself!

how to unroll video
  1. Follow @ThreadReaderApp to mention us!

  2. From a Twitter thread mention us with a keyword "unroll"
@threadreaderapp unroll

Practice here first or read more on our help page!

More from @NandanLohitaksh

Mar 7
Websites/Platforms 🌐 to learn to hack 🕵️

⚗️Cybersecurity training platform

→ Hackthebox
→ Hacxpert
→ Tryhackme
→ Pentester Lab
→ Vulnhub
→ Cybrary
→ CybersecLabs
→ Root Me
→ OverTheWire
→ Vulnmachines
→ RangeForce
→ certifiedsecure
→ EchoCTF
→ Try2Hack

thread
🌐Web Exploitation
→ Hackxpert
→ Portswigger Web Security Academy
→ Bug Bounty Hunter
→ Pentester Lab
application.security
→ OWASP Juice Shop
→ OWASP WebGoat
→ bWAPP
→ OWASP Broken Web Application
🏁CTF Based Learning
→ CTFTime
→ PicoCTF
→ 247CTF
→ Hackthissite
→ WeChall
→ W3challs
→ Hacker101
→ IO wargame
Read 8 tweets
Mar 7
7 Hacking Books you must read...

🧵

#cybersecurity #hacking
1/

1. Web Application Hackers Handbook

amazon.in/Web-Applicatio…
2/

2. Real-World Bug Hunting

amazon.in/Real-World-Bug…
Read 8 tweets
Mar 7
Bypass Rate Limits in Web Applications and API's.

— What is Rate Limit

Rate limiting is a process to limiting the number of request an user can make to a web server in an span of time.

#web #api #rate #limit #bypass #bugbounty #bugbountytips #infosec #cybersecurity
This can be achieved by implementing IP based, Session Based rate limits on web server.

—Where to Look for Rate Limit Bugs

Place like :
— Login/Signup pages
— Register Pages
— 2FA codes
— Confirmation Codes
...and any other request which if bruteforce will allow attacker to achieve anything malicious should be check for "No Rate Limit" issue.

[Bypass 1] - Using Null Chars

%00, %0d%0a, %09, %0C, %20, %0
Read 11 tweets
Mar 1
Top 10 Github Repositories to Learn Python

🧵 thread ↓

#python #pythonprogramming #pythonlearning #github
1. The Algorithms

The Algorithms/Python repo is one of the most starred and forked Python GitHub repo on and there’s a good reason behind its popularity.

github.com/TheAlgorithms/…
2. vinta/awesome-python

The Awesome Python repo is the second entry in our list of top GitHub Repos for learning Python to feature such crazy high statistics.

github.com/vinta/awesome-…
Read 12 tweets
Mar 1
Top 50 Linux Commands You Must Know as a Regular User... :)

A Thread 🧵
Retweet to let others know about this... :)

#Linux #cybersecurity #infosec
1. ls - view contents of directory (list)
2. pwd - path of the current directory
3. cd - change directoryn
4. mkdir - make new directory
5. mv - move files / rename files
6. cp - copy files
7. rm - remove files
8. touch - create blank new file
9. rmdir - delete directory
10. cat - list content of file to terminal
11. clear - clear terminal window
12. echo - move data into a file
13. less - Read text file one screen at a time
14. man - show manual of Linux commands
Read 12 tweets
Feb 20
List Of Best Cyber Security and Hacking Documentaries | #infosec

[ Thread ]

#cybersecurity #hacking #IoT #bugbounty #linux #tech #movies #infosecurity #thesecureedge #Security
1. We Are Legion – The Story Of The Hacktivists -lnkd.in/dEihGfAg
2. The Internet’s Own Boy: The Story Of Aaron Swartz - lnkd.in/d3hQVxqp
3. Hackers Wanted - lnkd.in/du-pMY2R
4. Secret History Of Hacking -
5. Def Con: The Documentary - lnkd.in/dPE4jVVA
6. Web Warriors - lnkd.in/dip22djp
7. Risk (2016) - lnkd.in/dMgWT-TN
8. Zero Days (2016) - lnkd.in/dq_gZA8z
Read 6 tweets

Did Thread Reader help you today?

Support us! We are indie developers!


This site is made by just two indie developers on a laptop doing marketing, support and development! Read more about the story.

Become a Premium Member ($3/month or $30/year) and get exclusive features!

Become Premium

Don't want to be a Premium member but still want to support us?

Make a small donation by buying us coffee ($5) or help with server cost ($10)

Donate via Paypal

Or Donate anonymously using crypto!

Ethereum

0xfe58350B80634f60Fa6Dc149a72b4DFbc17D341E copy

Bitcoin

3ATGMxNzCUFzxpMCHL5sWSt4DVtS8UqXpi copy

Thank you for your support!

Follow Us on Twitter!

:(