2016 - Kotlin can be used unofficiall7 2017 - Kotlin support added offcially 2018 - Kotlin use encouraged by Google

We must know Java, but apps must be made in Kotlin only. All new code is written in Kotlin Zomato - codebase is 85% Java Target - 85% Kotlin

OOP - Interface, function overriden, callbacks, Lambdas, Generics, Java Collection

Android things

Components - Activities(foreground), Services(background), Broadcast Recievers(OS events), Content Providers(Rarely used in SDE 2)

Android is UI driven, not procedure one

Chapter 1 - 2 weeks #

Activities - What is it, how is done?
Layouts - UI elements
View Elements - text view, buttons, Edit text, image view

Intents - Implicit, explicit - share and select apps. App to app communication

Chapter 2 - 4 weeks #

Complex UI - List view(infinite scrolls), recycler view, Dialogs, Toast(like subs), sheets,
    Drawyers, View Pagershorizontal buttons to change sections
Everything here is implemented using fragments(lightweight activities)

Chapter 3 - 2 weeks + 3w(project, mandatory) #

Network Facilities, HTTP dict, Square OK HTTP(img, http request/response), Square Retrofit(REST API), Apollo Android(GraphQL), Glide(image)
Gradle - how to add libraries

We are ready to make apps, realworld.io - clone of Medium, using imgur API and make insta stories clone, daily notes/diary

Chapter 4 - 2 weeks #

Media - play audio, play in background(using services), Video using Exoplayer, Camera(take photo, record videos - this is difficult)

Chapter 5 - 2 weeks #

Very important
Android Jetpack - toolkit to write Android apps, MVVM(architecture for building models), Work manager, Job-scheduler
Saving data - SQLite using Room(which is an ORM - start with this after learning SQL), CameraX

Deploy/Production - 3 #

Firebase - User Auth, Notifications, Data Sync, Cloud

We can make an end to end app.

Advanced Stuff - useful for >= SDE2 #

Kotlin has something - corountines (1 weeks) Rx Java - (2 weeks) Dependency Injection - Koin(2 weeks) and Dagger(2 weeks) Jetpack Compose - for UI (4 weeks)

After SDE2 - for futureproofing #


Code With Harry

How to earn #

https://www.youtube.com/redirect?redir_token=QUFFLUhqbnUzcC0wci1BWlRJaHBhSWNBazFodWwtTEN6Z3xBQ3Jtc0trVUZ6d3dYdEdHeHNseWliTnh2eDA5d3NzdXU4T1cxTXZDN09SNE5KbXR6UXF3YmpBUWtYOXBOTllmX01VNXNEWUR2QVBLUlBJMUViVGVPWThqelhkSWRhY3p1QzNXamtzN2dBcVVmR2d6OGRoWTgycw%3D%3D&v=A14BLDzNy2k&q=https%3A%2F%2Fdocs.google.com%2Fdocument%2Fd%2F1nl7jAWYmt0zvYmbImp8pT-VLMNdHedoMdvg7qvQ1EV8%2Fedit%3Fusp%3Dsharing&event=video_description


Love Babbar - in 2 months Starting point - just programming

Courses: weeks = days(actually) User interface - (2 days) - https://www.udacity.com/course/android-basics-user-interface--ud834 Android User input - (4 days) - https://www.udacity.com/course/android-basics-user-input--ud836 Multiscreen apps (10 days) - https://www.udacity.com/course/android-basics-multiscreen-apps--ud839 Networking - (5 days) - https://www.udacity.com/course/android-basics-networking--ud843 Data Storage - (1 week) - https://www.udacity.com/course/android-basics-data-storage--ud845 Developing Android Apps(~1 week) - https://www.com/course/new-android-fundamentals--ud851 Advanced Android App Devhttps://www.udacity.com/course/advanced-android-app-development–ud855 Firebase - (2 days) - https://www.udacity.com/course/firebase-in-a-weekend-by-google-android--ud0352 Material Design - (1 day) - (optional) - https://www.udacity.com/course/material-design-for-android-developers--ud862