A presentation made at the Google IO 18 extended for Google Developers Group (GDG) Covenant University. Introducing the Kotlin programming language and features it has that makes software development more pleasant. It also touches a little on its goodness in Android application development.
3. A Brief Introduction
Kotin is a statically typed programming language for Multiplatform
applications.
It is 100% interoperable with Java and the Android platform.
Kotlin is an official language on Android. It is officially supported by
Google.
Kotlin can be used to build Server-Side applications, Web applications and
Native applications
4. Why kotlin?
Concise
It drastically reduces the amount of boilerplate code. You are set free from writing
redundant lines of code!
Safe
Errors due to null pointer exceptions are properly handled in kotlin. This helps you avoid
a ton of errors. Variables cannot be set to null by default.
Interoperable
Kotlin is fully compatible with any library on the JVM and Android. It can also be deployed
on the browser
9. What's new with kotlin
Getter and setter classes
Data classes
Classes are not expensive
Initialising variables by lazy
Extension functions
Default parameter values
When statement
With and Apply
Maps
Null Safety
Coroutines
10. What's new with kotlin
Kotlin Java
Getter and setter classes
18. What's new with kotlin
Null Safety
Nullable types and non-null types
Safe calls
Elvis operator
19. What's new with kotlin
Coroutines
Coroutines are really nice. Basically, they are like very minimal light-weight Threads. The
Read more about them here : https://kotlinlang.org/docs/reference/coroutines.html
20. Kotlin and Android
A few highlights...
Avoid NullPointerExceptions in your code.
Code becomes more readable and concise.
Lambdas .
Default and named arguments.
Bye✌🏽👋🏽 findViewById().
Extend functionality without inheritance using extensive functions.
100% interoperable with java.
Kotlin is an open source project; just like our beloved Android.
21. Beyond Android
➤ Kotlin for server side development
http://kotlinlang.org/docs/reference/server-overview.html
➤ Kotlin for Web development
http://kotlinlang.org/docs/reference/js-overview.html
➤ Kotlin/Native
http://kotlinlang.org/docs/reference/js-overview.html