Course Outline
Introduction
Overview of Kotlin
Setting Up the Tools
- Using the Command Line Tools
- Installing the JDK for Kotlin
- Installing and Setting Up the IDE: IntelliJ
- Installing the Plugins
Getting Started with Kotlin
- Introduction to Basic Coding with Kotlin
- Learning the Kotlin Architecture
- Interacting with Kotlin Using the REPL
- Creating Variables in Kotlin
- Understanding the Different Data Types in Kotlin
- Using Strings in Kotlin
- Understanding Immutability in Kotlin
- Implementing Expressions, Statements, and Assignments
- Using Nullable Variables in Kotlin for Null Safety
- Creating Your First Stand-Alone Kotlin Application
Implementing Conditional Statements in Kotlin
- Handling Conditional Program Flow with "if" Statements
- Handling Options Using "when" Statements
- Exploring Kotlin's Advanced Capabilities for Conditional Statements
- Generating Random Numbers Using Conditional Statements
Using Arrays and Lists in Kotlin
Implementing Looping Constructs in Kotlin
- Coding "for" Loops
- Coding "while" Loops
- Implementing "break" Statements
- Implementing "continue" Statements
- Using "return" Statements
- Using Loop Labels
- Calculating Summation of Numbers Using Loops
Using Functions in Kotlin
- Creating Functions
- Declaring Functions
- Using Parameters and Returning a Value
- Using Extension Functions
- Using Inline Functions
- Using Higher-order Functions
Object-Oriented Programming with Kotlin
- Overview of Progamming with Objects
- Creating a Class
- Adding Methods to Classes
- Defining Basic Constructors
- Using Named Parameters and Default Values
- Using Open Classes to Allow Inheritance
- Using Abstract Classes
- Creating and Using Interfaces
- Handling Overriding
- Creating Data Classes
- Using Singletons and Companion Objects
- Using Enumerations
- Grouping Classes into Packages
- Using Imports
- Implementing Information Hiding
- Using Getters and Setters
- Implementing Visibility Modifiers
- Understanding Generics
- Implementing a Generic Stack
- Using Generic Functions
Using Different Number Systems
- Using Hexadecimal Numbers
- Using Binary Numbers
- Using Bitwise Operators
Implementing Input and Output Functionalities
Using Java from Kotlin
Using Kotlin from Java
Using Spek for Testing
Troubleshooting
Summary and Conclusion
Requirements
- Basic computer literacy
- No prior programming experience required
Testimonials
The trainer was patient, and very positive (particularly liked the “that's perfect!” comment for feel the good factor), always punctual, and spoke with grace, was prepared, and solved any coding errors (on my part) very quickly.
Antonio Caccioli - KnowledgePool Group Ltd
Great content, excellent exercises. Covered a lot of information. Friendly to new Kotlin programmers but also a lot to still learn for those of us already using Kotlin. Highly recommend this course. The pace of the course was perfect, not too slow, not too fast. Alternating between instruction and exercises helped cement the knowledge from each section.
Mark Sorenson - Los Alamos National Laboratory
I liked the exercises. They presented enough of a challenge to understand the task at hand without overloading us with instructions.
Los Alamos National Laboratory
It was perfect, enough slides to watch for hints and enough time to make the exercises