Atomic Kotlin
Build Kotlin fluency atom by atom—with hands-on lessons and real-world coding practice.
About this course
Based on the acclaimed Atomic Kotlin book, this in-IDE course teaches modern Kotlin the way professionals write it—clean, clear, and practical.
Start from scratch and progress atom by atom: write real code, test your understanding, and learn with instant IDE feedback and guided hints.
Your result: Kotlin fluency from basics to advanced, with production-ready skills you can use in real projects.
This course runs directly in your JetBrains IDE
Content
- Hello, World
- var & val
- Data Types
- Functions
- if Expressions
- String Templates
- Number Types
- Booleans
- Repetition with while
- Looping & Ranges
- The in Keyword
- Expressions & Statements
- Summary 1
- Objects Everywhere
- Creating Classes
- Properties
- Constructors
- Constraining Visibility
- Packages
- Testing
- Exceptions
- Lists
- Variable Argument Lists
- Sets
- Maps
- Property Accessors
- Summary 2
- Extension Functions
- Named & Default Arguments
- Overloading
- when Expressions
- Enumerations
- Data Classes
- Destructuring Declarations
- Nullable Types
- Safe Calls & the Elvis Operator
- Non-Null Assertions
- Extensions for Nullable Types
- Introduction to Generics
- Extension Properties
- break & continue
- Lambdas
- The Importance of Lambdas
- Operations on Collections
- Member References
- Higher-Order Functions
- Manipulating Lists
- Building Maps
- Sequences
- Local Functions
- Folding Lists
- Recursion
- Interfaces
- Complex Constructors
- Secondary Constructors
- Inheritance
- Base Class Initialization
- Abstract Classes
- Upcasting
- Polymorphism
- Composition
- Inheritance & Extensions
- Class Delegation
- Downcasting
- Sealed Classes
- Type Checking
- Nested Classes
- Objects
- Inner Classes
- Companion Objects
- Exception Handling
- Check Instructions
- The Nothing Type
- Resource Cleanup
- Logging
- Unit Testing
- Extension Lambdas
- Scope Functions
- Creating Generics
- Operator Overloading
- Using Operators
- Property Delegation
- Property Delegation Tools
- Lazy Initialization
- Late Initialization
- AtomicTest
- Java Interoperability
Learn with the tools developers use every day
What do you need to start?
The JetBrains Toolbox App 2.7+ makes setting up your course effortless. Already have a compatible IDE? It will launch it. If not, the app will install the right free IDE for your course.
Learn more about our licences here.
Click Launch course and then Allow to open the Toolbox App.
Select Always Allow to skip this confirmation in the future.
To return to the course later, find it in your IDE's recent projects.
Need more help? Check out our guide.
The JetBrains Toolbox App 2.7+ makes setting up your course effortless. Already have a compatible IDE? It will launch it. If not, the app will install the right free IDE for your course.
Learn more about our licences here.
Click Launch course and then Allow to open the Toolbox App.
Select Always Allow to skip this confirmation in the future.
To return to the course later, find it in your IDE's recent projects.
Need more help? Check out our guide.
FAQ and troubleshooting
Yes, you will need the JetBrains Toolbox App and a JetBrains IDE.
But don't worry! Just click the Open course button and then select Allow in the resultant popup to install the JetBrains Toolbox App. We've taken care of all the necessary settings, and the app will handle the rest of the setup for you.
The JetBrains Toolbox App checks which IDE is compatible with your course and whether it is installed on your computer. If you have the necessary IDE installed, the app will open it. If not, JetBrains Toolbox will initiate the installation, prioritizing free community editions.
Yes, the JetBrains Toolbox App is essential even if you already have a JetBrains IDE. It automatically prepares your IDE for studying by installing the essential plugins and updating the IDE if necessary.
Please make sure your version of the JetBrains Toolbox App is 2.6 or newer. To update, open the app and click Update Toolbox App to 2.6.x., or download the latest version here.
Yes! It's 100% free and works with both the free and paid versions of JetBrains IDEs.
If you're a student, apply for the Student Pack to get full access to JetBrains IDEs for the duration of your studies. If not, check if you qualify for a free non-commercial license.