Slide 1

Slide 1 text

http://meetup.kotlinhyderabad.in In The Age Of Digital Transformation Rajmahendra Hegde Java Champion, Kotlin Hyderabad Lead rajonjavagmail.com @rajmahendrar

Slide 2

Slide 2 text

About me ● Java developer since 2000 ● Started as Java Developer ● Working for a Bank as a Tech. Agile coach/SM ● Agilist by day and Hacker/Community Guy at night and weekends! (including holiday) ● Java Champion ● Founder/lead 4! User Groups – JUG Chennai - 2010 to 13 – Hyderabad Java User Group 2013-17 – Hyderabad Scala Community 2017-18 – Kotlin Hyderabad Community – since 2020 ● JCP Individual Member. Expert Group member ● Open Source Contributor (Java, JavaFX, Scala) ● FOSS & Linux Enthusiast ● Interest: Indoor Garden, Hydroponic, Sustainable living ● https://rajmahendra.github.io/

Slide 3

Slide 3 text

Agenda ● JVM Language ● Polyglot programming ● DSL ● What is ● Features ● Timeline ● Release ● Different aspects – JVM – Build/Gradle – Server/Spring – JS – Mobile and Android – TornadoFX ● How to get involved ● How you can get more from Community Also we have – Getting Started with Kotlin – Demo – Code Snippets

Slide 4

Slide 4 text

JVM Languages

Slide 5

Slide 5 text

Polyglot programming

Slide 6

Slide 6 text

No content

Slide 7

Slide 7 text

Kotlin ● General purpose language ● Statically typed ● Cross platform ● Concise ● Safe ● Interoperable ● Tool-friendly ● Modern ● OOP + Functional ● Coroutines ● Open Source (Apache 2.0) ● Developed by Jet Brains

Slide 8

Slide 8 text

The State Of The Octoverse https://octoverse.github.com/

Slide 9

Slide 9 text

Kotlin Timeline ● 2010 - Project Started ● 2012 – Open sourced (Apache 2.0) ● 2016 – First major release Kotlin 1.0 – Kotlin Meets Gradle ● 2017 – Kotlin 1.1RC – Official on Android – Kotlin support in Spring Framework 5.0 – Kotlin 1.2 ● 2018 – Kotlin 1.3

Slide 10

Slide 10 text

Releases & users ● 1.0 -JVM/Android + Experimental JS - 200000 ● 1.1 – Stable JS + Experimental Coroutines - 500000 ● 1.2 – Experimental Multi platform - 2100000 ● 1.3 -Stable Coroutines + Kotlin/Native Beta - 4000000 ● 1.4-M3 Polishing

Slide 11

Slide 11 text

Default language Any Platform Any Level Of Experience Any Scale Any Application Default Language

Slide 12

Slide 12 text

Kotlin & Platform ● Kotlin/JVM ● Kotlin/Server ● Kotlin/JS ● Kotlin/Native

Slide 13

Slide 13 text

Full-stack Kotlin

Slide 14

Slide 14 text

Getting Started

Slide 15

Slide 15 text

Stdlib (kotlin.*) ● annotation ● browser ● collections ● comparisons ● concurrent ● contracts ● coroutines ● dom ● experimental ● io ● js ● jvm ● math ● native ● native ● properties ● random ● ranges ● reflect ● sequences ● steams ● system ● text ● time ● cinterop ● w3c

Slide 16

Slide 16 text

Kotlin/JVM ● Variables ● Functions – Default parameters – Single expression – Extended function – Extension properties – Higher order function ● Immutability and null ● Lambdas ● Collections ● Smart Casting ● Infix and operators ● Classes ● String and interpulation. ● ...

Slide 17

Slide 17 text

Kotlin/build/Gradle

Slide 18

Slide 18 text

Kotlin/server

Slide 19

Slide 19 text

Kotlin/server Ktor is a framework for building asynchronous servers and clients in connected systems using the powerful Kotlin programming language.This website provides a complete reference to the Ktor application structure and programming interface.

Slide 20

Slide 20 text

For Kotlin/js Sprint + react multi platform demo,visit following YouTube video https://www.youtube.com/watch?v=rxb0IrNH5zs

Slide 21

Slide 21 text

Kotlin/Android

Slide 22

Slide 22 text

Kotlin/JS

Slide 23

Slide 23 text

Kotlin/server multi-platform Spring / React Demo https://www.youtube.com/watch?v=rxb0IrNH5zs With the release of Spring Framework version 5, Spring announced support for Kotlin. In this talk, we are going to build a Pet store application using Kotlin and Spring Framework in a functional style and let me show how simple it is to develop a Spring app in a functional style.

Slide 24

Slide 24 text

Kotlin/test

Slide 25

Slide 25 text

https://github.com/edvin/tornadofx

Slide 26

Slide 26 text

https://kotlinlang.org/community

Slide 27

Slide 27 text

Kotlin User Group https://kotlinlang.org/user-groups/user-group-list.html ● Ahmedabad ● Allahabad ● Bengaluru / BlrKotlin ● Bhuhaneswar ● Bopal ● Coimbatore ● Hyderabad ● Indore ● Jalandhar ● Kolkata ● Kozhikode ● Mumbai ● Nagpur ● New Delhi ● Pune ● Surat ● Vellore ● Vijayawada KUG in India, in 18 cities http://meetup.kotlinhyderabad.in

Slide 28

Slide 28 text

http://meetup.kotlinhyderabad.in Follow me: Twitter: rajmahendrar Github: rajmahendra Instagram: rajmahendrar Linkedin: rajmahendar Slideshare: rajmahendra Hyderabad Kotlin Meetup: hyderabadkotlin Twitter: hyderabadkotlin Github: hyderabadkotlin Rajmahendra Hegde Java Champion, Kotlin Hyderabad Lead [email protected] @rajmahendrar