Kotlin
From Wikipedia, the free encyclopedia
Remove ads
Kotlin-ը օբյեկտի վրա հիմնված ծրագրավորման լեզու է, որը թարգմանվում է Java-ի վիրտուալ մեքենայի (JVM) բայթոդով, բայց կարող է նաև վերածվել JavaScript-ի կոդի[5][6]։ Լեզուն հիմնականում մշակվել է Սանկտ Պետերբուրգի JetBrains ընկերության ծրագրավորողների կողմից[7]։
Remove ads
Զարգացում
Մեկ տարի անց JetBrains-ը «Kotlin» նախագիծը ներկայացրեց հասարակությանը` որպես JVM- ի նոր լեզու[8]։ 2012 թվականի փետրվարին JetBrains-ը թողարկել է Apache 2 լիցենզիայի տակ գտնվող կոդ[9]։ 2016 թվականի փետրվարի 15-ին թողարկվել է Kotlin-ի 1.0 տարբերակը։ Այս թողարկումը համարվում է առաջին պաշտոնական թողարկումը[10]։
Առաջատար մշակող Դիմիտրի Յեմերովը նշել է, որ լեզուների մեծամասնությունը չի ցուցադրում այն առանձնահատկությունները, որոնք նրանք փնտրում էին` բացառությամբ Scala-ի[8]։ Սակայն դա դանդաղ կոմպիլյատոր կլիներ, հետևաբար, Կոտլինի համար նախատեսված նպատակներից մեկն այն էր, որ Java-ն բարձր կոմպիլյացիոն արագությամբ հայտնի լիներ[11]։
Remove ads
Գործիքներ
IDE IntelliJ IDEA-ի համար, որը մշակվել է JetBrains-ի կողմից, հասանելի է Kotlin հավելվածը, որը կարող է տեղադրվել IntelliJ IDEA 15-ում[12][13]։ Պաշտոնական Android ի մշակման միջավայրը` Android Studio-ն աջակցում է 3.0 տարբերակի և ավելի բարձր Kotlin-ի` որպես մայրենի լեզու` Android-ի ծրագրերի մշակման համար[14][15]։
Շարահյուսություն
Լեզուն ոչ թե փորձում է համատեղել Java-ի հետ, այլ նախատեսված է համագործակցել Java-ի կոդի հետ[16]։ Այն նաև օգտագործում է գոյություն ունեցող կոդը` Java Class Library-ում (JCL), օրինակ` Java Collections Framework (JCF)-ը[17]։
Kotlin-ում փոփոխական անունից հետո կարող է նշվել մի կետով առանձնացված տվյալների տեսակը, սակայն Kotlin-ը նաև աջակցում է Typinferenz-ին։ Ի հավելումն օբյեկտի վրա հիմնված ծրագրավորման դասընթացների և մեթոդների (Կոտլինում, անդամի գործառույթներում), Kotlin-ը աջակցում է գործառնական ծրագրավորման գործառույթներին[18]։
- „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()
Remove ads
Ծանոթագրություններ
Արտաքին հղումներ
Wikiwand - on
Seamless Wikipedia browsing. On steroids.
Remove ads