Objective-C

Qué es Objective-C

Objective-C es un lenguaje orientado a objetos creado como un superconjunto de C con un estilo muy parecido al de Smalltalk. Originalmente fue escrito por Brad Cox y la corporación StepStone en 1980. En 1988 fue adoptado como lenguaje de programación de NeXTSTEP y en 1992 fue liberado bajo licencia GNU para el compilador gcc. Actualmente se usa como lenguaje principal de programación en Mac OS X y GNUStep.

Podemos obtener un compilador de Objective-C en:

  • Si tenemos un Mac OS X ya tenemos el gcc de Apple que viene con Darwin
  • Si tenemos otro SO podemos conseguir el compilador gcc de GNU aquí.

Aprender Objective-C

Para aprender Objective-C, básicamente hay tres pasos:

1. Aprender C

Para ello se puede usar uno de los miles de libros que hay sobre la materia. También se puede consultar esta web con buenos manuales gratuitos en castellano sobre C.

2. Aprender Objective-C

Para aprender Objective-C recomendamos el siguiente libro:

OBJECTIVE-C. Curso práctico para Programadores Mac OS X, iPhone y iPad
Objective-C. Curso práctico para Programadores Mac OS X, iPhone y iPad
Autor: Fernando López Hernández
Editorial: RC Libros
lSBN: 978-84-938312-7-1
560 páginas.

3. Aprender libobjects

libobjects son las librerías de clases de GNU para Objective-C. En concreto se trata de librerías de uso general no gráfica. Se puede decir que libobjects son para GNU's Objective-C lo que libc++ para GNU's C++. En un futuro se pretende cambiar el nombre de estas librerías por el de "GNUStep Base Library". Estas librerías están todavía sin acabar.

Objective-C++

Objective-C++ es un lenguaje que surgió en los tiempos de NeXTSTEP. Este lenguaje permite mezclar código fuente C++ y Objective-C en el mismo fichero fuente, así como llamar a objetos C++ desde Objective-C y viceversa. Lo cual permite al programador Objective-C utilizar todas las librerías de C++ existentes, y al programador C++ acceder a toda la libraría de Cocoa. Los ficheros Objective-C++ llevan las extensión .mm ó .M (extensión antigua que se mantiene por compatibilidad).