Course Outline
Introduction
Kotlin Overview
Environment Setup
- Utilizing Command Line Tools
- Installing the JDK for Kotlin
- Installing and Configuring the IDE: IntelliJ
- Adding Required Plugins
Getting Started with Kotlin
- Introduction to Basic Kotlin Coding
- Understanding Kotlin's Architecture
- Interacting with Kotlin via REPL
- Declaring Variables in Kotlin
- Exploring Kotlin's Data Types
- Working with Strings in Kotlin
- Understanding Immutability in Kotlin
- Implementing Expressions, Statements, and Assignments
- Leveraging Nullable Variables for Null Safety
- Building Your First Stand-Alone Kotlin Application
Implementing Conditional Statements in Kotlin
- Managing Program Flow with "if" Statements
- Handling Multiple Options with "when" Statements
- Exploring Advanced Conditional Features in Kotlin
- Generating Random Numbers Using Conditional Logic
Utilizing Arrays and Lists in Kotlin
Implementing Looping Constructs in Kotlin
- Writing "for" Loops
- Writing "while" Loops
- Implementing "break" Statements
- Implementing "continue" Statements
- Using "return" Statements
- Utilizing Loop Labels
- Calculating Number Sums with Loops
Using Functions in Kotlin
- Defining Functions
- Function Declarations
- Passing Parameters and Returning Values
- Using Extension Functions
- Using Inline Functions
- Using Higher-order Functions
Object-Oriented Programming with Kotlin
- Overview of Object-Based Programming
- Creating Classes
- Adding Methods to Classes
- Defining Basic Constructors
- Using Named Parameters and Default Values
- Using Open Classes to Enable Inheritance
- Using Abstract Classes
- Creating and Implementing Interfaces
- Handling Method Overriding
- Creating Data Classes
- Using Singletons and Companion Objects
- Using Enumerations
- Organizing Classes into Packages
- Using Imports
- Implementing Encapsulation
- Using Getters and Setters
- Implementing Visibility Modifiers
- Understanding Generics
- Implementing a Generic Stack
- Using Generic Functions
Working with Different Number Systems
- Using Hexadecimal Numbers
- Using Binary Numbers
- Applying Bitwise Operators
Implementing Input and Output Functionalities
Integrating Java Code within Kotlin
Integrating Kotlin Code within Java
Using Spek for Testing
Troubleshooting
Summary and Conclusion
Requirements
- Fundamental computer literacy
- No previous programming experience is necessary
Testimonials (1)
Alex is a very friendly, personable guy. He made everyone feel comfortable working through together and volunteering to give slutions.