FUNCIONES DE ANDROID
Type in the name of the company you are going to have an interview with.
TIPOS DE PARAMETROS
FUNCIONES CON PARAMETROS DE SALIDA
CON ESTE PARAMETRO PODEMOS DEVOLVER UN RESULTADO DE LA VARIABLE QUE DEFINAMOS (LO MALO ES QUE SOLO PODEMOS DEVOLVER UN PARAMETRO)
AL YA DECLARA LAS VARIABLES CON PARAMETROS DE ENTRADA AL CERRAR LOS PARÉNTESIS PORDREMOS EL TIPO DE VARIABLE QUE QUEREMOS DEVOLVER LUEGO LA FUNCION HARA LO QUE DEBE HACER Y NOSOTROS LA DEVOLVEREMOS CON LA PABRA CLAVE RETURN
FUNCIONES CON PARAMETROS DE ENTRADA
las funciones con parámetros de entrada, que son iguales, pero al llamarlas habrá que mandarle las variables que necesite.
PRIMERO DEFINIMOS EL NOMBRE DE LA VARIABLE SEGUIDA DE DOS PUNTOS Y EL TIPO DE VARIABLE (ES OBLIGATORIO)
SUS APLICACIONES SON
How ambitious are you?
Bluetooth
Where and how do you see yourself in 5 years time?
Type in the answers.
Diseño de dispositivo
Sincronización bidireccional de contactos
Soporte para streaming
What are your long-term goals ?
Type them in.
Multitarea
Multi-táctil
Soporte para hardware adicional
Google Play
Navegador web
Entorno de desarrollo
Soporte de Java
What are your short-term goals ?
Type them in.
Mensajería
Videollamada
Mayor nivel de personalización
Deshacer correos enviados
Topic principal
FUNCIONES
Para llamar a una función simplemente tenemos que poner su nombre, pasarle los parámetros que necesite y listo. Vamos a ver un ejemplo.
fun sumar(numero1: Int, numero2: Int): Int {
return numero1 + numero2
}
fun esPar(numero: Int): Unit {
if (numero % 2 == 0) {
println("Si, el numero $numero es par")
} else {
println("No, el numero $numero es impar")
}
}
fun main(args: Array) {
val numA = 2
val numB = 5
var resultado = sumar(numA, numB)
println("$numA + $numB = $resultado => ¿Es par? ${esPar(resultado)}")
// No, el numero 7 es impar
// 2 + 5 = 7 => ¿Es par? kotlin.Unit
}
FUNCIONES DE UNA SOLA LÍNEA
Si la función tiene una sola expresión se pueden omitir las llaves {} y en su lugar añadir un = seguido de la expresión. También se puede quitar el tipo de retorno si el compilador lo puede detectar automáticamente.
fun sumar(numero1: Int, numero2: Int) = numero1 + numero2
fun mayor(numero1: Int, numero2: Int) = if (numero1 > numero2) numero1 else numero2
fun entreCeroYMax(numero: Int, max: Int) = numero in 0..max
fun main(args: Array) {
val numA = 2
val numB = 5
var suma = sumar(numA, numB)
println("$numA + $numB = $suma")
// 2 + 5 = 7
var numeroMayor = mayor(numA, numB);
println("El numero mas grande de $numA y $numB es $numeroMayor")
// El numero mas grande de 2 y 5 es 5
println("¿$numA esta entre 0 y $numB? ${entreCeroYMax(numA,numB)}")
// ¿2 esta entre 0 y 5? true
}
PASAR LOS PARÁMETROS DE LA FUNCIÓN POR NOMBRE
la opción de pasar los parámetros desordenados si se indica su nombre para no tener que utilizar la posición en la que están definidos, también se puede utilizar simplemente para que quede claro que es cada parámetro en una llamada a una función sin tener que mirar ni la definición ni la documentación.
fun restar(numero1:Int, numero2:Int) = numero1 - numero2
fun main(args: Array) {
val resta = restar(numero2 = 20, numero1 = 5)
println("El resultado de la resta es $resta")
// El resultado de la resta es -15
}
// Indicando que la función no devuelve nada
fun saludar(nombre: String): Unit {
println("Hola, " + nombre)
}
Sin indicar el tipo de retorno
Ejemplo
un despedirse(nombre: String) {
println("Adios, " + nombre)
}
Para definir una función tenemos que usar la palabra reservada fun seguida del nombre de la función y entre paréntesis se pueden indicar los parámetros que recibe la función en caso de que los tenga y finalmente tenemos que indicar el tipo de retorno, las llaves {} y dentro pondremos el contenido de nuestra función.
fun nombreFuncion(parametro1:Tipo, ..., parametroN:Tipo): TipoRespuesta {
// Cuerpo de la funcion
}
Si la función no devuelve nada el tipo de retorno es Unit, que es el equivalente al void de Java, aunque en estos casos se puede omitir el tipo sin ningún problema.
PARÁMETROS CON VALORES POR DEFECTO
Otra de las posibilidades que tenemos con las funciones en Kotlin es indicar valores por defecto para los parámetros.
Si se define un valor por defecto para un parámetro se puede hacer la llamada sin pasar dicho parámetro y en tal caso se utilizara el valor por defecto definido para el parámetro en la función.
Para asignar un valor por defecto hay que añadir el signo igual = seguido del valor por defecto detrás del parámetro.
ejemplo
fun dividir(numero1:Int, numero2:Int = 2) = numero1 / numero2
fun main(args: Array) {
val division1 = dividir(20, 5)
println("El resultado de la division1 es $division1")
// El resultado de la division1 es 4
val division2 = dividir(20)
println("El resultado de la division2 es $division2")
// El resultado de la division2 es 10
}
En este ejemplo como hemos puesto como valor por defecto para el segundo parámetro 2 si llamamos a la función dividir con un solo parámetro hará la división entre 2.
Si no tuviésemos un valor por defecto la llamada a la función con un solo parámetro produciría un error.
Error:(15, 31) Kotlin: No value passed for parameter 'numero2'
FUNCIONES CON NOTACIÓN INFIX
EJEMPLO
infix fun Int.entre(numero:Int) = this / numero
fun main(args:Array) {
val division = 20 entre 5
println("El resultado de la division es $division")
// El resultado de la division es 4
}
FUNCIONES DE NIVEL SUPERIOR
package com.poi
fun suma(numeroA: Int, numeroB: Int): Int {
return numeroA + numeroB
}
FUNCIONES MIEMBRO
class Persona(var nombre: String, var edad: Int) {
fun esMayorEdad(): Boolean = edad >= 18
}
fun main(args:Array) {
var alguien = Persona("Luis", 25)
println("¿Es ${alguien.nombre} mayor de edad? ${alguien.esMayorEdad()}")
}
FUNCIONES LOCALES
También es posible declarar funciones dentro de otras funciones. Las funciones locales pueden acceder a las variables declaradas en el mismo ámbito en el que están declaradas o en ámbitos superiores.
fun eliminaPares(numeros: List): List {
var resultado: MutableList = ArrayList()
// Funcion local
fun esPar(numero: Int): Boolean = (numero % 2 == 0)
for (numero in numeros) {
if (!esPar(numero)) {
resultado.add(numero)
}
}
return resultado
}
Construir nuevas aplicaciones es muy fácil.
Android ha sido diseñado para que crear y llevar a la práctica nuevas aplicaciones sea una tarea fácil. Por otra parte, el sistema operativo está pensado para que todas las aplicaciones que se creen se puedan utilizar con mucha facilidad también.
Puedes construir aplicaciones con todo tipo de datos.
Android permite crear aplicaciones tomando en consideración datos que se obtienen de muchos lugares. Por ejemplo, si se quiere elaborar una nueva aplicación que sirva a modo de biblioteca móvil, Android no sólo tomará en cuenta los nombres de los libros que ya se tengan almacenados en nuestro teléfono, sino que se podrá recurrir a una base de datos que se encuentre en Internet para engrosar los fondos. Pero es más, no hará falta visitar esta base de datos a diario para ver si se han añadido nuevos títulos, Android se encargará de detectar los últimos títulos y de añadirlos automáticamente a la biblioteca.
¿QUÉ ES ANDROID?
Are you qualified for this position?
Interviewers will want to know whether or not you are able to do the job.
Answer the questions from this section and see if you are the right person for this position.
Android es un sistema operativo de código abierto para móviles desarrollado por Google y por el grupo Open Handset Alliance, un conglomerado de más de 30 empresas dedicadas al mundo de la telefonía móvil. Partiendo de una serie de aplicaciones y utilidades base, Android permite al usuario crear y compartir aplicaciones completamente nuevas utilizando y maximizando todo el potencial del teléfono móvil.
como funciona
Research the company
You should find and learn as much as you can about the company where you are having an interview.
The interviewer will want to see what you know about them and why you chose the company.
Doing your homework will show that you are really interested.
Android ha sido diseñado para permitir a los usuarios crear distintas aplicaciones aprovechando las distintas características y utilidades de sus teléfonos. Por ejemplo, al crear una utilidad con Android, un usuario podrá usar la función de llamada de su teléfono, o la función de mensajería de texto, la de la cámara de fotos, etc. La idea es que se puedan crear todo tipo de aplicaciones usando todas las funciones del teléfono que se quiera, y combinándolas como se quiera. Además, Android optimiza los recursos internos del teléfono (memoria, hardware, etc.) con el objetivo de que la aplicación funcione de la mejor manera posible.
Funciona con todo tipo de aplicaciones.
What is the size of this company?
Android ha sido diseñado para poder utilizar todas las aplicaciones que uno se descargue al teléfono y así crear aplicaciones nuevas y más complejas. Por ejemplo, si uno se descarga una aplicación de una página web para su teléfono, podrá usarla para la creación de una nueva aplicación a través de Android. Este es, precisamente, uno de los puntos fuertes del sistema operativo, que no es estanco. No se limita a utilizar las aplicaciones y funciones de serie de un teléfono, sino que permite usar todas aquellas que vayamos incorporando y descargando desde Internet.