1 / 18

Curso de Iniciación a la Programación del iPhone SDK con Objective-C

Curso de Iniciación a la Programación del iPhone SDK con Objective-C. Foundation Framework. Moncada, 9 de Julio de 2010. Objective-C. Características especiales Tipo general 'id' → id variable; // NO id *variable Objeto puntero null -> nil Puedes mandarle un mensaje a nil variable = nil;

Download Presentation

Curso de Iniciación a la Programación del iPhone SDK con Objective-C

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Curso de Iniciación a la Programación del iPhone SDK con Objective-C Foundation Framework Moncada, 9 de Julio de 2010

  2. Objective-C Características especiales Tipo general 'id' → id variable; // NO id *variable Objeto puntero null -> nil Puedes mandarle un mensaje a nil variable = nil; [variable metodoObjeto] //no falla en runtime Tipo booleano BOOL (valores YES o NO) Selectores → punteros a función SEL accion = [boton accion] SEL sel = @selector(setName:age:)

  3. Foundation Framework Conjunto de clases básicas (cadenas, números, arrays) Clases para preferencias, hilos, ficheros... Entrada/salida, tuberías

  4. Foundation Framework NSObject Clase raíz Implementa comportamiento básico Gestión de la memoria Introspección (qué clase es, descripción de clases) Igualdad entre objetos

  5. Foundation Framework NSString Clase que representa cadenas Usada en lugar de char* La clase más usada Soporta Unicode (sistema de codificación que soporta todas las palabras del mundo)

  6. NSString Cadenas constantes NSString *string = @”Cadena constante”; NSString *string = [[NSString alloc] initWithString:@”Cadena constante”]; NSString *string = [NSString stringWithString:@”Cadena constante”]; Cadenas formateadas NSString *string = [NSString stringWithFormat:@”Hola %s”, [person name]];

  7. NSString Operaciones comunes Añadir una cadena a otra NSString *cadena1 = @”Hola”; NSString *cadena2; cadena2 = [cadena1 stringByAppendingString:@” mundo”]; Obtener valor numérico -> [cadena intValue]; Mirar prefijos → [cadena1 hasPreffix:@”Ho”]; Igualdad → [cadena1 isEqualToString:cadena2];

  8. NSMutableString Subclase de NSString Permite modificar cadenas Ejemplo: NSMutableString *mString = [NSMutableString string]; [mString appendString:@”Hola ”]; [mString appendFormat:@” %s”,[person name]];

  9. Colecciones Array (NSArray)– colección ordenada de objetos Diccionario (NSDictionary) – colección de pares clave-valor Set (NSSet) – colección de objetos únicos; Hay versión mutable e inmutable de cada tipo.

  10. NSArray Métodos importantes arrayWithObjects:(id)firstObject,...,nil (unsigned)Count //Número de objetos (id)objectAtIndex:(NSInteger)index (unsigned)indexOfObject:(id)object Ejemplos NSArray *array = [NSArray arrayWithObject:@”Lunes”,@”Viernes”,nil]; NSLog(“Index of Lunes %d”,[array indexOfObject:@”Lunes”]);// 0 NSLog(“Object at index 1: %@”,[array objecyAtIndex:1]); // Martes NSLog(“Número de días: %d”,[array count]);

  11. NSMutableArray Métodos importantes: + (NSMutableArray *)array; - (void)addObject:(id)object; - (void)removeObject:(id)object; - (void)removeAllObjects; - (void)insertObject:(id)object atIndex:(unsigned)index; NSMutableArray *array = [NSMutableArray array]; [array addObject:@”Lunes”]; [array addObject:@”Viernes”]; [array removeObjectAtIndex:1];

  12. NSDictionary Métodos comunes dictionaryWithObjectsAndKeys:(id)firstObject count objectForkey Ejemplo NSDictionary *dic = [NSDictionary dictionaryWithObjectsAndKeys: @”Lunes”, @”Dia1”,@”Martes”,@”Dia2”,nil]; NSLog(@”Dia 2 es %@”,[dic objectForKey:@”Dia2”]); //Martes

  13. NSMutableDictionary Métodos +(NSMutableDictionary *)dictionary; (void)setObject:(id)object forKey:(id)key; (void)removeObjectForKey:(id)key; (void)removeAllObjects; NSMutableDictionary *dic = [NSMutableDictionary dictionary]; [dic setObject:@”Valor” forKey:@”Clave1”]; [dic setObject:@”Valor2” forKey:@”Clave2”]; [dic removeObjectForKey:@”Clave1”];

  14. NSSet y NSMutableSet Métodos NSSet +setWithObjects:(id)firstObject,...,nil (unsigned)count; (BOOL)containsObject:(id)object; Métodos NSMutableSet +(NSMutableSet*)set; (void)addObject:(id)object; (void)removeObject:(id)object; (void)minusSet:(NSSet *)otherSet; (void)intersectSet(NSSet *)otherSet;

  15. NSNumber Normalmente se usa los tipos de números estándar de C Convertir un número en un objeto → NSNumber Subclase de NSValue No tiene versión mutable Métodos comunes +(NSNumber *)numberWithInt.(int)value; +(NSNumber *)numberWithDouble:(double)value; (int)intValue; (double)doubleValue;

  16. NSLog La clase más usada al depurar un programa Muestra una cadena por consola Acepta cadenas con formato Ejemplo: NSLog(@“Imprime contador %d”,[array count]); NSLog(@”Fin función”);

  17. Recorrer colecciones // Manera 'clásica' Person *person; int count = [array count]; for (i = 0; i < count; i++) { person = [array objectAtIndex:i]; NSLog([person description]); } // Manera 'moderna' for (Person *person in array) { NSLog([person description]); }

  18. Bibliografía Curso Stanford 2010 (iTunes U)

More Related