About this Course
3.0
1 ratings
The Kotlin programming language is a modern language that gives you more power for your everyday tasks. Kotlin is concise, safe, pragmatic, and focused on interoperability with Java code. It can be used almost everywhere Java is used today: for server-side development, Android apps, and much more. Kotlin is 100% compatible with all existing Java frameworks, and has good tooling support. It’s a pragmatic language with a very low learning curve, and can be quickly grasped by Java developers. Kotlin code might be compiled not only to JVM bytecode but to JavaScript and Native code as well, but this course is focused on Kotlin/JVM. This course aims to share with you the power and the beauty of Kotlin. We'll have a basic overview of the language, as well as a discussion of many corner cases, especially concerning Java interoperability. The course is based on your Java experience; it shows the similarities between the two languages and focuses on what's going to be different. Note that this course won't cover the programming fundamentals. We'll discuss: basic syntax, nullability, functional programming with Kotlin, object-oriented programming with Kotlin, the power of the Kotlin standard library, and Java interoperability....
Globe

100% online courses

Start instantly and learn at your own schedule.
Calendar

Flexible deadlines

Reset deadlines in accordance to your schedule.
Intermediate Level

Intermediate Level

Clock

Suggested: 7 hours/week

Approx. 14 hours to complete
Comment Dots

English

Subtitles: English
Globe

100% online courses

Start instantly and learn at your own schedule.
Calendar

Flexible deadlines

Reset deadlines in accordance to your schedule.
Intermediate Level

Intermediate Level

Clock

Suggested: 7 hours/week

Approx. 14 hours to complete
Comment Dots

English

Subtitles: English

Syllabus - What you will learn from this course

1

Section
Clock
13 minutes to complete

Introduction

...
Reading
4 videos (Total 13 min)
Video4 videos
What is Kotlin?4m
History of Kotlin3m
Developing Kotlin2m

2

Section
Clock
5 hours to complete

Starting up with Kotlin

...
Reading
16 videos (Total 77 min), 1 reading, 1 quiz
Video16 videos
Introducing Kotlin to an existing project2m
"Hello, world" example6m
Variables6m
Functions4m
Named & default arguments6m
Conditionals: if & when4m
Loops3m
'in' checks & ranges3m
Exceptions3m
Extension Functions5m
Examples from the Standard Library10m
Calling Extensions4m
Importance of extensions3m
Solution: Checking identifier3m
Solution: Sum as an extension function1m
Reading1 reading
Setting up programming assignments10m

3

Section
Clock
8 hours to complete

Nullability, Functional Programming

...
Reading
15 videos (Total 76 min), 1 reading, 2 quizzes
Video15 videos
Nullable types under the hood5m
Safe casts2m
Importance of nullability2m
Lambdas4m
Common Operations on collections6m
Operations Quiz - I5m
Operations Quiz - II8m
Function Types6m
Member References6m
return from Lambda5m
Is Kotlin a functional language?1m
Solution: Checking whether string is null or empty3m
Solution: Safe casts1m
Solution: Interchangeable predicates4m
Reading1 reading
Mastermind in a functional style1m

4

Section
Clock
8 hours to complete

Properties, OOP, Conventions

...
Reading
17 videos (Total 81 min), 2 quizzes
Video17 videos
More about Properties4m
Lazy or late initialization6m
OOP in Kotlin4m
Constructors3m
Class modifiers - I4m
Class modifiers - II6m
Objects, object expressions & companion objects8m
Constants4m
OOP design choices5m
Operator Overloading4m
Conventions6m
(Not)using operator overloading2m
Solution: Unstable val2m
Solution: Using lateinit property1m
Solution: NPE during initialization4m
Solution: Equality2m

Instructors

Svetlana Isakova

Developer Advocate
Kotlin

Andrey Breslav

Kotlin Project Lead
Kotlin

About JetBrains

At JetBrains, code is our passion. For over 15 years we have strived to make the strongest, most effective developer tools on earth. By automating routine checks and corrections, our tools speed up production, freeing developers to grow, discover and create....

Frequently Asked Questions

  • Once you enroll for a Certificate, you’ll have access to all videos, quizzes, and programming assignments (if applicable). Peer review assignments can only be submitted and reviewed once your session has begun. If you choose to explore the course without purchasing, you may not be able to access certain assignments.

  • When you purchase a Certificate you get access to all course materials, including graded assignments. Upon completing the course, your electronic Certificate will be added to your Accomplishments page - from there, you can print your Certificate or add it to your LinkedIn profile. If you only want to read and view the course content, you can audit the course for free.

More questions? Visit the Learner Help Center.