Kotlin

Վիքիպեդիայից՝ ազատ հանրագիտարանից
Jump to navigation Jump to search
Kotlin
Kotlin-logo.svg
Տեսակօբյեկտ կողմնորոշված ծրագրավորման լեզու և JVM language?
ՍտեղծողJetBrains?
ՆախագծողJetBrains?
Ընդլայնումներ.kt և .kts
Ներշնչվել էRuby
ԱրտոնագիրApache արտոնագիր
Անվանված էԿոտլին[1][2]
Կայքkotlinlang.org[3]
Աղբյուր կոդgithub.com/JetBrains/kotlin

Kotlin-ը օբյեկտի վրա հիմնված ծրագրավորման լեզու է, որը թարգմանվում է Java-ի վիրտուալ մեքենայի (JVM) բայթոդով, բայց կարող է նաև վերածվել JavaScript-ի կոդի[4][5]: Լեզուն հիմնականում մշակվել է Սանկտ Պետերբուրգի JetBrains ընկերության ծրագրավորողների կողմից[6]:

Զարգացում[խմբագրել | խմբագրել կոդը]

Մեկ տարի անց JetBrains-ը «Kotlin» նախագիծը ներկայացրեց հասարակությանը` որպես JVM- ի նոր լեզու[7]: 2012 թվականի փետրվարին JetBrains-ը թողարկել է Apache 2 լիցենզիայի տակ գտնվող կոդ[8]: 2016 թվականի փետրվարի 15-ին թողարկվել է Kotlin-ի 1.0 տարբերակը: Այս թողարկումը համարվում է առաջին պաշտոնական թողարկումը[9]:

Առաջատար մշակող Դիմիտրի Յեմերովը նշել է, որ լեզուների մեծամասնությունը չի ցուցադրում այն ​​առանձնահատկությունները, որոնք նրանք փնտրում էին` բացառությամբ Scala[7]: Սակայն դա դանդաղ կոմպիլյատոր կլիներ, հետևաբար, Կոտլինի համար նախատեսված նպատակներից մեկն այն էր, որ Java-ն բարձր կոմպիլյացիոն արագությամբ հայտնի լիներ[10]:

Գործիքներ[խմբագրել | խմբագրել կոդը]

IDE IntelliJ IDEA-ի համար, որը մշակվել է JetBrains-ի կողմից, հասանելի է Kotlin հավելվածը, որը կարող է տեղադրվել IntelliJ IDEA 15-ում[11][12]: Պաշտոնական Android ի մշակման միջավայրը` Android Studio-ն աջակցում է 3.0 տարբերակի և ավելի բարձր Kotlin-ի` որպես մայրենի լեզու` Android-ի ծրագրերի մշակման համար[13][14]:

Շարահյուսություն[խմբագրել | խմբագրել կոդը]

Լեզուն ոչ թե փորձում է համատեղել Java-ի հետ, այլ նախատեսված է համագործակցել Java-ի կոդի հետ[15]: Այն նաև օգտագործում է գոյություն ունեցող կոդը` Java Class Library-ում (JCL), օրինակ` Java Collections Framework (JCF)-ը[16]:

Kotlin-ում փոփոխական անունից հետո կարող է նշվել մի կետով առանձնացված տվյալների տեսակը, սակայն Kotlin-ը նաև աջակցում է Typinferenz-ին: Ի հավելումն օբյեկտի վրա հիմնված ծրագրավորման դասընթացների և մեթոդների (Կոտլինում, անդամի գործառույթներում), Kotlin-ը աջակցում է գործառնական ծրագրավորման գործառույթներին[17]:

„Hello, world!!“-օրինակ
fun main(args: Array<String>) {   		               	// Einsprungpunkt (Main-Funktion)
    println("Hallo Welt!")        		                // Gib den String 'Hallo Welt!' aus
}
Ֆունկցիայի օրինակ
fun main(args: Array<String>) {                          // Einsprungpunkt (Main-Funktion)
    fun funktionsBeispiel() {                            // Erstellen der Funktion 'funktionsBeispiel'

        val a = 120                                      // Weist der Variable 'a' den Integer-Wert 120 zu

        if (a == 100) {                                  // if..else-Anweisung, prüft ob 'a' gleich 100 entspricht
            println("a entspricht 100")                  // Falls 'a' 100 entspricht, gib 'a entspricht 100' aus.
        } else if (a == 130) {                           // Ansonsten prüfe, ob a gleich 130 entspricht
            println("a entspricht 130")                  // und gib 'a entspricht 130' aus.
        } else  {                                        // Falls 'a' weder 100 noch 130 entspricht, gib
            println("a entspricht weder 100 noch 130")   // 'a entspricht weder 100 noch 130' aus.
        }
    }                                                    // Funktionsende

    funktionsBeispiel()                                  // Aufrufen der Funktion

}
Անվտանգ նավարկող օպերատոր Օգտագործման օրինակ
  // returns null if...
  // - foo() returns null,
  // - or if foo() is non-null, but bar() returns null,
  // - or if foo() and bar() are non-null, but baz() returns null.
  // vice versa, return value is non-null if and only if foo(), bar() and baz() are non-null
  foo()?.bar()?.baz()

Ծանոթագրություններ[խմբագրել | խմբագրել կոդը]

  1. https://www.youtube.com/watch?v=VU_L2_XGQ9s — 2015.
  2. Heiss J. J. The Advent of Kotlin: A Conversation with JetBrains' Andrey Breslav — 2003.
  3. https://api.github.com/repos/JetBrains/kotlin
  4. Sandra Upson (2017-05-19)։ «The Language that Stole Android Developers’ Hearts»։ WIRED (Կաղապար:ЯзыкПоКоду)։ Վերցված է 2018-02-23 
  5. «FAQ - Kotlin Programming Language» (Կաղապար:ЯзыкПоКоду)։ Վերցված է 2018-02-21 
  6. Heiss Janice (2013-04)։ «The Advent of Kotlin: A Conversation with JetBrains' Andrey Breslav»։ oracle.com։ Oracle Technology Network։ Վերցված է 2014-02-02 
  7. 7,0 7,1 Krill Paul (2011-07-22)։ «JetBrains readies JVM language Kotlin»։ infoworld.com։ InfoWorld։ Վերցված է 2014-02-02 
  8. Waters John (2012-02-22)։ «Kotlin Goes Open Source»։ ADTmag.com/։ 1105 Enterprise Computing Group։ Վերցված է 2014-02-02 
  9. Breslav Andrey (2016-02-15)։ «Kotlin 1.0 Released: Pragmatic Language for JVM and Android» 
  10. «Kotlin Build Tools» 
  11. «What’s New in IntelliJ IDEA»։ JetBrains 
  12. «Jetbrains Plugin Repository:Kotlin» 
  13. «Getting Started with Eclipse Neon - Kotlin Programming Language»։ Kotlin 
  14. «Kotlin for Eclipse» 
  15. «Semicolons»։ jetbrains.com։ Վերցված է 2014-02-08 
  16. «functions»։ jetbrains.com։ Վերցված է 2014-02-08 
  17. Breslav Andrey (2012-01-20)։ «Language of the Month: Kotlin»։ drdobbs.com։ Վերցված է 2014-02-02 

Արտաքին հղումներ[խմբագրել | խմբագրել կոդը]