Está en la página 1de 4

Test de xCode, Objective-C y Swift

1. ¿Qué es la programación orientada a objetos? ​Bien

2. ¿Que es polimorfismo?​ ​Mal

2. ¿Que son los DESIGN PATTERNS? ¿Cuales reconoces en Cocoa?


MVC, Singleton, Notification Pattern, Factory Patterns, bien​ Bien

3 (ios). ¿Qué es un protocol? ​Bien.

Un protocolo es un contrato en donde se declara un conjunto de métodos, que el


objeto que suscribe a dicho protocolo debe implementar, para que se considere que el objeto
cumple con dicho protocolo.

4. (ios) ¿Qué es un DELEGATE? ​ Bien​.

El delegate es un mecanismo por el que un objecto le delega responsabilidad a otro


objecto. Por ejemplo, en el caso de un UITextField se puede delegar el manejo de los enters
a otro objecto que no sea la clase UITextField, sino un objecto definido por el usuario.
A Delegate is an object that’s given an opportunity to react to changes in another
object or influence the behavior of another object.

5. (ios) ¿Cómo funciona el manejo de memoria en iOS? ¿Qué es ARC? ¿Para que sirve?
Bien.

6. Resuelva el siguiente código para que no pierda memoria:


-(Calculo*) calcular:(int) n{
Calculo *miCalculo = [[Calculo alloc] init] autorelease]
return miCalculo;
}
-(void) unaFuncion{
Calculo *miCalc = [self calcular:n];
self.calculo = miCalc;
}

7. ¿Qué es una variable del tipo ​id​? bien. bien.


El tipo de variable id es un variable de tipo genérico. Se usa frecuentemente cuando
se define un delegate, ya que la clase que extiende el delegate, puede no llegar a conocer el
tipo del objecto que la implementará (en tiempo de compilación).
7.x Explique que hay de malo en el siguiente código

@synthesize variable;

-(void) setEnrolledFactors:(NSString*)v{
self.variable = v;
}
Mal.
// ¿Qué hay de malo en esto?

7.1 ¿Qué es una View? -


7.2. Describa como funciona un UITableView bien. ​Bien

8. ¿Que diferencias encontrás entre Objective-C++ y Objective-C? ​ok (no sabe)


Hay varias diferencias entre Objective-C y C++ , entre ellas podemos destacar que
el primero es un lenguaje reflexivo, esto permite preguntarle a un objeto si responde a un
mensaje determinado. Esto tiene que ver con una diferencia mas profunda que, tiene que ver
con que Objective-C es un lenguaje de tipado dinámico, mientras que C++ es un lenguaje de
tipado estático. Esto significa que se chequean los que conincidan los tipos en tiempo de
ejecución (en C++ un caso así no compilaría directamente).
8.1 Indique con un círculola opción correcta que corresponde al valor que devolverá el
siguiente método (asuma que esto es código de ObjectiveC++).

-(BOOL) foo​{
int test;

for(int i=0;i<100;i++){
test = test + 1;
}

return (test==100);
}

A. TRUE
B. FALSE

9. ¿Qué métodos de persistencia de datos conocés? Nombrar dos. ​maso.


● UserDefaults (sistema que viene por defecto en iOS para guardar variables y datos
pequeños)
● El método de persistencia de datos más común en iOS es CoreData. Este método
permite simplificar mucho el proceso de guardar datos de un objecto en el disco, ya
que si un objeto hereda de NSNumber o NSString ya existen método que serializan
los datos.
● SQLite es una herramienta que permite crear, mantener y consular base de datos del
tipo SQL.

10. Manejo de Strings


10.1 Como se castea un int a un NSString. ​bien
NSString *testString = [NSString stringWithFormat:@”%d”,theInt];
10.2 Como se concatenan 2 string.​ mal
NSString *newString = [NSString stringWithFormat:@”@%@%”,string1,srting2]
10.3

11. ¿Qué es el formato Json? ¿Cómo funciona?


12. ¿Qué es un WebService?

13. ¿Que problema hay con el siguiente código de swift?

self.networkService.callApi(id, name, complete:{ (result) in


if result.success {
school = result.school
}else {
showError(“Could not complete request”)
}
}

También podría gustarte