Aldo David Garcia Garduño
Javier Marucco
Marcos Avila Rodriguez
Peter Jonathan Montalvo Garcia
Ignacio Bogarín Alvarez
José Ocando
- -
Oscar Gutiérrez
Omar Leal
Gaspar Dolcemascolo
Lilia Andrea Ruiz Coronel
David Barreto
Yennifer Hurtado Arce
Arturo Fabian Ocampo Ficher
Jonathan Meixueiro
René Morgado
Michell Excellent
Ulises Serrano Pérez
José Manuel Puicón Rodas
José Javier Cueto Mejía
Edwin Garcés Saucedo
Jose Carlos Florez Vergara
Supervisa S.A.S
Jean Paul Fabian Pajuelo León
Brayan David
Irineo Aragón Quintero
swift es bipolar , en algunas ocasiones se enoja por que declaras una variable sin espacios let v= 0 , y en otras ocasiones te puedas cargar una funcion completa con un > y te dice no problem........
Lol! True
🤯🤯🤯🤯🤯🤯🤯 Así con esta clase
x2
X3
reversedNames = names.sorted(by: { (s1: String, s2: String) -> Bool in return s1 > s2})
This illustrates that the overall call to the sorted(by:) method has remained the same. A pair of parentheses still wrap the entire argument for the method. However, that argument is now an inline closure.
Inferring Type From Context
reversedNames = names.sorted(by: { s1, s2 in return s1 > s2 } )
Implicit Returns from Single-Expression Closures
reversedNames = names.sorted(by: { s1, s2 in s1 > s2 } )
Shorthand Argument Names
Swift automatically provides shorthand argument names to inline closures, which can be used to refer to the values of the closure’s arguments by the names $0, $1, $2, and so on.
reversedNames = names.sorted(by: { $0 > $1 } )
Operator Methods
reversedNames = names.sorted(by: >)
Igualitas a las lambda functions de Python
Si de hecho la misma documentación de Swift hace referencia a esto:
Las clausuras (del inglés closures) son bloques auto-contenidos de funcionalidad que pueden ser pasados y usados en todo tu código. Las clausuras en Swift son similares a los bloques en C y Objective-C, y a las lambdas en otros lenguajes de programación
Joder, esta clase me elevo al nirvana!
Los Closure son como las funciones anonimas de javaScript y tambien pude replicar algo parecido a una Arrow Function, me gusta. Espero que cuando trabaje como IOS Dev no encuentre gente que utiliza $0, $1 o simplemente un >, es lo menos legible del mundo.
Y yo pensando que el identificador del closure sería el "in" 🤣
En esta clase me rei demasiado 🤣🤯🤣🤯🤣🤯🤣
Excelente curso
Hay un modo mas abreviado y mejor, solo lo piensas y swift lo ejecuta, aunque hay otro mejor, no hace falta ni que lo pienses, swift sabe lo que quieres
Efectivamente, cuándo mi novia me dice "No sé, tu sabrás" Swift me dice que es lo que sé sin que le pregunte y me resolvió la vida :D
Parecido al callback de JS no?
Son muy muy parecidos.
Mi ejemplo de esta clase ;D
reversedNames = names.sorted(by: >)
Closure expression syntax has the following general form:
{ (parameters) -> return type in statements }
Esto, para quien venga de JS, se asemeja a una función anónima o una arrow function, pero super recortada
var numeros = [Int]() for _ in 1...10{ numeros.append(Int.random(in: 1...100)) } numeros.map{ $0*2 } numeros.reduce(0,{$0 + $1}) numeros.filter{$0 % 2 == 0} ```así usé los Clousures con las funciones map, reduce y filter
Siguiente versión de Swift:
Just '<'
🤯
con solo pensarlo, swift sabe lo que necesitamos hacer :D, no es necesario ni el menor jaja
wow
Ya no lo apuren, nos va a dejar con un solo caracter