Detalle del libro
Ver Índice
Agradecimientos
Sobre el autor
Sobre los revisores técnicos
1. Introducción
Objetivos del libro
Cómo está organizado este libro
Convenciones
Código fuente
Sobre este libro
Parte I. El lenguaje Objective-C
2. Programar en Objective-C
Compilar y ejecutar programas
Usar Xcode
Usar Terminal
Explicación del primer programa
Mostrar los valores de variables
Resumen
Ejercicios
3. Clases, objetos y métodos
Qué es un objeto
Instancias y métodos
Una clase de Objective-C para trabajar con fracciones
La sección @interface
Elegir nombres
Métodos de clase y de instancia
Valores devueltos
Argumentos de métodos
La sección @implementation
La sección program
Acceder a variables de instancia y encapsulación de datos
Resumen
Ejercicios
4. Tipos de datos y expresiones
Tipos de datos y constantes
El tipo int
El tipo float
El tipo char
Calificadores: long, long long, short, unsigned y signed
El tipo id
Expresiones aritméticas
Precedencia de operadores
Aritmética de enteros y el operador unario menos
El operador de módulo
conversiones de enteros y valores de coma flotante
El operador de conversión de tipos
Operadores de asignación
La clase Calculator
Ejercicios
5. Bucles de programación
La instrucción for
Entradas de teclado
Bucles for anidados
Variantes de bucles for
La instrucción while
La instrucción do
La instrucción break
La instrucción continue
Resumen
Ejercicios
6. Adoptar decisiones
La instrucción if
La construcción if-else
Pruebas relacionales compuestas
Instrucciones if anidadas
La construcción else if
La instrucción switch
Variables Booleanas
El operador condicional
Ejercicios
7. Clases
Separar archivos de interfaz e implementación
Métodos de acceso sintetizados
Acceder a propiedades con el operador de punto
Varios argumentos para métodos
Métodos sin nombres de argumento
Operaciones con fracciones
Variables locales
Argumentos de métodos
La palabra clave static
La palabra clave self
Asignar y devolver objetos de métodos
Ampliar definiciones de clases y el archivo de interfaz
Ejercicios
8. Herencia
todo comienza en la raíz
Encontrar el método adecuado
Ampliar a través de herencia: añadir nuevos métodos
Una clase de punto y asignación de objetos
La directiva @class
Clases con objetos propios
Reemplazar métodos
¿Qué método se selecciona?
Clases abstractas
Ejercicios
9. Polimorfismo, tipos dinámicos y vinculación dinámica
Polimorfismo: mismo nombre, diferente clase
Vinculación dinámica y el tipo id
Comprobar en tiempo de compilación frente a tiempo de ejecución
El tipo de datos id y los tipos estáticos
Argumentos y tipos devueltos con tipos dinámicos
Realizar preguntas sobre clases
Controlar excepciones con @try
Ejercicios
10. Más sobre variables y tipos de datos
Inicializar objetos
Ámbito
Directivas para controlar el ámbito de variables de instancia
Más sobre propiedades, métodos de acceso sintetizados y variables de instancia
Variables globales
Variables estáticas
Tipos de datos enumerados
La instrucción typedef
Conversiones de tipos de datos
Reglas de conversión
Operadores de bits
El operador AND de orden de bits
El operador OR inclusivo de orden de bits
El operador OR exclusivo de orden de bits
El operador de complemento a uno
El operador de desplazamiento a la izquierda
El operador de desplazamiento a la derecha
Ejercicios
11. Categorías y protocolos
Categorías
Extensiones de clases
Notas sobre categorías
Protocolos y delegación
Delegación
Protocolos informales
Objetos compuestos
Ejercicios
12. El preprocesador
instrucción #define
Tipos avanzados de definiciones
La instrucción #import
Compilación condicional
Las instrucciones #ifdef, #endif, #else e #ifndef
Las instrucciones #if y #elif
La instrucción #undef
Ejercicios
13. Características subyacentes del lenguaje C
Matrices
Inicializar elementos de matriz
Matrices de caracteres
Matrices multidimensionales
Funciones
Argumentos y variables locales
Devolver resultados de funciones
Declarar tipos devueltos y tipos de argumentos
Funciones, métodos y matrices
Bloques
Estructuras
Inicializar estructuras
Estructuras dentro de estructuras
Detalles adicionales sobre estructuras
No olvidar la programación orientada a objetos
Punteros
Punteros y estructuras
Punteros, métodos y funciones
Punteros y matrices
¿Matriz o puntero?
Punteros a cadenas de caracteres
Cadenas de caracteres constantes y punteros
Revisión de los operadores de incremento y decremento
Operaciones con punteros
Punteros a funciones
Punteros y direcciones de memoria
No son objetos
Otras características del lenguaje
Literales compuestos
La instrucción goto
La instrucción null
El operador de coma
El operador sizeof
Argumentos de línea de comandos
Cómo funciona todo
1. Las variables de instancia se almacenan en estructuras
2. Una variable de objeto es un puntero
3. Los métodos son funciones y las expresiones de mensaje son invocaciones de métodos
4. El tipo id es un tipo de puntero genérico
Ejercicios
Parte II. La estructura Foundation
14. Introducción a la estructura Foundation
Documentación de Foundation
15. Números, cadenas y colecciones
Objetos de número
Objetos de cadena
Más información sobre la función NSLog
El método description
Objetos mutables frente a objetos inmutables
Cadenas mutables
Objetos de matriz
Crear una agenda
Crear una tarjeta de visita
Métodos sintetizados de AddressCard
La clase AddressBook
Enumeración rápida
Buscar un contacto en la agenda
Eliminar un contacto de la agenda
Ordenar matrices
Ordenar con bloques
La clase NSValue
Objetos de diccionario
Enumerar un diccionario
Objetos de conjunto
NSIndexSet
Ejercicios
16. Trabajar con archivos
Administrar archivos y directorios: NSFileManager
Trabajar con la clase NSData
Trabajar con directorios
Enumerar los contenidos de un directorio
Trabajar con rutas: NSPathUtilities.h
Métodos para trabajar con rutas
Copiar archivos y usar la clas
Objective-C es un lenguaje de programación orientado a objetos disponible en la mayoría de los sistemas operativos del mercado (Linux, Unix, Windows o Mac OS X). Se utiliza además para desarrollar aplicaciones para el sistema operativo Mac OS X y la plataforma iOS, utilizada por los dispositivos iPhone, iPad y iPod.
Este libro es un conciso y cuidadoso tutorial que cubre los fundamentos del lenguaje sin necesidad de tener conocimientos previos de C. A través de sus múltiples ejemplos y ejercicios aprenderá a manejar con soltura la herramienta de desarrollo de Apple XCode 4; además, irá adquiriendo paso a paso los rudimentos de la programación orientada a objetos, las características del lenguaje Objective-C y las técnicas de programación más utilizadas actualmente.
La edición actual incluye las últimas novedades aportadas al lenguaje, como el uso de Objective-C 2.0, nuevas herramientas y funcionalidades, y todas las claves necesarias para hacer aplicaciones para los dispositivos móviles de Apple: iPhone, iPad y iPod Touch.