Kotlin Tutorial for Beginners: The Kotlin Programming Language Full 9-hour Kotlin Course
Donn Felker
View ChannelAbout
My goal is to live and sustain a self-directed life - as a entrepreneur, creator, and human, and I share what I've learned on my journey. I value autonomy and freedom and want to help you obtain it as well. I’ve been a successful consultant for over 15 years, helping build software for some of the biggest brands in the world. I’ve written multiple books, speak internationally, and have worked remotely while maintaining a healthy lifestyle and raising kids. On this channel, I share how to: - Build a mindset resilient to uncertainty and change - Build profitable and reliable income sources - Utilize various tools, techniques and processes to help improve your work and personal life - Manage the complexities of family life while still pursuing your dreams - Stay disciplined, fit, and focused while working for yourself
Latest Posts
Video Description
This is a full length Kotlin Programming Course for beginners. Over 9 hours of instruction that will take you from an absolute beginner to being able to write Kotlin and contribute to Kotlin projects. This is the most comprehensive Kotlin course on YouTube. 🌟 Table of Contents 🌟 0:00 Welcome 0:02:07 Installing IntelliJ 0:03:20 Creating your First Kotlin File 0:04:38 Updating the Kotlin Plugin 0:05:43 Hello World 0:06:49 Creating a Variable 0:10:06 Creating a Read only Variable 0:12:19 Providing a Type on a Variable 0:14:00 Basic Types: Numbers 0:21:14 Basic Types: String and Char 0:24:11 String Interpolation and Triple Quotes 0:29:26 Basic Types: Boolean 0:31:18 If/Else Conditionals 0:36:25 One Line If/Else Conditional 0:40:17 Understanding Truth Tables 0:46:08 Structural Equality 0:48:19 Referential Equality 0:50:46 Nullable Types 0:52:12 Nullable Safe Calls 0:55:48 The Elvis Operator 0:57:49 Your First Kotlin Function 1:03:29 Functions with Return Types 1:08:49 Functions inside of Functions 1:11:51 Single Line Expressions 1:15:59 Function Arguments 1:21:49 Named Parameters 1:26:14 Default Function Arguments 1:30:44 IDE Refactoring to New LInes and Named Arguments 1:32:13 Multiple Args with varargs 1:34:57 Function Overloading 1:38:30 Creating your First Kotlin Class 1:45:31 Class Primary Constructors 1:49:18 Multiple Class Constructors 1:57:18 Constructor Init Blocks 2:00:57 Class Properties 2:04:00 Read Class Properties 2:04:54 Overriding a Property Getter 2:06:35 Overriding a Property Setter 2:09:42 Multiple Properties in a Class 2:11:11 Class Functions 2:15:51 Companion Objects 2:21:32 How to Create a Singleton 2:29:09 Declaring Constants 2:36:09 The lateinit modifier 2:40:23 How to Nest Classes 2:43:57 Inner Classes 2:46:56 Creating an Enum 2:51:36 Enum Constructor Parameters 2:55:27 Abstract Functions in Kotlin 2:58:51 Iterating over Enum Values 3:00:04 Adding Static Methods to Enums 3:01:37 The When Statement (Kotlin Switch Statement) 3:08:19 Exhaustive vs Non-Exhaustive When 3:15:09 Data Classes 3:19:27 Data Class with Parameterless Constructor 3:20:40 Data Class: Component1-N functions 3:24:15 Destructuring Data Classes 3:27:47 Copying Data Class Instances 3:31:17 The Pair and Triple Data Classes 3:33:50 Protected Modifier for Variables 3:40:53 Protected Modifier for Functions 3:47:02 Internal Modifier for Classes 3:55:07 Abstract Classes 3:59:45 Implementing an Abstract Class 4:13:30 Understanding Abstractions with Abstract Classes 4:17:52 What interfaces are used for 4:26:28 Creating an Interface 4:27:32 Implementing an Interface 4:28:51 Real World Interface Example 4:35:39 Anonymous Interfaces 4:40:34 Creating Arrays 4:47:06 Creating Immutable Lists 4:52:46 Creating Mutable Lists 5:00:47 Filtering a List 5:06:28 Finding Items in a List 5:12:44 Using "filterNot" on a List 5:14:10 filterTo and filterNotTo on Lists 5:16:40 Flattening Lists and Arrays 5:19:39 Combining Immutable Lists 5:21:21 List vs Map 5:29:40 Map vs FlatMap 5:34:15 Set Data Structure (a List with no Duplicates) 5:39:05 For Loops 5:44:13 While Loops 5:47:59 For Each Loops 5:51:03 Combining Lists with the Union Operator 5:53:53 Iterating over a List with an Index 5:55:28 Ranges 5:56:59 Immutable Maps 6:00:49 Mutable Maps 6:08:29 Filtering and Transforming Maps 6:16:30 Using mapNotNull on a Map 6:20:22 Generating Large Sequences 6:23:11 Measuring Performance 6:31:33 Kotlin Sequences 6:44:19 List vs Set vs Map vs Sequence 6:49:25 Kotlin Ternary Operator: Single Line If 6:50:51 Double Bang !! Operator 6:54:58 Using requireNotNull() 6:59:04 Using checkNotNull() 7:01:05 Filtering a List with filterNotNull() 7:02:20 Type Checking with 'is' 7:08:52 Casting 7:11:36 Safe Casting with 'as' 7:14:58 Generic Lists and Maps 7:19:50 Your First Generic Class 7:27:06 Throwing Exceptions 7:29:54 Creating a Custom Exception 7:32:44 Catching Exceptions with Try/Catch 7:36:09 Catching Multiple Exception Types 7:40:43 Try/Catch/Finally blocks 7:44:52 Try/Catch vs Try/Finally 7:47:27 Creating a typealias 7:50:38 Extension Functions 7:59:14 Lazy Evaluation 8:02:26 Lazy Initializer Block 8:05:42 Packages and Imports 8:14:04 Type Inference 8:21:09 Simple Lambda Expressions 8:34:29 Lambdas as Function Parameters 8:40:23 Passing Values to Lambda Function Parameters 8:51:37 Underscore Parameters in Lamba Functions 8:54:24 The 'it' Paramter in Lambda Functions 8:56:38 Calling Kotlin from Java 8:59:39 Calling Java from Kotlin 9:04:51 Calling an Extension Function from Java 9:07:50 @JvmName Annotation 9:10:21 Top Level Main Functions 9:11:15 Kotlin REPL 9:13:52 Project: Setup 9:15:54 Project: Reading Input 9:20:16 Project: Calculator Logic 9:28:04 Project: Adding Validation 9:35:54 Project: Compiling to a Jar File and Execution 9:38:21 Kotlin Koans 9:40:09 Congratulations Help translate this course into another language: https://github.com/donnfelker/kotlin-course-translations
Master Kotlin: Essential Tools
AI-recommended products based on this video

