InicioLinuxPrimeros pasos en Kotlin sobre Linux (II)

Primeros pasos en Kotlin sobre Linux (II)

Linux2/27/2018
Primeros pasos en Kotlin sobre Linux (II)

Introducción
Una vez superada los problemas de compilación, podemos empezar a estudiar las propiedades del lenguaje, una de las ventajas de Kotlin es que permite importar las librerías de Java, por lo que no es necesario reescribir todos nuestros proyectos.
Por ahora, el problema es que al convertir a la máquina virtual de Java, los archivos aumentan un poco de tamaño, por lo que nuestras aplicaciones deben ser algo más pequeñas.
Las ventajas de Kotlin es que la curva de aprendizaje para un programador Java no es tan pronunciada. Una de las diferencias corresponde a que el código no requiere de la cerradura de instrucción: ;

I.Manejo de import
Debo confesar que esta parte me generó un poco de problemas, no por el lenguaje, sino la falta de experiencia en él.
Si queremos importar una librería ya escrita en java utilizamos: import <nombre_librería>, por ejemplo:
import java.util.TreeMap
Importar librerías personales en Kotlin
Para ello consideremos la jerarquía de archivos de nuestro proyecto
  • /: directorio raíz
  • /lib: directorio de nuestras librerías
Si creamos una librería <librería>.kt y la colocamos directamente en nuestra carpeta de libería, es decir /lib/<librería>.kt, para importarla a nuestro proyecto el código debe ser:
import lib.*
Si tenemos una estrutura más amplia en nuestra librería con más de una subcarpeta, por ejemplo /lib/folder02/<libería2>.kt el código de importación será:
import lib.folder02.*

La diferencia con Java, corresponde a que se pueden importar métodos específicos de nuestra librería. Esto es si dentro de nuestro <libreria>kt (que se encuentra en /lib) existe una función llamada funcX podemos importar esta función aplicando el código:
import lib.funcX 
Nota: si funcX se encontrara dentro de /lib/folder02/<libreria2>.kt, el código para importar la función específica sería:
import lib.folder02.funcX

Así, de esta manera si tenemos un archivo llamado shapes.kt en una carpeta llamada geometry en nuestro directorio raíz con la función createRandomRectangle y queremos importar la función a nuestro main, que se encuentra en el directorio raíz, dentro del archivo main.kt, podemos realizarlo de la siguiente manera (ejemplo adaptado de Kotlin in Action):
Archivo: /geometry/shapes.kt

//paquete para importar
package geometry

//importar librerías de java
import java.util.Random

//Clase extensible
class Rectangle(val height: Int, val width: Int)
{
    val isSquare: Boolean

    get() = height == width
}

//Extensión de una clase
fun createRandomRectangle(): Rectangle
{
    val random = Random()
    return Rectangle(random.nextInt(), random.nextInt())
}


Archivo: /main.kt

package geometry
import geometry.createRandomRectangle

fun main(args: Array<String>)
{
    println("El rectángulo aleatorio, es un cuadrado: ${createRandomRectangle().isSquare}")
}


Si no importamos correctamente la librería, y utilizamos alguna función, tendremos un error de referencia al momento de compilar:
kot-05.kt:14:54: error: unresolved reference: funcX

La estructura de salida del error de compilación es la siguiente:
nombrearchivo.kt:línea:columna: error: tipo_error: función

II. Manejo de Variables
Las variables y constantes se declaran de la siguiente maneran val <nombre_identificador>: <Tipo> (para una variable) y val <nombre_identificador> = <valor>
//Declaración de una variable
val myVariable: Int

//Declaración de una constante
val myConstant = 5 //Constante Entero
val myString = "Hola" //Cadena
val myReal = 7.5e2 //Constante Real


Otro identificador de variables corresponde a var, su uso es similar la diferencia corresponde a:
  • val: variables de valor inmutable una vez asignada
  • var: variables de valor mutable

III. Función principal
Para ejecutar alguna aplicación requerimos de tener un método principal el cual es muy similar al de Java, excepto que no es necesario que esté dentro de una clase
JAVA:
public class ClasePrincipal {
     public static void main(String[] args)
      {
         ...
      }
}


KOTLIN:
fun main(args: Array<String>)
{
   ...
}


Un ejemplo de programa con salida en consola de Kotlin sería

val saludo = "Hola"

fun main (args: Array<String>){
    println("Un saludo: $saludo")
}


La salida de consola corresponde a:
>>Un saludo: Hola

El operador $, permite accesar al valor de la variable, muy similar como funciona en los lenguajes scripts como javascript, php, etc.. En Kotlin también nos permite imprimir la salida de una función o una secuencia de instrucciones, que se encuentren entre llaves{ ... }:
println("El rectángulo aleatorio, es un cuadrado: ${createRandomRectangle().isSquare}")

Post Anterior:
Dedicada a la instalación y algunos problemas con el compilador de Kotlin


Post Siguiente:


Bibliografía:
Jemerov, D. y Isakova, S (2016) Kotlin in Action: Manning Publications, Versión 11.
Datos archivados del Taringa! original
35puntos
138visitas
0comentarios
Actividad nueva en Posteamelo
0puntos
3visitas
0comentarios
Dar puntos:

Dejá tu comentario

0/2000

Autor del Post

b
bradrd2009jp🇦🇷
Usuario
Puntos0
Posts11
Ver perfil →
PosteameloArchivo Histórico de Taringa! (2004-2017). Preservando la inteligencia colectiva de la internet hispanohablante.

CONTACTO

18 de Septiembre 455, Casilla 52

Chillán, Región de Ñuble, Chile

Solo correo postal

© 2026 Posteamelo.com. No afiliado con Taringa! ni sus sucesores.

Contenido preservado con fines históricos y culturales.