Tutorial de Kotlin para principiantes (ejemplos)
¿Qué es Kotlin?
Kotlin es un lenguaje de programación de código abierto de tipo estático que se ejecuta en Java Máquina Virtual (JVM). Combina programación orientada a objetos (OOP) y programación funcional en plataformas distintivas, autosuficientes y sin restricciones. También permite el hermanamiento de funcionalidades mediante códigos miniatura. Kotlin es un lenguaje de programación de propósito general diseñado por JetBrains.
Historia de Kotlin
A continuación, se muestran hitos importantes de la historia de Kotlin:
Año | Eventos |
---|---|
2016 | Se lanzó Kotlin v1.0 |
2017 | Anuncio de Google sobre el soporte de primera clase de Kotlin en Android |
2018 | Kotlin v1.2 viene con códigos adicionales de distribución entre JVM y JavaGuión |
2019 | Google anunció Kotlin como su lenguaje de programación preferido para Android Desarrolladores de aplicaciones |
2021 | El 20 de septiembre de 2021 se lanzó Kotlin v1.5.31. |
Razones para usar Kotlin
A continuación se presentan algunas razones importantes por las que Kotlin se utiliza ampliamente:
- Kotlin es un lenguaje de tipado estático que es muy fácil de leer y escribir.
- Los programas Kotlin no requieren punto y coma en su programa. Esto hace que el código sea fácil y más legible.
- Este lenguaje permite el intercambio y uso de información de Java de varias maneras. Además, Java y el código Kotlin pueden coexistir en el mismo proyecto.
- El sistema de tipos de Kotlin tiene como objetivo eliminar NullPointerException del código.
- Le llevará menos tiempo escribir código nuevo en Kotlin. Es aún más fácil implementar código Kotlin y mantenerlo a escala.
Características de Kotlin
Aquí hay algunas características de Kotlin que le asegurarán el camino de progreso del lenguaje de programación.
Codificación recortada:
Kotlin es un lenguaje de programación basado en OOP donde la línea de código se puede recortar hasta un 40 %, lo que convierte a Kotlin en una opción ideal para el desarrollo de software o web.
Fuente abierta:
Kotlin para Android Utiliza JVM y combina las características de OOP y programación orientada a funciones.
Compilación rápida:
Es fácil compilar el código cuando se trabaja con Kotlin, lo que resulta en un mejor rendimiento para el desarrollo de Android, y también explicará qué tipo de función de datos se puede usar en todo el código.
Funciones de extensión:
Kotlin puede admitir una variedad de funciones de extensión sin realizar ningún cambio en el código. ayuda a hacer que el código existente sea más atractivo y magnífico para los desarrolladores.
Por Ejemplo:
Fun String.removeFirstLastChar(): String = this.substring(1, this.length -1)
Este código ayudará a recortar el primer y último carácter de la cadena, podemos aplicarlo como:
Val string1 = "Today is cloudy." Val string2 = string1.removeFirstLastChar()
Seguridad nula:
En Kotlin, el sistema distingue entre referencias nulas y referencias no nulas como se muestra en el siguiente ejemplo de Kotlin.
Por ejemplo, una variable de cadena no puede contener un valor nulo:
Var string1: String = "Today is Sunday" String1 = null // compilation error To permit null, we can adjoin the nullable variable : Var string2: String? = "Today is Sunday" String2 = null print(string2)
Interoperable:
El código Kotlin puede ser utilizado por Java y Java Los códigos se pueden utilizar con Kotlin. Entonces, si tienes conocimientos sobre UPS programación, es fácil cambiar al desarrollo de Kotlin. Además, si hay algunas aplicaciones escritas en Java, entonces se pueden usar con el entorno de Kotlin.
Herramientas robustas:
Como Java, El código Kotlin también se puede escribir usando IDE o usando la interfaz de línea de comandos. Es fácil trabajar con IDE y los errores de sintaxis también se reducen drásticamente. Al mismo tiempo, cuando trabaja con una interfaz de línea de comandos, primero se debe compilar el código.
Reparto inteligente:
La fundición inteligente básicamente ayuda a reducir los costos de la aplicación y mejora su velocidad o rendimiento. Trabaja en la gestión de la eficiencia del código mediante conversión de tipos o valores inmutables.
Por ejemplo, si se identifica la cadena, entonces su longitud y su número se pueden encontrar con la ayuda de la función Smart Cast:
Val string1: Any = "Today is Monday" when(string1) { is String -> string1.length Is Int -> string1.inc() }
Bajo costo de adopción:
Las empresas prefieren Kotlin debido a su costo perdido de adopción. Lo más importante es que es fácil de aprender para los desarrolladores, especialmente si tienen experiencia en programación.
Configuración del entorno Kotlin
A continuación se detallan los pasos que le ayudarán a configurar un entorno de trabajo mediante la instalación de Kotlin.
Paso 1) Instalar Java
Como hemos comentado anteriormente, Kotlin se basa en Java, entonces tienes que instalar Java primero cuando planee adoptar Kotlin. Consulte nuestro Java Tutorial de instalación.
Paso 2) Instalar Java IDEs
Por suerte, existen múltiples Java IDEs Para escoger de. Aquí le proporcionamos enlaces de descarga para facilitarle un poco las cosas.
- Para descargar el Eclipse, haz clic aquí.
- Para descargar el NetBeans, haz clic aquí.
- Para descargar IntelliJ, haz clic aquí.
En este tutorial de Kotlin, usaremos Eclipse.
Paso 3) Instale Kotlin
Para instalar Kotlin en Eclipse, vaya a la sección de Ayuda en Eclipse y haz clic en el botón Eclipse Opción de mercado.
Ahora, escribe la palabra clave Kotlin en el cuadro de búsqueda. Haz clic en la opción Ir para ver el complemento. Te dará un enlace al complemento Kotlin, debes instalarlo desde el enlace indicado.
Por favor reinicie el Eclipse IDE, una vez completada la instalación. Puede encontrar un icono de acceso directo en la esquina superior derecha de Eclipse IDE. Es un método de acceso rápido.
Otra forma de acceder a Kotlin en Eclipse IDE es, vaya al Windows, Perspectivas, Abrir Perspectivas y, a continuación, elegir la opción Otros. Aquí, puede consultar una lista de complementos instalados posteriormente, como se muestra a continuación.
Una vez que haya verificado la instalación de Kotlin, creemos el primer programa Kotlin en el siguiente paso.
Paso 4) Primer programa Kotlin
Comience con su primer proyecto Kotlin. En el menú Archivo, elija la opción Nuevo, luego seleccione otros y comience con un nuevo proyecto Kotlin de la lista.
Ahora debe definir un nombre para el proyecto y estará listo para trabajar con Kotlin.
Con estos sencillos pasos, es fácil descargar Eclipse y Kotlin en su sistema y escriba su primer programa Kotlin de inmediato.
Architextura de Kotlin
Una arquitectura bien construida es importante para que una aplicación pueda ampliar sus funciones y cumplir con las expectativas de los usuarios finales. Kotlin tiene su propia arquitectura peculiar y distintiva para asignar la memoria y obtener resultados de calidad para los desarrolladores y los usuarios finales.
Las corrutinas y clases de Kotlin diseñan el núcleo de tal manera que se produzca menos código repetitivo, se amplifique el rendimiento y se refuerce la eficiencia. Hay una variedad de escenarios en los que el compilador de Kotlin puede reaccionar de manera diferente, especialmente cuando está seleccionando varios tipos de lenguajes.
En el diagrama de arquitectura, está claro que la ejecución del código se realiza en tres sencillos pasos.
- En el primer paso, se agrega el archivo ".kt" o kotlin al compilador.
- En el segundo paso, el compilador Kotlin convierte el código en código de bytes.
- En el tercer paso, el código de bytes se coloca en Java Virtual Machine y ejecutado por la JVM.
Cuando un par de archivos codificados en bytes operan en JVM, encienden la comunicación mutua entre ellos, por lo que nació la característica de Kotlin llamada interoperabilidad para Java.
El paso de Kotlin a JavaEl script se ejecuta cuando Kotlin apunta JavaGuión.
Cuando el JavaSe elige el objetivo del script, cualquier código de Kotlin que sea parte de la biblioteca que navega con Kotlin se derrama con JavaGuión. Sin embargo, el Java Se excluye el kit de desarrollo (JDK) o cualquier biblioteca Java utilizada.
Un archivo que no sea de Kotlin no se tiene en cuenta durante dicha operación. JavaEl archivo de script .kt se convierte a ES5.1 mediante el compilador Kotlin para generar un código consistente para JavaScript. El compilador Kotlin busca un tamaño de salida óptimo, interoperabilidad con módulos existentes, la misma funcionalidad que la biblioteca estándar y una salida que sea JavaGuión legible.
De la discusión se desprende claramente que los compiladores Kotlin pueden crear un código más eficiente, competente e independiente que resulte en un producto de software de alto rendimiento.
Variables de Kotlin
Las variables se utilizan para almacenar datos que serán manipulados y referenciados en el programa. Es fundamentalmente una unidad de almacenamiento de datos y etiquetado que espera un alias expositivo para que el programa sea sencillo de leer y de entender. En otras palabras, podemos decir que las variables son los contenedores donde recoger información.
En Kotlin, todas las variables deben declararse. Sin embargo, si alguna variable no está declarada, se genera un error de sintaxis. Además, la declaración de la variable determina el tipo de datos que se permite almacenar en la variable. En Kotlin, las variables se pueden definir utilizando las palabras clave val y var. Esta es la sintaxis para declarar variables en Kotlin:
Var day = "Monday" Var number = 3
Aquí hemos declarado la variable local día cuyo valor es “Monday' y cuyo tipo es String y otra variable local número cuyo valor es 3 y cuyo tipo es Int porque aquí el literal es de tipo entero que es 3.
Las variables locales se declaran e inicializan habitualmente de forma simultánea. También podemos realizar determinadas operaciones mientras inicializamos la variable de Kotlin.
Podemos realizar una operación en la variable del mismo tipo de datos, como en este caso, num1 y num2 son del mismo tipo de datos, es decir, Int, mientras que day es del tipo de datos string. Por lo tanto, se mostrará un error. Aquí hay otra técnica para definir variables en Kotlin.
var day : String = "GURU99" var num : Int = 100
Veamos en qué se diferencian las palabras clave var y val entre sí.
Var:
Var es como una variable genérica utilizada en cualquier lenguaje de programación que se puede utilizar varias veces en un solo programa. Además, puede cambiar su valor en cualquier momento en un programa. Por eso se la conoce como variable mutable.
Aquí hay un ejemplo de variable mutable en Kotlin:
var num1 = 10 Var num2 = 20 Num1 = 20 print(num1 + num2) // output : 40
Aquí, el valor de num1, que es 20, se sobrescribe con el valor anterior de num1, que es 10. Por lo tanto, la salida de num1 + num2 es 40 en lugar de 30.
Valor:
Val es como una variable constante, y no se puede cambiar su valor más adelante en el programa, que tampoco se puede asignar varias veces en un solo programa y se puede utilizar solo una vez en un programa en particular. Por lo tanto, se la conoce como una variable inmutable.
Aquí hay un ejemplo de programa Kotlin de variables inmutables en Kotlin:
Val num1 = 10 Var num2 = 20
Aquí, el valor de num1 que es 10 no puede ser sobrescrito por el nuevo valor de num1 que es 20, ya que es de tipo val que es constante. Por lo tanto, el resultado es 30 en lugar de 40.
Nota:: En Kotlin, se prefieren las variables inmutables a las variables mutables.
Tipos de datos en Kotlin
Los tipos de datos son conjuntos de valores relacionables y describen las operaciones que se pueden realizar con ellos. Al igual que otros lenguajes de programación, Kotlin también tiene su conjunto predefinido de tipos de datos como Int, Boolean, Char, Double, etc.
En Kotlin, cada tipo de datos se considera un objeto.
Ahora, en este tutorial básico de Kotlin, profundicemos en los tipos de datos predefinidos utilizados en Kotlin.
Numbers :
Kotlin ofrece un conjunto de tipos de datos integrados conocidos como números, que se subcategorizan como números enteros y de punto flotante. Numbers.
Números enteros:
Los números enteros son la categoría de números que tiene cuatro tipos:
Tipo | Tamaño (bits) | Valor min | valor máximo |
---|---|---|---|
Byte | 8 | -128 | 127 |
Short | 16 | -32768 | 32767 |
Int. | 32 | -2,147,483,648 (-231) | 2,147,483,647 (231-1) |
Largo | 64 | -9,223,372,036,854,775,808 (-263) | 9,223,372,036,854,775,807 (263-1) |
Punto flotante Numbers :
Punto flotante Numbers son los números no enteros que llevan algunos valores decimales.
Flotante: Float es un valor de punto flotante de precisión simple de 32 bits.
Ejemplo: var: Flotante x = 3.25600
Double: Double es un valor de punto flotante de doble precisión de 64 bits.
Ejemplo:var: Double y = 2456.345587
Booleanos:
El tipo de datos booleanos en Kotlin es importante para representar los valores lógicos. Solo hay dos valores posibles en booleano: verdadero o falso.
Por Ejemplo: día val = verdadero
Val día2 = falso
Personaje :
Los caracteres en Kotlin se representan con la ayuda de la palabra clave char. En Kotlin, las comillas simples representan la declaración de char. En Java, los char a veces se usan como números, lo que no es posible en Kotlin.
Por Ejemplo:
val onechar = 'x' print(onechar) // output : x Val onedigit = '7' print(onedigit) // output : 7
Conversión de tipo Kotlin o conversión de tipo Kotlin
La conversión de tipo es un procedimiento para convertir un tipo de variable de datos en otra variable de tipo de datos. Es enormemente conocido también como Type Casting.
Eminentemente, en Java, se admite el tipo implícito de conversión de tipos o el tipo implícito de encasillamiento de un tipo de datos más pequeño a un tipo de datos más grande.
For Example : int abc = 15; Long bcd = abc; // compiles successfully
Sin embargo, en Kotlin, la conversión implícita de un tipo de datos más pequeño a un tipo de datos más grande no se admite en absoluto, es decir, el tipo de datos int no se puede convertir implícitamente en un tipo de datos largo.
For Example : var abc = 15 Val bcd : Long = abc // error
Sin embargo, en Kotlin, la conversión de tipos se realiza explícitamente. Aquí viene la guía de funciones auxiliares que guían la conversión de una variable de tipo de datos a otra.
Hay ciertas funciones auxiliares que son usadas para la conversión de un tipo de datos a otro:
aInt()
aByte()
a corto()
a Char()
a Largo()
flotar()
aDouble()
For Example : var abc = 15 Val bcd : Long = abc.toLong() // compiles successfully
Kotlin Operatoros
OperaLos operadores son caracteres o símbolos importantes y especiales que aseguran las operaciones en operandos que tienen variables y valores. En Kotlin, existe un conjunto de operadores que se utilizan en diferentes operaciones como operaciones aritméticas, operaciones de asignación, operaciones de comparación, etc.
Aritmética Operaconductores:
Los operadores aritméticos se utilizan para la suma, resta, multiplicación, división y módulo.
Operator | Significado |
---|---|
+ | Suma (también utilizada para la concatenación de cadenas) |
– | Sustracción Operator |
* | Multiplicación Operator |
/ | División Operator |
% | Módulo Operator |
Por Ejemplo:
var x = 10 var y = 20 var z = ( ( x + y ) * ( x + y ) ) / 2
Aquí la salida del siguiente código es 45.
Comparación Operaconductores:
El operador de comparación se utiliza para comparar dos valores, dos variables o dos números. Se utiliza con el símbolo mayor que ( > ), el símbolo menor que ( < ) y el símbolo igual a ( ==), el símbolo distinto a ( != ), el símbolo mayor que igual a ( >= ), el símbolo menor que igual a (<= ). Siempre da como resultado verdadero o falso.
Por Ejemplo:
var x = 10 Var y =20 Var z = x < y // Output : true Var w = x > y // Output : false Var m = x == y // Output : false
Asignación Operaconductores:
Asignación OperaLos operadores se utilizan para asignar valores aritméticos operados. Se utilizan con símbolos como +=, -=, *=, /=, %=.
Por Ejemplo:
var x = 10 var y = 20 var x + = y // Output : 30 Var y - = x // Output : 10 Var x * = y // Output : 200
Incremento y Decremento Operaconductores:
Los operadores de incremento y decremento se utilizan para incrementar y disminuir los valores de la variable o número. Se utiliza con la ayuda de símbolos como ++ y —.
Hay dos tipos de incremento y decremento que son pre-incremento ++a, post-incremento a++, pre-decremento –b, post-decremento b–.
Por Ejemplo:
var a = 10 var b = 20 var c = a++ // Output: 11 var d = b— //Output : 19
Matrices Kotlin
Una matriz es el conjunto homogéneo de tipos de datos y es uno de los tipos de datos más fundamentales que se utiliza para almacenar los mismos tipos de datos en la ubicación de memoria contigua. Una matriz es importante para la organización de datos en cualquier lenguaje de programación, de modo que varios datos almacenados en un solo lugar sean fáciles de buscar u ordenar.
En Kotlin, las matrices son una colaboración mutable de los mismos tipos de datos en lugar de ser tipos de datos nativos.
Aquí hay ciertas propiedades de una matriz en Kotlin
- El tamaño de la matriz no se puede cambiar una vez declarado.
- Las matrices en Kotlin son mutables.
- Las matrices se almacenan en ubicaciones de memoria contiguas.
- Se puede acceder a una matriz con la ayuda de índices como a[1], a[2], etc.
- El índice de una matriz comienza con cero, que es un [0].
En Kotlin, una matriz se puede definir con dos métodos diferentes
Usando la función arrayOf():
En Kotlin, hay un uso importante de las funciones de la biblioteca. Una de esas funciones de biblioteca es la función arrayOf(), que se utiliza para definir una matriz pasando los valores de las variables a la función.
Por Ejemplo: Declaración de tipo implícita de matriz usando la función arrayOf()
val x = arrayOf(1,2,3,4,5,6,7,8,9)
Por Ejemplo: Escriba explícitamente la declaración de matriz utilizando la función arrayOf().
Val y = arrayOf<Int>(1,2,3,4,5,6,7,8,9)
Utilizando el constructor de matrices:
En Kotlin, hay una clase con el nombre Array. Por lo tanto, es factible utilizar una matriz del constructor para crear una matriz. La matriz en el constructor contiene dos parámetros principales.
¿Qué es el índice de una matriz en Kotlin?
La función donde un índice de matriz es aceptable para devolver el valor inicial del índice.
Por Ejemplo:
val abc = Array(7 , { i -> i*1})
Aquí, el valor de la matriz es 7 y la expresión lambda se usa para inicializar los valores del elemento.
También existen varios métodos para acceder y modificar las matrices utilizando ciertas funciones. Por lo tanto, hay dos funciones miembro get() y set(), que se utilizan para acceder a los objetos de la matriz de clases.
Por Ejemplo:
val x = arrayOf(10,20,30,40,50,60,70,80,90) val y = x.get(0) // Output 10
Aquí, la salida es 10 ya que el valor en el índice 0 de la matriz es 10
Nota: get() toma solo valores únicos
Por Ejemplo:
val x = arrayOf(10,20,30,40,50,60,70.80.90) val y = x.set(2, 3) //
Salida: 30 40
Aquí, la salida es 30 y 40 ya que el valor en el índice 2 de la matriz es 30 y en el índice 3 es 40.
Nota: set() toma múltiples valores de una matriz.
Cuerdas Kotlin
Una cadena es un tipo de datos básico en cualquier lenguaje de programación. Una cadena no es más que una secuencia de caracteres. La clase String representa cadenas de caracteres. En Kotlin, todas las cadenas son objetos de la clase String, lo que significa que los literales de cadena se implementan como instancias de la clase.
Sintaxis:
Val myString = "Hey there!"
Colección Kotlin
Una colección contiene varios objetos de un tipo similar y estos objetos de la colección se denominan elementos o elementos. La recopilación puede ayudar a almacenar, recuperar, manipular y agregar datos.
Tipos de Colecciones:
colección inmutable
Este tipo de colección admite funcionalidades de solo lectura. No se pueden modificar sus elementos.
Los métodos incluyen:
- Lista – listOf() y listOf()
- Conjunto – conjunto de()
- Mapa – mapa de()
Colección mutable
Admite funciones de lectura y escritura.
Los métodos incluyen
- Lista: mutableListOf(),arrayListOf() y ArrayList
- Conjunto – mutableSetOf(), hashSetOf()
- Mapa: mutableMapOf(), hashMapOf() y HashMap
Funciones de Kotlin
Las funciones en cualquier lenguaje de programación son un grupo de declaraciones similares que están designadas para realizar una tarea específica. Las funciones permiten que un programa lo divida en varios bloques de código pequeños. Esta división del código aumenta la legibilidad del código, la reutilización del código y hace que el programa sea fácil de administrar.
Como Kotlin se conoce como un lenguaje tipado estáticamente. Aquí, la palabra clave "divertida" se utiliza para declarar una función. En Kotlin, hay dos tipos de funciones que dependen únicamente de su disponibilidad en la biblioteca estándar o la definición del usuario. Ellos son:
- Función de biblioteca estándar
- Función definida por el usuario
Ahora, analicémoslos en detalle con ejemplos de código de Kotlin.
Función de biblioteca estándar
Son funciones de biblioteca integradas que se pueden definir implícitamente y estar disponibles para su uso.
Para el ejemplo 2:
fun main(args: Array<String>){ var number = 9 var result = Math.sqrt(number.toDouble()) print("$result") }
Salida:
3.0
sqrt() es una función definida en la biblioteca que devuelve la raíz cuadrada de un número.
La función print() imprime el mensaje en un flujo de salida estándar.
Función definida por el usuario
Como su nombre indica, estas funciones suelen ser creadas por los usuarios y pueden utilizarse para programación avanzada.
Aquí, las funciones se declaran utilizando la palabra clave "divertida".
Para el ejemplo 3:
fun functionName(){ //body of the code }
Aquí, llamamos a la función para ejecutar códigos dentro del cuerpo functionName()
Ejemplos de funciones de Kotlin:
fun main(args: Array<String>){ sum() print("code after sum") } fun sum(){ var num1 =8 var num2 = 9 println("sum = "+(num1+num2)) }
Salida:
suma = 17
código después de la suma
Manejo de excepciones en Kotlin
La excepción en programación se define como un problema de tiempo de ejecución que ocurre en el programa y que lo lleva a finalizar. Este problema puede ocurrir debido a menos espacio de memoria, matriz fuera de enlace o condiciones como la división por cero. Para frenar este tipo de problemas en la ejecución de código, se utiliza el manejo de excepciones.
El manejo de excepciones se define como la técnica que maneja los problemas de tiempo de ejecución y también mantiene el flujo del programa durante la ejecución.
Kotlin usa la expresión "lanzar" para lanzar un objeto de excepción. Aquí todas las clases de excepción son descendientes de la clase Throwable.
Lanzar MyException ("lanza una excepción")
Hay cuatro tipos de excepciones en el manejo de excepciones. Ellos son:
- try: este bloque contiene declaraciones que podrían crear la excepción. Siempre va seguido de captura, finalmente o ambos.
- catch: detecta una excepción lanzada desde el bloque try.
- finalmente: siempre comprueba si la excepción se maneja o no.
- throw: se utiliza para lanzar una excepción explícitamente.
Trata de atraparlo:
En el bloque try-catch en el manejo de excepciones, el bloque try encierra el código, lo que puede generar una excepción y el bloque catch captura la expresión y la maneja.
Sintaxis del bloque try catch:
try{ //code with exception }catch(e: SomeException){ //code handling exception }
Sintaxis de intentar con finalmente bloquear
try{ //code with exception }finally{ // code finally block }
Por último:
En Kolin, el bloque finalmente siempre verifica si la excepción se maneja o no, lo que lo convierte en una declaración muy importante sobre el manejo de excepciones.
Para el ejemplo 4:
En este fragmento de código, se produce la excepción y se maneja.
fun main (args: Array<String>){ try { val data = 9/ 0 println(data) } catch (e: ArithmeticException) { println(e) } finally { println("finally block executes") } println("write next code") }
Salida:
java.lang.ArithmeticException: / by zero finally block executes write next code
Lanzar:
El bloque de lanzamiento genera una excepción explícita. Además, se utiliza para generar excepciones personalizadas.
Sintaxis:
Throw SomeException() Throw SomeException()
Ejemplo:
fun main(args: Array<String>) { try{ println("Exception is not thrown yet") throw Exception("Everything is not well") println("Exception is thrown") } catch(e: Exception){ println(e) } finally{ println("You can't ignore me") } }
Salida:
Seguridad nula de Kotlin
Los tipos de sistemas que admiten Kotlin distinguen principalmente entre las referencias que pueden llevar referencias que aceptan valores NULL y las que no pueden llevar referencias que aceptan NULL. Kotlin es un lenguaje de seguridad nulo destinado a eliminar la excepción de puntero nulo o la referencia nula del código, que se conoce deliberadamente como A. BillError del dólar de iones.
El obstáculo más convencional de muchos lenguajes de programación es que al acceder a un miembro de una referencia nula, resulta ser una NullPointerException, lo que podría deberse a !! operador o este constructor usado en otro lugar y pasado en otro punto del código. La propiedad anulable requiere confirmación de la verificación nula cada vez antes de su utilización.
En Kotlin, el sistema distingue entre referencias nulas y referencias no nulas.
Por ejemplo, una variable de cadena no puede contener un valor nulo:
Para el ejemplo 5:
fun main(args: Array<String>){ var x: String = "GURU99 is the only place where you will get maximum technical content!" // Not Null by default println("x is : $x") // You cannot assign null variable to not-nullable variables // a=null // it will give compilation error var y: String? = "Thanks for visiting GURU99" // Nullable Variable println("y is : $y") y = null println("y is : $y") }
Salida:
OOP de Kotlin
El enfoque de programación orientada a objetos permite dividir un fragmento de código complejo en bloques de código más pequeños mediante la creación de objetos. Estos objetos comparten dos características: estado y comportamiento.
Estos son algunos de los elementos de programación orientada a objetos que analizaremos con ejemplos de código de Kotlin:
- Clase y Objetos
- Constructores
- Herencia
- Clase abstracta
Clase en Kotlin
Lo primero, antes de crear un objeto, debemos definir una clase que también se conoce como modelo del objeto.
Sintaxis:
class ClassName { // property // member function ... .. ... }
Objetos en Kotlin
Al definir una clase, solo definimos las especificaciones del objeto, no se asigna ningún otro parámetro como memoria o almacenamiento.
Sintaxis:
var obj1 = ClassName()
Constructores en Kotlin
Un constructor es una forma de inicializar propiedades de clase. Es una función miembro llamada cuando se crea una instancia de un objeto. Pero en Kotlin funciona de manera diferente.
Hay dos tipos de constructores en Kotlin:
Constructor primario: forma optimizada de inicializar una clase
Sintaxis:
class myClass(valname: String,varid: Int) { // class body }
Constructor secundario: ayuda a agregar lógica de inicialización
Herencia Kotlin
La herencia ocurre cuando la clase secundaria adquiere algunas propiedades de la clase principal. Se permite la herencia cuando dos o más clases tienen las mismas propiedades.
Sintaxis:
open class ParentClass(primary_construct){ // common code }class ChildClass(primary_construct): ParentClass(primary_construct_initializ){ // ChildClass specific behaviours }
Clase abstracta en Kotlin
Una clase abstracta es una clase de la que no se pueden crear instancias, pero podemos heredar subclases de ella. La palabra clave 'abstracto' se utiliza para declarar una clase abstracta.
Para el ejemplo 6:
open class humanbeings { open fun Eat() { println("All Human being Eat") } } abstract class Animal : humanbeings() { override abstract fun Eat() } class Cat: Animal(){ override fun Eat() { println("Cats also loves eating") } } fun main(args: Array<String>){ val lt = humanbeings() lt.Eat() val d = Cat() d.Eat() }
Salida:
El presente y el futuro de Kotlin
El presente:
- Muchas empresas como Netflix, Pinterest y Corda están utilizando Kotlin para crear potentes Android aplicaciones.
- En un corto período de un año, de 2016 a 2017, Kotlin se hizo muy popular con increíbles funciones de programación.
- En 2017, Google anunció Kotlin como lenguaje de programación oficial para el desarrollo de Android.
- Puedes reemplazar rápidamente Java código con Kotlin ya que es 100% interoperable con Java y Android.
El futuro:
- Desarrollo de juegos multiplataforma
- Desarrollo de aplicaciones móviles multiplataforma
- Scripting del lado del servicio y microservicios
- Aprendizaje automático & análisis de los datos
Resum
- Kotlin es un lenguaje de programación propuesto por JetBrains en 2010 para aplicaciones multiplataforma bajo la licencia Apache 2.0.
- El nombre Kotlin se deriva del nombre de la isla Kotlin en una correspondencia similar de Java después del nombre de una isla llamada java.
- En 2016 se lanzó la primera versión v1.0 de Kotlin.
- Los programas Kotlin no requieren punto y coma en su programa. Esto hace que el código sea fácil y más legible.
- Kotlin para Android Developers es un lenguaje de programación basado en OOP donde la línea de código se puede recortar hasta un 40 %, lo que convierte a Kotlin en una opción ideal para el desarrollo de software o web.
- En Kotlin, todas las variables deben declararse utilizando las palabras clave var y val.
- Al igual que otros lenguajes de programación, Kotlin también tiene su conjunto predefinido de tipos de datos como Int, Boolean, Char, Double, etc.
- En Kotlin, existe un conjunto de operadores que se utilizan en diferentes operaciones como operaciones aritméticas, operaciones de asignación, operaciones de comparación, etc.
- En Kotlin, las matrices son una colaboración mutable de los mismos tipos de datos en lugar de ser tipos de datos nativos.
- En Kotlin, las matrices se definen mediante dos métodos: ArrayOF () y Constructores.
- Kotlin es un lenguaje de seguridad nulo que ayuda a eliminar la excepción de puntero nulo o la referencia nula del código, que se llama deliberadamente A BillError del dólar de iones.