Cozy Corner: Coloring Book for Adults and Kids

The Complete Baking Book for Young Chefs: 100+ Sweet and Savory Recipes that You'll Love to Bake, Share and Eat!

Hello, Baby Animals: A Durable High-Contrast Black-and-White Board Book for Newborns and Babies

Little Blue Truck's Halloween: A Fun And Interactive Lift-the-Flap Book For Kids Celebrating Halloween With Little Blue Truck And Friends

Smart Watch for Men Women Bluetooth Call, 1.85" HD Touch Screen Fitness Watch with Sleep Heart Rate Monitor, 112+ Sports Modes, IP68 Waterproof Activity Trackers for Android iOS, Black

Wireless Earbuds, Bluetooth Headphones 5.3 HiFi Stereo Ear Buds, 80H Bluetooth Earbuds with Dual LED Display Charging Case, IPX7 Waterproof Earphones for Android iOS

Air Tracker Tags-4 Pack: Smart Bluetooth Tracker, Item Finder Works with Apple Find My (iOS Only) App, Trakcer Tag Locator for Keys, Luggage, Satchel, Backpack etc. (Not for Android Devices)
![SAMSUNG EVO Select Micro SD-Memory-Card + Adapter, 128GB microSDXC 160MB/s Full HD & 4K UHD, UHS-I, U3, A2, V30, for Android Smartphones, Tablets, Nintendo-Switch (MB-ME128SA/AM) [Canada Version]](https://m.media-amazon.com/images/I/71lzXt4djxL._AC_UY654_FMwebp_QL65_.jpg)
SAMSUNG EVO Select Micro SD-Memory-Card + Adapter, 128GB microSDXC 160MB/s Full HD & 4K UHD, UHS-I, U3, A2, V30, for Android Smartphones, Tablets, Nintendo-Switch (MB-ME128SA/AM) [Canada Version]

99 Nights in The Forest Plush Toy, The Deer from 99 Nights in The Forest Stuffed Animal Plushies for Game Fans, Collectible Gift for Kids Boys Girls Adults COONEN

The Big Book of Silly Jokes for Kids

GoBeanz by Jimmy Sévigny – Crunchy Roasted Broad Beans Variety Box | High-Protein, Low-Sodium Snack for Kids & Adults | 24 Single-Serve 28g Packs in 6 Flavors | Healthy Alternative to Chips

12 Colors Nail Art Pens Set, 2026 Upgraded Nail Art Markers for Kids Adults, Nail Polish Pens, for Diy Nail Art Beauty Adorn Manicure Tools (1Set)

A Family Affair: The List: A Small Town Family Saga (Truth In Lies Book 20)

GLEAM Sheet Music Stand - Full Metal with Carrying Bag, Phone Holder, Sheet Music Folder and Clip, 5 in 1 Desktop Book Stand

The Ultimate Book of Random Fun Facts: Over 1000 Interesting Facts And Trivia Quizzes About History, Science, Sports, Animals, Space and Anything In Between!


