martes, agosto 28, 2012

Objective C. Con qué se come (para no iniciados)

Por Talya Aluveaux

Hace mucho, mucho tiempo, en una galaxia muy lejana... Ok, no... fue en un SHDH, en el patio de una casa... alguien tuvo la "brillante" idea de aventarme al frente a platicar un poco sobre una inquietud que yo traía por entonces rondando esta terca cabezota, y contra todo pronóstico y mi terrible pánico escénico, hablé (está bien, balbuceé) un momento sobre la necesidad que sentia de documentar lo que se estaba haciendo en Sonora en materia de TI, desarrollo de software, nuevas tecnologías, etcétera, pero mis limitadas skills en la materia me impedían montar un sitio web decente, por tanto pedía ayuda de los desarrolladores allí reunidos.

Hasta allí todo bien, exceptuando el par de pedradas que recibí porque no contestaba los correos cuando era editora de informática en el impar (ejem, ejem... según yo sí los contestaba todos :P), e inmediatamente obtuve feedback, y algún norte sobre qué tecnologías podría utilizar, etcétera. También recibí una invitación por parte de un developer front end a quien respeto mucho profesionalmente a platicar sobre la posibilidad de una colaboración. Hasta allí todo bien, exceptuando que estaba tan harta de que me tuvieran maniatada con una camisa de fuerza de estilo, temas, manuales de redacción y monitoreos telefónicos en el susodicho periódico que simplemente no estaba lista para trabajar en conjunto con nadie, por lo visto ni sola. Era necesario un tiempo de desintoxicación.

Sin embargo, fue este desarrollador, a quien todavía le agradezco la atención, quien, entre otras cosas, sembró en mi la inquietud de que era necesario hablar también de lenguajes de programación, y convertir un sitio en este tipo no sólo en un lugar de reflexión sobre noticias tecnológicas globales y acontecimientos relevantes para las TI locales, sino además una especie de polo "evangelizador" de nuevos lenguajes y plataformas, sin otro fin que el de propagar más rápidamente el "awareness" de propios y extraños sobre dichas tecnologías (no necesariamente lenguajes, también plataformas, paradigmas, etcétera).

Muy bien en teoría. ¿Pero cómo demonios me pongo yo a escribir sobre, digamos, Objective-C cuando todo lo que sé sobre este lenguaje se reduce a la charla de verano a la que asistí en las nearsoft talks del año pasado? Sí, tomé notas y ya no me acuerdo de nada. Quiero cumplir con este objetivo, planteado con toda buena intención, pero tendré que limitarme a ejercicios meta, basados en lecturas de wikipedia entries e interminables sesiones de stalking en GitHub y/o StackOverfow.

¿Y qué sentido tiene, si los desarrolladores o las personas interesadas en lenguajes seguramente estarán todo el día con las narices metidas en Hacker News? Creo que, precisamente, incrementar el awareness de la existencia de estos lenguajes entre el resto de los mortales... ¿quien dice que no esté entre ellos un futuro desarrollador? Con la modesta meta de picar con el mosquito de la curiosidad, es que me atrevo a iniciar esta serie. Bare with me.

Objective-C es un lenguaje de propósito general orientado a objetos desarrollado a principios de los 80 y utilizado principalmente por Apple para los sistemas operativos OS X y iOS, y sus respectivas API's, Coca y Cocoa Touch, dado que era el lenguaje utilizado para el OS NeXTSTEP, del cual se derivan los OS modernos de Apple.

El lenguaje se deriva del lenguaje C, adicionado con elementos de SmallTalk. El sitio Web de Apple Mac Developer Library ofrece un compendio completísimo sobre Objective C, dirigido al lector interesado en a)programar y b)conocer más sobre Cocoa.

Otro sitio recomendable es Cocoa Dev Central, en el que básicamente invitan a aprender Objective-C y sin más miramientos lo arrojan a uno en un tutorial escrito e ilustrado por Scott Stevenson. No sin antes mandarlo a leer un tutorial de C si es que no es de los elegidos capaces de sentirse cómodos con la programación orientada a objetos.

Objective-C es el décimo lenguaje más popular en GitHub y tiene hasta este momento 98,883 preguntas etiquetadas en StackOverflow. Buena suerte con eso.

Y bueno, como decía Lourdes Encinas: Es cuanto. Tarde o temprano seré capaz de generar un hello world...

Out.

No hay comentarios:

Publicar un comentario

La bio de Miguel; lo prometido es deuda

Por Talya Aluveaux @talya Miguel de Icaza nació en 1972. Es un programador, mejor conocido por iniciar los proyectos GNOME, Mono y Xamarin. ...