X

    Get a Quote

    kotlin

    Why Use Kotlin and why switch to this language?

    709 views
    Amit Shukla

    Why Use Kotlin and why switch to this language?

    This programming language was developed by Jetbrains. (jet brains build Intellij IDE).if you are an android developer then know the android studio is built on top of IntelliJ IDEA. The first official version 1.0 release was in Feb 2016. Now release version is 1.3. In google I/o 2017 kotlin is now the official android language,kotlin language popularity grow and grow compared to other programming languages.

    The question is this why do we use kotlin?

    -In kotlin we simply pass function within the function and apart from variable we can also pass a function as a parameter
    -Drastically reduce the amount of boilerplate code
    boilerplate code
    -Safety features:Nullability: No more null pointer exception Immutable
    -tool friendly( build from the command line in any Java IDE .)
    -kotlin is more flexible java simply says kotlin is more powerful compare to java
    -kotlin and java are interoperable:

    They both can be used together in the same project and you can call into java language from kotlin and kotlin to java language.

    1.Using variable :

    var a:String ="Java"
    val a=” “

    Val is immutable and var is mutable in Kotlin. simply says var value is change and Val value can’t be changed.

    2.Loop:

    Syntax:
    for (item in collection) {
    // body of loop
    }

    Example: how to apply condition inside for loop

    for(i in 1..5)-->ranges
    for (i in 5..1)
    for (i in 5 downTo 1)
    for (i in 5 downTo 2)
    for (i in 1..5 step 2)
    for (i in 5 downTo 1 step 2)

    3. The When Expression:

    switch case is replaced in kotlin with when expression, see how it’s work
    when (age) {
    1 -> print("age is 1")
    2 -> print("age is 2")
    3, 4 -> print("age is 3 or 4")
    in 5..10 -> print("age is 5, 6, 7, 8, 9, or 10")
    else -> print("age is out of range")
    }

    4. Data Class:

    how easy is this, no need to make a set and get method.

    Example:
    data class John(
    val awards:Int,
    val age:Int,
    val email:String
    )
    val john = John(1, 20, "john@gmail.com")

    5. inheritance and constructor:

    In kotlin how inheritance works,
    If used to inheritance then the class should be open by open keyword:
    open class car{

    }
    Now use a constructor in this class

    Remember: In primary constructor have to init block when you write something in the primary constructor you should use init and secondary constructor has own body.
    Example:

    Primary constructor

    Primary constructor

    Using inheritance and secondary constructor

    fun main(args: Array){
    var m=A(4,4,"black")
    }

    open class car {
    var noOfDoors:Int=0
    var noOfTyres:Int=0

    constructor(noOfDoors: Int,noOfTyres: Int){
    this.noOfDoors=noOfDoors
    this.noOfTyres=noOfTyres
    }
    }

    class A : car {
    var color: String=””
    constructor(noOfDoors: Int,noOfTyres: Int,color: String):super(noOfDoors,noOfTyres){
    this.color=color

    print(“$color or $noOfDoors or $noOfTyres”)
    }
    }

    class B : car(4,4) {
    lateinit var color: String
    fun speed() {
    println(“highest speed is 200”)
    }

    }

    6. Prevents stack Overflow Exception:

    Prevents stack Overflow

    This solution in kotlin using (tailored) method

    Tailored: In kotlin tailored function that simply executes recursion internally without effected the stack memory.

    7.NullSafety:

    . NullPointerExceptions, you know, it’s Billion Dollar Mistake.

    NullPointerExceptions

    . Kotlin protects you from nullable types

    Kotlin protects

    . If the type is right then the compiler will be auto-cast it for you

    then compiler will be auto

    8.Extension functions:

    . Add a new function to the class. add function to a class without declaring it. the added function behaves like a static.
    . In simple words, you will create an extension of a class without entering in class
    See in the example you will better get it:

    fun main(args: Array) {
    val a = A()
    println("Pass status: " + a.Passed(50))
    println("fail status: " + a.fail(33))
    }
    fun A.fail(marks: Int): Boolean {
    return marks < 33 } class A { // OWN CLASS fun Passed(marks: Int): Boolean { return marks > 33
    }
    }

    Avatar for Amit
    The Author
    Amit Shukla
    Director of NBT
    Amit Shukla is the Director of Next Big Technology, a leading IT consulting company. With a profound passion for staying updated on the latest trends and technologies across various domains, Amit is a dedicated entrepreneur in the IT sector. He takes it upon himself to enlighten his audience with the most current market trends and innovations. His commitment to keeping the industry informed is a testament to his role as a visionary leader in the world of technology.