https://devlaravel.imosver.com/en/libros/objective-c-49900200534990020053Objective-C33.73A pesar de ser un lenguaje orientado a objetos potentes y dinámicos, Objective-C no ha tenido el mismo reconocimiento que lenguajes como C++ o JAVA. Sin embargo, éste lenguaje de programación es el máhttps://static.arnoia.com/imagenes_small/9788441/978844152964.jpgLibrosLibros/INFORMATICASin stockANAYA MULTIMEDIA000https://static.arnoia.com/imagenes_small/9788441/978844152964.jpg35.551.772011/06/019788441529649Devoe, JivaLibrosaño_2011idioma_SpanishCautor_Devoe, Jivasaga_PROGRAMACION
Artículo
Objective-C
Devoe Jiva
ANAYA MULTIMEDIA
INFORMATICA
? Cookie Notice
We use cookies to ensure you get the best experience on our website.
Read cookie policy.
? Manage cookie preferences
This type of cookie allows the user to browse a website, platform, or application and to use the different options or services that exist on it.
imosver_session
Description
Essential first-party cookie. It keeps your session identified while you browse: your basket, your language and access to your account. The website cannot work without it.
Duration
120 minutes
Dependencies
Domain
imosver.com
OCT8NE
Description
This cookie is used for the proper functioning of the Oct8ne Chat to provide customer support service to the user.
These are those that enable the tracking and analysis of user behavior on our website. The information collected is used to measure user activity on the website and to create user browsing profiles.
_clsk
Description
It records statistical data about the visitor's behavior on the website. This is used for internal analysis by the website operator.
Duration
1 days
Dependencies
Domain
imosver.com
logglytrackingsession
Description
Identifies and records the user session for analytical purposes.
Duration
Session
Dependencies
Domain
.imosver.com
GOOGLE_ANALYTICS
Description
Records a unique identifier that is used to generate statistical data about how the visitor uses the website.
Duration
1 year
Dependencies
Domain
.imosver.com
_clck
Description
Microsoft Clarity first-party cookie. It stores an anonymous browser identifier so that visits to this website can be attributed to the same user and usage statistics can be produced.
Duration
1 year
Dependencies
Domain
imosver.com
CLID
Description
Microsoft Clarity third-party cookie. It identifies the first time Clarity detects this browser on any website using the service.
Duration
1 year
Dependencies
Domain
clarity.ms
_ga
Description
Google Analytics cookie. It stores an anonymous browser identifier in order to distinguish users and produce website usage statistics.
Duration
2 year
Dependencies
Domain
.imosver.com
_ga_LZR660YW0M
Description
Google Analytics 4 cookie. It keeps the analytics session state so that visits and the journey through the website can be measured.
Duration
2 year
Dependencies
Domain
.imosver.com
These are the ones that allow us to adapt the navigation on our website to your preferences (e.g., language, browser used, etc.).
_fbp
Description
Used by Facebook to offer a series of advertising products, such as real-time bids from third-party advertisers.
Duration
3 month
Dependencies
Domain
.imosver.com
afiliado
Description
First-party affiliate programme cookie. It stores for 30 days the code of the affiliate that brought you to the website, so that the sale can be attributed to them.
Duration
1 month
Dependencies
Domain
imosver.com
MUID
Description
Microsoft third-party cookie. It identifies unique browsers visiting Microsoft sites and is used for advertising, analytics and other operational purposes.
Duration
1 year
Dependencies
Domain
clarity.ms
ANONCHK
Description
Microsoft third-party cookie. It indicates whether the MUID identifier is transferred to ANID, a cookie used for advertising purposes.
Duration
10 minutes
Dependencies
Domain
clarity.ms
MR
Description
Microsoft third-party cookie. It indicates whether the MUID identifier must be refreshed.
Duration
7 days
Dependencies
Domain
clarity.ms
SM
Description
Microsoft third-party cookie. It synchronises the MUID identifier across Microsoft domains.
Duration
Session
Dependencies
Domain
clarity.ms
_fbc
Description
Meta cookie. It stores the identifier of the Facebook or Instagram advert you arrived from, in order to attribute the visit to that advertising campaign.
Duration
3 month
Dependencies
Domain
.imosver.com
_gcl_au
Description
Google Ads cookie. It records a visit coming from an advert so that advertising campaign conversions can be measured.
Duration
3 month
Dependencies
Domain
.imosver.com
_uetsid
Description
Microsoft Advertising cookie. It identifies your browsing session in order to measure conversions from Bing advertising campaigns.
Duration
1 days
Dependencies
Domain
.imosver.com
_uetvid
Description
Microsoft Advertising cookie. It identifies your browser across visits in order to measure conversions from Bing advertising campaigns.
A pesar de ser un lenguaje orientado a objetos potentes y dinámicos, Objective-C no ha tenido el mismo reconocimiento que lenguajes como C++ o JAVA. Sin embargo, éste lenguaje de programación es el más moderno que existe para Macs, iPhones e iPads. Esta es un guía de referencia para programadores Mac, iPhone e iPad que ha sido realizada por uno de los genios de Apple. Escrita de forma tal, que puede acceder a herramientas específicas, puede crear proyectos completos, de los que se incluye, casi siempre, el código. Aprenda a gestionar la memoria de Objective-C, como encajan los frameworks y dónde ubicar los Xcode. Conozca las nuevas herramientas que usan en la actualidad los programadores profesionales. Podrá descargar material complementario del libro original en inglés en la página Web de Anaya Multimedia: www.anayamultimedia.esAgradecimientos Sobre el autor Introducción Parte I. Introducción a Objective-C 1. Introducción a Objective-C Utilizar Xcode como herramienta de desarrollo Iniciar un proyecto Explorar los archivos de su proyecto Añadir archivos de código fuente Ventana principal de Xcode Proceso de compilación Escribir el código Transformar código fuente en código compilado y éste en ejecutable Explorar paquetes de aplicación Ajustes de compilación Analizador estático de Xcode Runtime de Objective-C Resumen 2. Sintaxis básica Trabajar con sentencias y expresiones Declarar variables Utilizar comentarios Tipos escalares Estructuras Typedefs Enum Punteros Operadores El operador ternario Trabajar con funciones Entender las funciones Definir funciones Implementación frente a interfaz Enlazar con los archivos de implementación Controlar el flujo del programa Sentencias condicionales If-else Utilizar el condicional ternario Utilizar sentencias switch Elegir las sentencias condicionales Trabajar con bucles Trabajar con for Bucles for tradicionales Utilizar for para la enumeración rápida Trabajar con while Utilizar do Aplicar lo que hemos aprendido Resumen 3. Añadir objetos Objetos Herencias Utilizar el polimorfismo Utilizar el tipo de datos id Crear clases Trabajar con archivos de clase Escribir métodos objeto Trabajar con métodos objeto especiales Escribir métodos clase Declarar objetos Realizar llamadas en objetos Trabajar con propiedades Diferencias entre estado y comportamiento Utilizar propiedades para declarar el estado de objetos Entender los métodos accesorio de propiedades sintetizadas Utilizar el atributo no atómico Utilizar los atributos assign, retain y copy Utilizar propiedades con diferentes nombres de miembros dato Utilizar la notación punto Aplicar objetos Creación de la clase empleado Creación de la clase manager Unir las clases en el programa principal Resumen 4. Gestión de memoria en Objective-C Utilizar el contador de referencia Reglas de gestión de la memoria Utilizar la autoliberación Pilas autorelease Entender la memoria desde el interior de los objetos Escribir inicializadores Escribir métodos dealloc Recogida de basura Entender la recogida de basura Tipos de referencia Configurar su proyecto para que incluya recogida de basura Utilizar frameworks en un proyecto con recogida de basura Patrones de recogida de basura claves Gestionar recursos finitos Escribir aplicaciones Foundation con recogida de basura Trabajar con objetos en archivos nib Forzar la recogida de basura Trabajar con punteros void y recogida de basura Interfaz orientada a objetos del recogedor de basura Elegir el modelo de gestión de memoria para sus proyectos Resumen Parte II. Características avanzadas 5. Trabajar con bloques Bloques Declarar bloques de código Utilizar bloques de código Ambito de aplicación de un bloque Gestionar la memoria de los bloques de código Hacer que los bloques se lean más fácilmente con typedef Utilizar bloques con hilos Trabajar con Grand Central Dispatch Utilizar funciones GCD para distribuir bloques de código en hilos Trabajar con patrones comunes de diseño de bloques Utilizar bloques de código en un mapeado Utilizar bloques en la API estándar Utilizar bloques en tareas paralelizables Crear el proyecto Utilizar bloques con un array para filtrar los números primos Utilizar Grand Central Dispatch Resumen 6. Utilizar codificación y observación del valor clave Acceder a propiedades de objetos utilizando la codificación del valor clave Trabajar con rutas de claves Escribir accesorios que cumplan el estándar KVC Utilizar KVC con arrays Utilizar accesorios indexados Utilizar accesorios sin orden Utilizar KVC con estructuras y escalares Buscar atributos en objetos Observar cambios en los valores compatibles con KVC Utilizar KVO Registrarse como observador Definir callbacks en KVO Eliminar un observador Implementar notificaciones manuales Riesgos de utilizar KVO Aplicar la observación del valor clave Resumen 7. Trabajar con protocolos Favorecer la composición sobre la herencia Razones para no utilizar la herencia múltiple Solución del problema con protocolos Documentar una interfaz para que otros la implementen Implementar protocolos en sus objetos Declarar un protocolo Declarar que una clase implementa un protocolo Declarar un objeto que debe implementar un protocolo Protocolos formales e informales Determinar si un objeto implementa métodos opcionales Evitar dependencias circulares del protocolo Ejemplos del uso de protocolos Resumen 8. Extender la funcionalidad de clases existentes Trabajar con frameworks y clases de terceros Trabajar con categorías Declarar categorías Implementar métodos de categoría Declarar categorías en archivos de encabezado Utilizar una categoría Segregar funcionalidad utilizando categorías Extender métodos de clase Limitaciones de las categorías Implementar protocolos con categorías Riesgos de crear categorías en NSObject Extender clases utilizando categorías anónimas Asociar variables con clases existentes Resumen 9. Escribir macros Revisar el proceso de compilación Funcionamiento de las macros Definir macros Definir constantes Pasar constantes en la compilación Utilizar variables en macros Utilizar encadenamiento Manejar condiciones Utilizar macros predefinidas Resumen 10. Gestionar errores Clasificar errores Cómo interrumpir el flujo del programa Utilizar los diferentes mecanismos para la gestión de los errores Utilizar códigos de retorno Utilizar excepciones Utilizar NSError Crear una referencia indirecta Diccionario userInfo de NSError Trabajar con el gestor de recuperación Trabajar con NSError en métodos Resumen Parte III. Utilizar el framework Foundation 11. Encajar los frameworks El framework Foundation Explorar otros frameworks Utilizar frameworks en sus proyectos Añadir frameworks Incluir los encabezados Considerar la recogida de basura Resumen 12. Utilizar cadenas Sintaxis de las cadenas Utilizar cadenas con formato Trabajar con otros métodos NSString Utilizar categorías NSString Resumen 13. Trabajar con colecciones Trabajar con arrays Utilizar diccionarios Trabajar con conjuntos Mutabilidad Gestión de la memoria en colecciones Colecciones especiales Enumerar Enviar mensajes a elementos Ordenar y filtrar Utilizar bloques en colecciones Resumen 14. Utilizar NSValue, NSNumber y NSData Utilizar NSValue y NSNumber Envolver tipos de datos con NSValue Envolver números con NSNumber Operaciones aritméticas con NSDecimalNumber Utilizar NSData y NSMutableData Crear objetos NSData Acceder a los datos en bruto de un objeto NSData Resumen 15. Trabajar con tiempos y fechas Trabajar con fechas Crear fechas Trabajar con intervalos de tiempo Comparar fechas Utilizar