¿Tipado estático?
El tipado estático puede parecer engorroso a algunos programadores, pero tener que definir el tipo de variables a usar tiene la ventaja de que a la hora de la compilación verificará si existe algún problema. (Supongamos que en un lenguaje dinámico donde no es necesario declarar el tipo de variable a usar necesitamos listar, en una llamada a un método especial, cadenas de texto ("strings") y le pasamos una lista con datos tipo Boolean, etc. y nos provoca un error).
Un programa escrito en Kotlin debe llevar la extensión *.kt
main.kt
package com.codemonkey fun main() { println("Programando en Kotlin!!!") }
Tipos de variables main.kt
//Enteros: var byte:Byte = 0; var short:Short = 120; var int:Int = 40; var long:Long = 12000000; //Reales var float:Float = 2.30f; var double:Double = 12.654; //Booleano var verdadero:Boolean = true; //Caracter var character:Char = '\u0000'; //Cadenas var cadenaStr:String = "Codemonkey Junior"; //Array var numeros:Array<Int> = arrayOf(0,9,8,7,6,5); //Lista var miLista:List<String> =listOf("java","kotlin","ceylon","groovy","scala");
//Imprimimos los valores: println("Tipos de datos:"); println("byte:${byte}"); println("short:${short}"); println("int:${int}"); println("long:${long}"); println("float:${float}"); println("double:${double}"); println("boolean:${verdadero}"); println("char:${character}"); println("String:${cadenaStr}");
$ kotlinc main.kt -include-runtime -d main.jar
Ejecutamos:
$ java -jar main.jar
También existe la manera de crear y compilar proyectos Kotlin usando Gradle. Para eso debemos definir nuestro archivo gradle.build
gradle.build
buildscript { ext.kotlin_version = '1.3.10' repositories { mavenCentral() } dependencies { classpath "org.jetbrains.kotlin:kotlin-gradle-plugin:$kotlin_version" } } apply plugin: 'kotlin' apply plugin: 'application' mainClassName = "com.codemonkey.Main" repositories { mavenCentral() } dependencies { compile "org.jetbrains.kotlin:kotlin-stdlib-jdk8:$kotlin_version" } compileKotlin { kotlinOptions.jvmTarget = "1.8" } compileTestKotlin { kotlinOptions.jvmTarget = "1.8" }
Modificamos nuestro código:
package com.codemonkey
object Main { @JvmStatic fun main(args:Array<String>){ //Enteros: var byte:Byte = 0; var short:Short = 120; var int:Int = 40; var long:Long = 12000000; //Reales var float:Float = 2.30f; var double:Double = 12.654; //Booleano var verdadero:Boolean = true; //Caracter var character:Char = '\u0000'; //Cadenas var cadenaStr:String = "Codemonkey Junior"; //Arrays var numeros:Array<Int> = arrayOf(0,9,8,7,6,5); //Lista var miLista:List<String> =listOf("java","kotlin","ceylon","groovy","scala"); //Imprimimos los valores: println("Tipos de datos:"); println("byte:${byte}"); println("short:${short}"); println("int:${int}"); println("long:${long}"); println("float:${float}"); println("double:${double}"); println("boolean:${verdadero}"); println("char:${character}"); println("String:${cadenaStr}"); } }
Listar Arrays
println(); for(numero in numeros){ println(" "+numero); } println(); for(elemento in miLista){ println("${elemento}") }
Para compilar, construir nuestro proyecto tecleamos:
$ gradle build
Para listar las tareas disponibles usamos:
$ gradle -q task
Usaremos run para correr el proyecto:
$ gradle run
Links de interés
https://codemonkeyjunior.wordpress.com/2018/11/18/gradle-kotlin/
https://hackernoon.com/top-5-kotlin-programming-courses-for-java-and-android-programmers-49e842b8af1a
https://rubentejera.com/por-que-usar-kotlin/
https://emanuelpeg.blogspot.com/2019/01/propiedades-y-campos-en-kotlin.html
Poner código en blogger
http://hilite.me/
No hay comentarios:
Publicar un comentario