Aprende Swift 3

Pattern matching

¡Prueba gratis durante 10 días

nuestros 1222 cursos !

Prueba gratis Mostrar modalidades de suscripción
Muchas veces los if's no nos son suficientes y, para evitar una pirámide de condiciones, en este video te voy a enseñar cómo funciona y cuándo utilizar el pattern matching con tuplas y sus valores, además de poder capturar los valores dentro de ellas.

Transcripción

Una vez que ya dejamos claro qué tan cool soy, entonces vamos a hablar acerca de las duplas y el "Pattern Matching". Es muy importante que indentifiques que el Pattern Matching es una técnica que puedes encontrar en diferentes lenguajes de programación, ahora, ¿te hace más cool usarla? Claro. ¿Tienes que aprender a usarla bien? Sí. Así que vamos a comenzar. Para poder utilizar el Pattern Matching tienes que darte cuenta primero es qué es en lo que tienes que hacer el "match", cómo vas a encontrar las partes en las que van a ser parecidos estos elementos. Por ejemplo, aquí tengo una pequeña dupla, la dupla tiene dos enteros, 1 y 2, son del mismo tipo, no te preocupes, esto funciona entre mismos tipos, diferentes tipos, o valores, aquí lo que importa es que tú puedes estar haciendo los match por valor, o por tipo. Por ejemplo, voy a escribir aquí un Switch Case. Este Switch Case está evaluando a P, ¿cómo es que funciona? Estamos evaluando el valor de P y en caso de que sea 0 y 0, entonces voy a imprimir la palabra "Origin" en caso de que sea 1 y cualquier otra cosa, esto es como en Swift se define que no me importa qué sea el otro valor, entonces voy a regresar 1, si es 1 y 2, entonces voy a regresar 1 y 2 y si no, voy a regresar un signo de interrogación, pero como ya sabemos, después de cada Case no necesito escribir el Brake para poder salirme del Switch, simplemente se va a salir del Switch en cuánto ya sepa que existe ese Case. Ahora, voy a comentar esta Línea porque quiero que caiga en la siguiente expresión. Si te fijas, aquí está haciendo el match perfecto 1 y 2 contra 1 y 2, eso es Pattern Matching. Ya no necesitas estar colocando los "Ifs" si no simplemente necesitas estar viendo si estás aplicando el patrón correctamente dentro de tus sentencias. Ahora, esto va a funcionar con objetos, con tipos, o con cualquier valor que tú le coloques, el tema es que dentro de los protocolos de Hashable o Comparable, puedas estar comparando de manera igual cada uno de los elementos que están dentro del Pattern Matching. Otro ejemplo, este es de asignación ya no es de comparación. Por ejemplo, aquí tengo otra dupla, esta dupla es un poquito más grande, si te fijas, tiene el índice 0, el índice 1 y el índice 2, pero lo importante aquí es que yo quiero capturar el primer elemento, ¿cómo lo hago? Podríamos decir, "Let firts PO.0" y ya, con esto tengo su valor, y ya, triunfo en la vida, pero eso no me da puntos como programador, esto simplemente me los quita, porque ya lo sabía, ¿cómo podría hacerlo de manera más rápida? Muy sencillo. Voy a abrir "Let", voy a abrir paréntesis para indicar que ahí viene una dupla, "(f, s, t) = po" Y ya, ya hice la asignación, estoy diciendo que F va a ser igual a 1, S va a ser igual a 2, y T va a ser igual a 3. ¿Qué cómo lo sé? Muy sencillo, ahí está f, no, esa S no, s minúscula y t. Y listo, si te fijas, ya están aquí sus valores. Ahora, ¿qué pasa si no me interesa lo demás? ¿Qué pasa si no me interesa el segundo elemento? No pasa nada, lo borras, y pones el guión bajo, y lo quitas de aquí, porque si no, tendrás un error en tiempo de ejecución, y listo, ya solamente tienes el primero y el tercero. ¿Cómo funciona? Simplemente cuando colocas el guión bajo, es que no te importa qué es lo que venga en este objeto, no te importa si viene lleno, si viene vacío, no lo vas a capturar, simplemente lo vas a ignorar. De esta manera estás haciendo Pattern Matching a la hora de asignar. Asignas el primero, el segundo lo ignoras, y el tercero lo capturas también. El Pattern Matching es muy útil para poder estar transformando y llevando elementos de un lado a otro, sobretodo en programación funcional, es muy importante que aprendas a utilizarlo porque en programación funcional lo que haces es que con las listas tomas el primer elemento, ignoras el conjunto que te resta y una vez que tratas ese primer elemento, te mueves al segundo, y te mueves al restante de los arreglos o de las colecciones que tengas. Aprende a utilizarlo, es muy sencillo, en realidad, lo vas a utilizar muchísimo y yo te sugiero mucho que te adentres en la programación funcional para que lo puedas dominar por completo.

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.