Objective-C (lenguaje de programación)
Objective-C es un lenguaje orientado a objetos que amplía C con mensajería dinámica en tiempo de ejecución. Se usa ampliamente en apps de macOS e iOS e interoperar con Swift y C/C++.
Objective-C es un lenguaje de programación orientado a objetos de propósito general que añade funciones orientadas a objetos y un tiempo de ejecución dinámico al lenguaje C. Históricamente ha sido el lenguaje principal para crear aplicaciones y frameworks en plataformas de Apple como macOS e iOS. Los desarrolladores suelen describirlo como un superconjunto de C que mezcla la sintaxis de C con el envío de mensajes al estilo Smalltalk.
Características principales
- Modelo del lenguaje: Objective-C extiende C, por lo que el código y las bibliotecas de C pueden usarse directamente desde fuentes en Objective-C.
- Mensajería y tiempo de ejecución: Los métodos se invocan mediante un estilo de paso de mensajes en lugar de llamadas puramente funcionales, y gran parte del comportamiento se resuelve en tiempo de ejecución mediante la biblioteca de ejecución de Objective-C.
- Construcciones comunes: El lenguaje utiliza @interface y @implementation para las clases, id para un puntero a objeto con tipado dinámico, selectores (SEL) para la identidad de los métodos y @property para los accesores declarados.
- Funciones modernas: Admite bloques (cierres), categorías para añadir métodos a clases existentes, protocolos (similares a las interfaces) y opciones de gestión automática de memoria como ARC en las cadenas de herramientas actuales.
Origen y desarrollo
Objective-C se creó a principios de la década de 1980 y más tarde ganó relevancia cuando pasó a ser el lenguaje elegido para NeXTSTEP y, después, para el ecosistema de desarrollo de Apple tras la adquisición de NeXT. A lo largo de décadas evolucionó mediante mejoras en el compilador y el tiempo de ejecución, además de actualizaciones de la cadena de herramientas. En la década de 2010, Apple introdujo Swift como una alternativa moderna, pero Objective-C sigue muy presente en proyectos existentes y en código de sistema de bajo nivel.
Como es una capa delgada sobre C, Objective-C se usa con frecuencia cuando se necesita acceso directo a APIs de C o para interoperar con código heredado. Su diseño centrado en el tiempo de ejecución permite patrones como la resolución dinámica de métodos, la introspección y el reenvío de mensajes, que son más difíciles de reproducir en lenguajes con despacho puramente estático.
Para los desarrolladores nuevos en la plataforma, Objective-C se diferencia de los lenguajes más recientes por hacer hincapié en el despacho dinámico y en una extensibilidad ligera del tiempo de ejecución. Puede aprenderse junto con Swift o enlazarse con él: muchas bases de código combinan ambos lenguajes y usan las funciones de interoperabilidad que ofrecen las herramientas de Apple. Obtén más información sobre el lenguaje y su ecosistema en recursos de Objective-C y sobre las guías de Apple para plataformas en plataformas de Apple.
Artículos relacionados
Autor
AlegsaOnline.com Objective-C (lenguaje de programación) Leandro Alegsa
URL: https://es.alegsaonline.com/art/71776