Comprehensive Guide Kotlin And Jetpack Compose: Zero To Hero
Last updated 7/2023
MP4 | Video: h264, 1280x720 | Audio: AAC, 44.1 KHz
Language: English | Size: 10.40 GB | Duration: 14h 0m
Last updated 7/2023
MP4 | Video: h264, 1280x720 | Audio: AAC, 44.1 KHz
Language: English | Size: 10.40 GB | Duration: 14h 0m
Kotlin and Jetpack Compose - Master Hilt & Dagger, Room DB, ViewModel, Navigation & Clean Architecture
What you'll learn
Understand the fundamentals of Kotlin programming language, including variables, data types, control flow, functions, and classes.
Apply object-oriented programming principles such as inheritance, polymorphism, and encapsulation using Kotlin.
Explore higher-order functions and functional programming concepts in Kotlin.
Grasp the core concepts and principles of Jetpack Compose, the declarative UI toolkit for Android.
Build basic user interfaces using Jetpack Compose, including creating and styling components, handling user input, and managing layout.
Implement advanced UI features in Jetpack Compose, such as animations, gestures, and custom drawing using the Canvas API.
Understand the clean architecture principles and apply them to the development of Android applications.
Utilize Retrofit to handle API calls for network communication in an Android app.
Implement efficient state management techniques using Jetpack Compose, including handling UI state and data flow.
Integrate Room Database into your Jetpack Compose app for efficient local data storage and retrieval.
Implement pagination techniques to handle large datasets in your app.
Apply best practices for testing Jetpack Compose components and features in an Android app.
Gain the confidence and skills to explore and experiment with Jetpack Compose beyond the course curriculum.
Apply the learned concepts and techniques to develop your own innovative and visually appealing Android applications using Jetpack Compose.
Requirements
No programming Experience need. we will start from scratch
Description
In this comprehensive Udemy course, "Jetpack Compose Mastery: From Kotlin Basics to Advanced Techniques," you'll embark on an exciting journey to become a proficient Android developer using Jetpack Compose. Jetpack Compose is a powerful and modern UI toolkit for building stunning user interfaces in Android applications.Starting with the fundamentals of Kotlin programming language, you'll develop a solid understanding of key concepts such as variables, control flow, functions, classes, and object-oriented programming. You'll then dive into the core principles of Jetpack Compose, learning how it revolutionizes UI development by providing a declarative and efficient approach.Through hands-on projects, you'll build real-world applications step by step. First, you'll develop "Jet Pet," a pet adoption app that incorporates clean architecture, pagination, API calls with Retrofit, and efficient state and dependency management. Next, you'll create "Jet Timer," a dynamic timer app that explores advanced animations and canvas drawing techniques. Finally, you'll build "Jet Expense," an expense tracking app that leverages Jetpack Compose and Room Database for efficient data management and visualization.Throughout the course, you'll master advanced UI features, such as animations, gestures, and custom drawing, using Jetpack Compose's powerful Canvas API. You'll learn to optimize app performance, handle application-level state, and implement efficient data storage using Room Database. Additionally, you'll explore testing, dependency injection with Dagger Hilt, and industry-standard coding practices to develop high-quality, maintainable Android applications.By the end of this course, you'll have a deep understanding of Jetpack Compose, Kotlin, and essential Android development principles. You'll be equipped with the skills to create immersive user interfaces, handle data efficiently, and build feature-rich applications that delight users.Enroll now in "Jetpack Compose Mastery: From Kotlin Basics to Advanced Techniques" and unlock the power of Jetpack Compose to transform your Android app development journey.
Overview
Section 1: Introduction
Lecture 1 Introduction
Section 2: Source Codes
Lecture 2 Source Code
Lecture 3 Accessing Filles with Github
Section 3: Installation and Setups
Lecture 4 Install IntelJ
Section 4: Kotlin basics:Introduction
Lecture 5 1 what is kotlin
Lecture 6 Hello Kotlin
Lecture 7 Variables
Section 5: Kotlin Basics:Literals
Lecture 8 What are literals
Lecture 9 What we will learn
Lecture 10 Data types
Lecture 11 Bmi calculator Project
Lecture 12 Standard Inputs
Lecture 13 Standard Inputs 2
Lecture 14 Bmi calculator:User Input
Lecture 15 Strings
Lecture 16 Strings
Lecture 17 String Concatination
Lecture 18 String Concatination Between Data types
Lecture 19 Note About String Concatination
Lecture 20 String repeat function
Lecture 21 Escape sequence
Lecture 22 Raw Strings
Lecture 23 About Trim Indent
Section 6: Kotlin Basics:Boolean Data types
Lecture 24 What is boolean
Lecture 25 Logical operators
Lecture 26 Comparison operators
Section 7: Kotlin Basics:Control Flow
Lecture 27 For Loop Intro
Lecture 28 Executing Loops and Inclusive Loop
Lecture 29 Exclusive Loop
Lecture 30 Step Loop Execution
Lecture 31 Down to Loop Execution
Lecture 32 Nested Loops
Lecture 33 If Statement Intro
Lecture 34 Else keyword
Lecture 35 Multiple If statement
Lecture 36 Bmi Calculator Improvements
Lecture 37 Bmi Calculator Improvements with Conditional Execution
Lecture 38 Rock paper scissors Project overview
Lecture 39 Rock paper scissors Project Coding
Lecture 40 when Statements
Lecture 41 When Statement with Range Condition
Lecture 42 While loop
Lecture 43 While loop executions
Lecture 44 Do while loop
Lecture 45 Going Out of Main Function:Custom Functions
Lecture 46 Passing Parameters to a function
Lecture 47 Function that returns Value
Lecture 48 Function Sytantic sugar
Section 8: Kotlin Basics:Nullability
Lecture 49 Nullabilty in Kotlin
Lecture 50 Operations on Null Value
Lecture 51 Classical Handling of null
Lecture 52 Elvis operator
Lecture 53 Null Handling with Let Scope Function
Section 9: Kotlin Advanced: Collections
Lecture 54 Collections
Lecture 55 Arrays
Lecture 56 Lists
Lecture 57 Maps
Section 10: Kotlin Advanced:OOP
Lecture 58 OOP Intro
Lecture 59 Stock Profitability project:OOP
Section 11: Kotlin Advanced:Inheritance and Polymorphism
Lecture 60 Inheritance Intro
Lecture 61 Inheritance Basics
Lecture 62 Inheritance in Action
Lecture 63 Polymorphism in Kotlin
Lecture 64 Abstract Class
Lecture 65 Interface and Polymorphism in Kotlin
Lecture 66 Polymorphism in action
Section 12: Kotlin Advanced:Generics
Lecture 67 Generics
Lecture 68 Built in Generic Objects
Lecture 69 Generics Basics
Lecture 70 Another Example With Generics
Lecture 71 Generics Variance Overview
Lecture 72 Covariance Generic
Lecture 73 Contravariance Generic
Lecture 74 Invariant Generic
Section 13: Kotlin Advanced:Functional Programming
Lecture 75 Functional Programing
Lecture 76 Functional Programing Basics
Lecture 77 Executing Lamba Function
Lecture 78 Multiple Parameters In Lamda Function
Lecture 79 Higher Order Functions
Lecture 80 Idiomatic Kotlin With Functional Programing
Lecture 81 Lamda Functions and Normal Functions
Lecture 82 Trailling Lamda Function
Lecture 83 Builtin Higher Order Functions
Section 14: Jetpack Compose Overview
Lecture 84 What is Jetpack Compose
Lecture 85 Declarative vs Imperative UI
Lecture 86 Installing Android Studio
Section 15: Android Studio and Jetpack Compose Intro
Lecture 87 Basic Project Creation
Lecture 88 Android Studio Interface
Lecture 89 Gradel scripts and Manifest file
Lecture 90 Compose Functions Basics
Lecture 91 Preview Compose Function
Lecture 92 Setting Content For composable
Lecture 93 Reusable Code In Compose
Section 16: Emulator And Physical device Setup
Lecture 94 Separate Emulators Window
Lecture 95 Emulator Setup
Lecture 96 Real Device Setup (Phone)
Section 17: Jetpack Compose state Management
Lecture 97 State Project Creation
Lecture 98 State and Events in Jetpack Compose
Lecture 99 State Basics
Lecture 100 UI update loop
Lecture 101 Memory in compose
Lecture 102 State Driven UI
Lecture 103 Text Fields and State
Lecture 104 Different Way of Defining State
Lecture 105 Probelm with Stateful Composable
Lecture 106 State Hoisting and Unidirectional Data Flow
Lecture 107 State Hoisting:Refactoring our Code
Section 18: Jetpack Compose Project:Jet Pet UI Implementation
Lecture 108 What we Will Build
Lecture 109 Using Github for Source Code
Lecture 110 Initial Code Explanation
Lecture 111 Creating Home Screen
Lecture 112 Layouts in Compose
Lecture 113 Home screen UI Implementation
Lecture 114 Slot Api
Lecture 115 Scaffold
Lecture 116 Top App Bar
Lecture 117 Top App Bar Composable
Lecture 118 Layout Inspection
Lecture 119 Detail Screen
Lecture 120 Scaffold and Top Bar
Lecture 121 Lazy Layout
Lecture 122 Image
Lecture 123 Adding Other details
Lecture 124 My Story Composable
Lecture 125 Pet Info Composable
Lecture 126 Owner Card Info
Lecture 127 Pet Button
Lecture 128 State Navigation
Lecture 129 Theme change
Lecture 130 Conclustion
Section 19: Jet Timer App
Lecture 131 Jet Timer App
Lecture 132 What is a view model
Lecture 133 Common Architecture Principal
Lecture 134 Architecture Overview
Lecture 135 Unidirectional Data Flow and Viewmodels
Lecture 136 Activity and Viewmodel Lifecyle
Lecture 137 Creating Viewmodel
Lecture 138 State and Livetemplate
Lecture 139 CountDown Api
Lecture 140 Events and Viewmodels
Lecture 141 Viewmodel referance
Lecture 142 Observing Flow State in viewmodel
Lecture 143 Basic Timer UI
Lecture 144 Utils:Formatting time
Lecture 145 Finalizing Basic Timer UI
Section 20: Jet Timer App Animations
Lecture 146 Jet Timer App Animation
Lecture 147 Animated Content Api
Lecture 148 Common Architecture Principal
Lecture 149 Custom Progress Indicator:Canvas Api
Lecture 150 Drawing Arch
Lecture 151 Transition Animation Api
Section 21: Jet Pet Resque:Api Implementation
Lecture 152 What we Build
Lecture 153 What we will Use
Lecture 154 Clean Architecture
Lecture 155 Pet Finder API
Lecture 156 Installing Postman
Lecture 157 Making Request with Postman
Lecture 158 Json Data
Lecture 159 Required Dependency
Lecture 160 Model package
Lecture 161 Plugin installation
Lecture 162 Json to Kotlin Data Class
Lecture 163 Retrofit API Service
Lecture 164 Network Architecture:Okhttp and Retrofit
Lecture 165 Access Token Provider Implementation
Lecture 166 What is Okhttp
Lecture 167 Okhttp Interceptors Implementation
Lecture 168 What is Okhttp Authenticator
Lecture 169 Okhttp Authorization Implementation
Lecture 170 Domain Layer
Lecture 171 Mappers:API Entity to Domain
Lecture 172 What is Repository Pattern
Lecture 173 Pet Repository
Lecture 174 Manual Dependecy Injection (di)
Lecture 175 Application Class
Lecture 176 Pagination Implementation
Lecture 177 Viewmodel Implementation
Lecture 178 Managing State and Pagination in Viewmodel
Lecture 179 Loading pets Event
Lecture 180 Refactoring Presentation Layer:Dummy Data Source
Lecture 181 Refactoring Presentation Layer:Home Screen
Lecture 182 Coil Library
Lecture 183 AsyImage
Lecture 184 Load Next page UI conditions
Lecture 185 Refactoring Detail Screen
Lecture 186 Refactoring Main Activity
Lecture 187 Serialization Error Handling
Lecture 188 Properties Any? error handling
Lecture 189 Permission Denied Error handling
Lecture 190 Http 400 and Http 403 Error Handling
Lecture 191 FIxing UI bugs
Lecture 192 Pagination Bug handling
Section 22: Jetpack Compose Navigation:Jet Pet
Lecture 193 Jetpack Compose Navigation basics
Lecture 194 Navigating to Different Screen
Lecture 195 Navigating between Screens
Lecture 196 Navigating with Arguments
Lecture 197 Popping Backstack Entry
Lecture 198 NavigateUp function
Lecture 199 Navigate to Another App
Beginner or intermediate Android developers who want to upgrade their skills and transition to Kotlin and Jetpack Compose. Experienced Kotlin developers who want to dive into Jetpack Compose and learn the latest techniques for UI development in Android. Students or professionals in the field of mobile app development who want to expand their knowledge and stay up-to-date with modern Android app development practices. Developers familiar with Java and Android development who wish to explore the benefits and power of Kotlin and Jetpack Compose in their projects. Anyone interested in building engaging and visually appealing Android applications using the latest technologies and best practices. Individuals looking to enhance their resume and job prospects by adding Kotlin, Jetpack Compose, and related technologies to their skillset. Enthusiasts who enjoy learning and experimenting with new frameworks and are eager to explore the potential of Jetpack Compose for UI development. No matter your level of experience, if you have a passion for Android app development and a desire to create innovative and dynamic user interfaces, this course will provide you with the knowledge and skills to succeed.