Android Compose Essentials - Build Android Apps Like A Pro
Published 10/2024
MP4 | Video: h264, 1920x1080 | Audio: AAC, 44.1 KHz
Language: English | Size: 14.06 GB | Duration: 25h 42m
Published 10/2024
MP4 | Video: h264, 1920x1080 | Audio: AAC, 44.1 KHz
Language: English | Size: 14.06 GB | Duration: 25h 42m
Learn Kotlin and Compose, SQLite with Room, DI with Hilt, Networking with Retrofit and Modern Architecture Principles
What you'll learn
Learn the basics of Kotlin Language and Object Oriented Programming concepts
Learn asynchronous coding with Kotlin Coroutines and Flow
Learn how to build native Android Application from scratch
Learn how to build reactive and declarative user interfaces using Jetpack Compose Library
Learn Modern Android App Architecture with MVVM
Learn best practices like Separation of Concern, Single Source of Truth (SSOT), Drive UI from Models, Dependency Injection
Requirements
No experience on App Development (Android or iOS) is required.
Basic knowledge on any Object Oriented Programming based language like C++, Java, C# or Python is required.
Description
Unlock the power of Android Jetpack Compose and Kotlin to build modern, efficient, and beautiful UI applications. This comprehensive course is designed to guide you through the essentials of Jetpack Compose, from the fundamentals of Kotlin to advanced state management, concurrency, and networking.Whether you're a beginner or an intermediate developer, this course is structured to provide a solid foundation and hands-on experience with Jetpack Compose.What You Will Learn:Kotlin Fundamentals:Master the basics of Kotlin, including loops, functions, and object-oriented programming (OOP) concepts.Understand special Kotlin classes like data classes, sealed classes, and more to leverage Kotlin’s full potential.Android Project Setup & Jetpack Compose Basics:Learn Android project structures and how to set up development tools and SDKs.Dive into Jetpack Compose fundamentals, exploring Composable functions, Preview Composables, text, and image Composables.Layout in Jetpack Compose:Explore Layout Composables like Column, Row, Box, LazyColumn, Modifier, Scaffold, and AppBar.Work on hands-on tasks to design UI components like a profile page and master the Weight Modifier for responsive layouts.State Management & Lifecycle:Grasp the key concepts of State in Compose, MutableState, and the Remember function.Master state hoisting, ViewModels, and Activity lifecycle management while adhering to best practices like Separation of Concern and Single Source of Truth (SSOT).Concurrency with Kotlin:Dive into Kotlin Coroutines and learn to manage concurrency with suspend functions, async/await, launch, and parallel decomposition techniques.Networking & Dependency Injection:Build seamless networking integrations using Retrofit, manage device location, and enhance app architecture with Dependency Injection using Hilt and the Repository pattern.Persistence & Navigation:Master the Room Persistence Library to implement database CRUD operations and complex JOIN queries.Learn to navigate between destinations using Compose Navigation, argument passing, and SavedStateHandle.By the end of this course, you'll be equipped with the skills to build modern Android applications using Jetpack Compose and Kotlin, applying best practices in app architecture, state management, and efficient UI design. Whether you're looking to build production-ready apps or enhance your current projects, this course will set you up for success.Enroll now and start building beautiful Android apps with Jetpack Compose!
Overview
Section 1: Welcome to the course
Lecture 1 Welcome!
Lecture 2 How to take this course
Section 2: Kotlin Programming Language
Lecture 3 Section overview - What you will learn
Lecture 4 Hello World-Our first Kotlin Program
Lecture 5 Kotlin Variables
Lecture 6 More Kotlin Data Types
Lecture 7 String interpolation
Lecture 8 Kotlin Operators
Lecture 9 Conditional Statement - If Else
Lecture 10 If Else Expression in Kotlin
Lecture 11 Excercise-Find the weather condition
Lecture 12 Range is Awesome
Lecture 13 When is better than if-else-if
Lecture 14 Kotlin Loops
Lecture 15 Collection - Immutable List
Lecture 16 Collection - Mutable List
Lecture 17 Collection - Map
Lecture 18 Declare a Function with Parameters
Lecture 19 Function with Optional Parameters
Lecture 20 Lambda Expression - A function without a name
Lecture 21 Real implementation of Lambda
Lecture 22 Null Safety in Kotlin
Lecture 23 Create a Class and Object
Lecture 24 Primary Constructor and init block
Lecture 25 Validate primary constructor argument
Lecture 26 Handle exception with try-catch
Lecture 27 The toString method
Lecture 28 The equals method
Lecture 29 Date class takes care of everything
Lecture 30 Inheritance in Kotlin
Lecture 31 Necessity of Method Overriding
Lecture 32 Abstract Class and Method
Lecture 33 Interface in Kotlin
Lecture 34 Object and Companion Object
Section 3: Welcome to Android
Lecture 35 Install Jetbrains Toolbox
Lecture 36 Install Android Studio and SDK
Lecture 37 Install Virtual Device and SDK Tools
Lecture 38 Create your first Android Project
Lecture 39 Run our first app on Emulator
Lecture 40 Bug fixed with a RESTART
Lecture 41 Overview of the starter project
Lecture 42 What is a Composable Function
Lecture 43 The Preview Composable Function
Lecture 44 Create our own Composable
Lecture 45 Change Text size and Color
Lecture 46 Show Image on Screen
Lecture 47 Resize the Image with Modifier
Section 4: Layout Composables
Lecture 48 Section Overview - What you will learn
Lecture 49 Layout Composable - Column
Lecture 50 Layout Composable - Row
Lecture 51 Layout Composable - Box
Lecture 52 First task - Build a Profile Page layout
Lecture 53 Profile Page layout solution
Lecture 54 The Weight Modifier - Make your layout responsive
Lecture 55 Exercise on weight modifier
Lecture 56 Exercise Solution on weight modifier
Lecture 57 Lazy Column - Show a person list
Lecture 58 Column vs LazyColumn
Lecture 59 What is Material Design
Lecture 60 Material Components - Scaffold Appbar and Floating Action Button
Section 5: State in Compose
Lecture 61 Section Overview - What you will learn
Lecture 62 Prepare the Counter App Project
Lecture 63 Imperative vs Declarative
Lecture 64 MutableStateOf and Remember Functions
Lecture 65 Excercise-A simple Photo Gallery App
Lecture 66 Bmi Calculator Overview
Lecture 67 Take Input using TextField composable
Lecture 68 Bmi Calculator - Reusable Text Field
Lecture 69 BMI Calculator - Use the formula
Lecture 70 BMI Calculator - Show the reference table
Lecture 71 BMI Calculator - Finalize the App
Lecture 72 Configuration Change and State Loss
Lecture 73 Activity Lifecycle
Lecture 74 Lifecycle methods in action
Lecture 75 View Model State Holder - An Introduction
Lecture 76 Create your first View Model
Lecture 77 Add ViewModel Compose Dependency
Lecture 78 Modify Counter App with ViewModel
Lecture 79 Modify BMI Calculator App with ViewModel
Lecture 80 Architecture Principle - Drive UI from Models
Lecture 81 Architecture Principle - Single Source of Truth
Lecture 82 Download Resource
Section 6: Concurrency in Kotlin
Lecture 83 Section Overview - What you will learn
Lecture 84 What is Synchronous Code
Lecture 85 The delay suspend function
Lecture 86 The runBlocking function - Block the main thread
Lecture 87 Calling multiple suspend functions
Lecture 88 Asynchronous Code - Use of launch function
Lecture 89 Async - Await pair
Lecture 90 Parallel Decomposition
Lecture 91 Timer app overview
Lecture 92 Timer app UI design
Lecture 93 Timer app - Introducing LaunchedEffect
Section 7: Project - Weather App
Lecture 94 Section Overview - Deal with the REST
Lecture 95 Download the full project
Lecture 96 Create Project and Add Dependencies
Lecture 97 Create sub packages and files
Lecture 98 Create App Background Composable
Lecture 99 Setup custom font and typography
Lecture 100 Weather APIs overview
Lecture 101 A brief introduction to RESTFul API
Lecture 102 Convert JSON to Kotlin Data class
Lecture 103 Create Weather Service API and define methods
Lecture 104 Android Architectural Layer overview
Lecture 105 Create Weather Repository
Lecture 106 Create View Model and connect the repository
Lecture 107 Create Weather UI State
Lecture 108 Bug fix - Introducing Coroutine Exception Handler
Lecture 109 Current Weather - Show location and date
Lecture 110 Type mismatch exception - Where it came from
Lecture 111 Current Weather Section - Show temperature and icon
Lecture 112 Current Weather Section - Last part
Lecture 113 Show Forecast Weather List
Lecture 114 Add Play Location Service Dependency
Lecture 115 Request Runtime Permission
Lecture 116 Run app and provide location permission
Lecture 117 Importance of monitoring Network State
Lecture 118 Create Connectivity Repository
Lecture 119 Observe Connectivity StateFlow
Lecture 120 Create ViewModel Factory
Lecture 121 What is Dependency Injection
Lecture 122 Add Hilt Dependencies to our project
Lecture 123 Inject dependency to classes
Lecture 124 Create Hilt Module and finalize app
Section 8: Project - Shopping Events
Lecture 125 Section overview - What you will learn
Lecture 126 Download the zipped project
Lecture 127 Create project and add Room dependencies
Lecture 128 Add Hilt Dependency
Lecture 129 Add Navigation Compose and Kotlin Serialization dependency
Lecture 130 Add sub packages and Application sub class
Lecture 131 Create a Reusable Appbar
Lecture 132 Create the pages
Lecture 133 Show HomePage with NavController and NavHost
Lecture 134 Define route objects and composables for each destination
Lecture 135 Navigate to a new screen
Lecture 136 Create Shopping Event and Item data classes
Lecture 137 Create AddEventViewModel and UI States
Lecture 138 Add Text Fields to AddEventPage
Lecture 139 Show Date Picker Dialog
Anyone who wants build his career on Android App development