hombre-desesperado

La sintaxis de los Bloques en Objective C

Qué son los bloques en Objective C

Una de las grandes mejoras que se han hecho a Objective C, junto a ARC, son los bloques. Bueno, en realidad, los bloques NO se han añadido no a Objective C, sino a C, pero no nos pongamos pijoteros….

Los bloques en realidad son algo ya bastante antiguo, inventado (como no) en Lisp. Se trata de una función de primer nivel, que captura el entorno léxico en el que ha sido creado. Si esto te ha sonado a 中国的, ¡no desesperes! El Curso Intermedio de Programación iOS Online está a punto de salir y explica todo esto en detalle.

Si se trata de una función, ¿por qué puñetas se le ha llamado “bloque”? ¡Buena pregunta, joven padawan! Se debe a que el “Alma Mater” de Objective C es Smalltalk. Smalltalk es en lo que se transmuta Lisp cuando desciende a la Tierra y se adapta a los mortales.

Pues bien, en Smalltalk, ese concepto se llama bloque, ¡y se representa entre corchetes! 😉

Con los bloques se pueden hacer auténticas maravillas, desde concurrencia para seres humanos con GCD,  crear DSLs en Objective C (véase Kiwi), gestión de recursos sin fallos, eliminar delegados, etc…

La puta sintaxis de los bloques en Objective C

Ahora bien, ¿a quién en su sano juicio se le ocurre una sintaxis tan endemoniada para los bloques?

¡Ya he vuelto a poner el ^ donde no debía!

¡Ya he vuelto a poner el ^ donde no debía!

¿La puta sintaxis de los bloques en Objective C te quita las ganas de vivir y te lleva al alcoholismo? NO estás solo.

Pero hay esperanza.

www.PutaSintaxisDeBloques.com

Añádelo a tus favoritos y deja de sufrir.

Cuando salga el Curso Intermedio de Programación iOS Online, publicaremos otros sitios indispensables como éste.

Acerca de Fernando Rodriguez

Fundador & Editor Jefe de justcodeit, Fernando Rodríguez (@frr149 & Linkedin) es desarrollador & un experto en la enseñanza de máxima calidad en programación y desarrollo para dispositivos iOS, Cocoa Touch, Objective C, Swift, Python, entre otros, aunque su mejor carta de presentación, es la opinión de sus alumnos: http://keepcoding.io/es/testimonio/ CLO en KeepCoding & Arunovo. Instructor de iOS Avanzado del Big Nerd Ranch. Profesor Asociado de la U-tad, autor invitado de revistas como iPhoneWorld, Applesfera.com & ponente habitual en conferencias dentro y fuera de España (iOSDevUK, CodeMotion, BCNDevCon, etc). En sus vidas anteriores fue un nerd de Python y Django, mago de Smalltalk, y para su pesar, galeote de C++ y un gran cocinero.

Share this: