Aprende Swift 3

Swift y las funciones y parámetros

¡Prueba gratis durante 10 días

nuestros 1218 cursos !

Prueba gratis Mostrar modalidades de suscripción
Las funciones nos van a servir para reutilizar código, como una llamada a red o el abrir archivos en nuestro programa. En este video revisaremos qué son y cómo utilizarlos con parámetros nombrados, además de algunas opciones muy útiles.

Transcripción

Ahora hablaremos acerca de las funciones. Las funciones son conjuntos de código en donde le vas a pasar parámetros o no, y vas a trabajar con esos parámetros dentro de tu función. Si al final lo decides, puedes regresar algún resultado o valor de retorno dentro de tu función. ¿Qué es lo importante que identifiques? Todas las funciones deben tener nombre y deben indicar un contenido. Para poder definir una función en Swift 3, es muy similar a como lo hemos hecho antes "func" que es la palabra reservada para indicar que vas a definir una función más adelante. Le vamos a poner "methodName" y aquí voy a poder hacer cualquier tipo de referencia. Esta es una referencia a un tipo de función y Swift y el compilador van a identificar que "methodName" en realidad es una referencia que puede aceptar parámetros. Para empezar a definir los parámetros voy a abrir paréntesis y le voy a poner "para" y voy a escribir ":", "espacio" y el tipo de este parámetro que en este caso va a ser "int" o entero cierro paréntesis, pero si quisiera escribir más parámetros puedo escribir antes del paréntesis ",param2" y su tipo, por ejemplo "string". Esta es una manera de poder definir múltiples parámetros. Después voy a indicar cuál es el valor de retorno. ¿Cómo lo hago? Muy sencillo. "-" como si fuera una flecha. Y le voy a decir que el valor de retorno de esta función es un entero. Voy a poner espacio, abro llaves y en automático me va a cerrar la llave para indicar dónde termina la definición de la función. Si te fijas aquí ya me salió un error. Y dice: "Oye, creo que estás olvidando regresar algo", y tiene toda la razón. El método está vacío y no regresa nada. Lo que voy a poner aquí es que voy a regresar el valor de mi parámetro más "1". Y de esta manera ya tengo la definición de mi primer método. ¿Cómo lo puedo utilizar? Muy sencillo: "MethodName" y le paso el parámetro. Le voy a poner "4", y si te fijas aquí ya me está regresando "5". Lo bueno de las funciones es que las puedo reutilizar las veces que lo necesite. Puedo volverlo a hacer con el valor "8" y me dice "9". Y lo puedo volver a hacer con un valor más grande y va a seguir funcionando mientras yo cumpla con el tipo de parámetro. Algo muy importante es que identifiques que puedes escribir diferentes nombres de métodos y hacer referencia a otros tipos, por ejemplo, si escribo "methodName" para "string", éste ya es otro método y ya no tiene nada que ver con lo que escribimos anteriormente. A esto se le llama en otros lenguajes de programación "sobrecarga de métodos". La "sobrecarga de métodos" es cuando estás cambiando el tipo o los parámetros pero es algo muy importante. Tú puedes sobrecargar cuantas veces quieras. Por ejemplo, aquí puedo volver a llamar "MethodName" y si te fijas aquí ya te va a arrojar que tienes dos opciones, uno que recibe un entero y otro que recibe una cadena. Supongamos que le pongo la cadena vacía, y el resultado es la misma letra "a". También lo puedes hacer con otros tipos, como por ejemplo "double" y va a ser otra función completamente diferente. En esta función tengo un parámetro definido con un valor por "default" que es "2.5". ¿Cómo funciona esto? Muy sencillo. Puedo escribir "methodName" y me va a decir-- Hay una función a la que si no le pasas nada, te va a regresar un "double". Aquí está. Y hay otra función en donde si le pasas un "double" te va a regresar un "double". Como por ejemplo "5.5". Si te fijas estamos haciendo algo muy similar, pero estamos haciendo referencia a la misma función, que es la que acepta dobles. Puede ser un poquito confuso, solamente ten mucha atención en cuáles son los parámetros y qué es lo que está regresando cada una de ellas. Por último, las funciones en Swift pueden recibir argumentos variables o "variadic arguments", por ejemplo, esas se definen de una manera muy sencilla, que es con puntos suspensivos. Lo que estoy haciendo aquí es que estoy recibiendo una función que se llama "methodName"; voy a almacenar un conjunto de enteros expresados en un arreglo y voy a recibir también un parámetro llamado "others" que es de tipo "string" y que tiene un valor por "default" que es "a". Para mandar llamar este método, lo puedo escribir con "comas". Miren. Aquí estoy escribiendo "methodName" que recibe un conjunto de enteros "2,3,4,5" "," para poder indicar que es el siguiente parámetro. El nombre del parámetro que es "others" y le voy a pasar la letra "b" y si te fijas aquí en la consola está imprimiendo el arreglo y la "b". De esta manera "Int" es de tipo "array" y podrás utilizarlo y recorrerlo como cualquier otro "array" en las funciones. Estas son las formas de definir funciones en Swift. Es muy poderoso, muy flexible y muy seguro también. ¿Por qué es muy seguro? Porque sabe identificar qué es lo que le tienes que pasar como "input" y cuál es el tipo de regreso de esta función como "output". Eso nos va a ayudar mucho a la seguridad de nuestras aplicaciones.

Aprende Swift 3

Descubre Swift 3, la versión más actual del lenguaje de Apple; conoce todas sus novedades y aprende el lenguaje de código abierto desde cero para desarrollar tus aplicaciones.

3:14 horas (31 Videos)
Actualmente no hay comentarios.
 

Este curso video2brain está disponible como descarga y para ser visualizado online. ¡Pero no hace falta que decidas entre las dos opciones! Al comprar el curso, disfrutarás de ambas posibilidades.

La descarga te permite ver las lecciones sin estar conectado/a a internet y supone una navegación fácil y ágil entre capítulo y capítulo. Si vas a trabajar en diferentes ordenadores o si no quieres descargarte el curso completo, entra en la web con tus datos de acceso y disfruta directamente de tus vídeos online. Te deseamos que disfrutes de este curso y te resulte de mucha utilidad.

Estamos a tu disposición si tienes cualquier tipo de duda o pregunta.