#QCM iOS LinkValue
Choisissez la ou les bonnes réponses dans les questions suivantes. Cet exercice est composé de 40 questions. La difficulté évoluera au fur et a mesure des questions. Vous aurez approximativement 40 min pour terminer cette épreuve.
NSInteger var1 = 2;
NSInteger var2 = 3;
var2 += 2;
var1 += var2++;
- var1 = 7, var2 = 6 // OK
- var1 = 8, var2 = 6
- var1 = 7, var2 = 5
- var1 = 8, var2 = 5
- Ce code ne compile pas
- (void)func {
char *ptr = malloc(sizeof(char*));
}
- Oui, le pointeur ptr est libéré à la fin de la fonction.
- Non, il faut libéré la mémoire manuellement. // OK
- NSLog(@"%@", VALUE);
- NSLog(@"%d", VALUE);
- NSLog(@"%.2d", VALUE);
- NSLog(@"%f", VALUE);
- NSLog(@"%.2f", VALUE); // OK
- short
- int
- unsigned int
- long // OK
- unsigned long int
- (void)main {
NSInteger val = 3;
const NSInteger res = 3;
res += val;
NSLog("res = %d", res)
}
- 3
- 6
- 0
- Ce code ne compile pas // OK
typedef enum {
TestEnumA = 3,
TestEnumB,
TestEnumC,
TestEnumD
} testEnum;
- Non, la syntax de cet enum est incorrect
- Non, on ne peux pas assigner de valeur à un enum il commence forcément par 0
- Oui, cet enum est correcte // OK
NSInteger varA = 3;
NSInteger varB = 5;
NSInteger varC = (varB > varA) ? varA : varB;
- 0
- 2
- 5
- 3 // OK
- Ce code ne compile pas
- (void)addVal:(NSInteger)val {
static NSInteger res = 3;
res += val;
NSLog("res = %d", res)
}
- (void)viewDidLoad {
[self addVal:3];
[self addVal:5];
}
- 3
- 6
- 11 // OK
- 12
- Ce code ne compile pas
NSString *str = [NSString new]; str = "Hello World";
NSString *str = [NSString new]; str = @"Hello World";
NSString *str = [[NSString alloc] init]; str = @"Hello World";
NSString *str = [[NSString alloc] initWithFormat:@"Hello World"];
// OKNSString *str = @"Hello World";
// OK
- MySQL
- Oracle
- SQLite // OK
- PostgreSQL
- Build l'application
- Build et exécute l'application // OK
- clean puis build l'application
- clean puis build et enfin exécute l'application
- info.xml
- info.plist // OK
- info.xib
- plist.xml
- Une row // OK
- Un path
- Un index
- Un integer
- readonly // OK
- readwrite // OK
- writeonly
- executeonly
- readwriteexecute
- Optimiser les performances d'accès à la propriété
- Rendre la propriété Thread safe // OK
- Rendre la propriété readwrite
- NSUrlRequest // OK
- NSUrlOperation
- NSSession
- NSUrlSession // OK
- NSRequest
###III) 1 an d'exp (junior), cas courants monde pro
- NSManagedObjectContext // OK
- NSManagedObject // OK
- NSCoreData
- NSCoreContext
- Le garbage collector de l’objectiveC
- Une fonctionnalité du compilateur // OK
- Automatic Reference Counting // OK
- Atomic Retain Core
- Une interface en java // OK
- Un design pattern
- La même chose qu’une norme de codage
- Une liste de méthodes et de propriétés
- Un message d’erreur apparait dans la console
- L’application crash
- Il y a un warning à la compilation
- Rien // OK
- UIDependencyManager
- Cocoapods // OK
- Carthage // OK
- Reveal
numberOfSectionsInTableView:
tableView:heightForRowAtIndexPath:
// OKtableView:numberOfRowsInSection:
tableView:cellForRowAtIndexPath:
// OK
[array appendObject:object];
[array addObject:object];
[array insertObject:object];
array = [array arrayByAddingObject:object]
// OK
- NSInteger // OK
- CGFLoat
- NSTimestamp
- NSDate
###IV) 3 ans d'exp (confirmé), cas avancés, sources de bugs etc...
- La KVO // OK
- Le MVC // OK
- Le MVVM // OK
- Le KVA
- Le KVC // OK
- La délégation // OK
- Les notifications // OK
- Les singletons // OK
26) Avec quelle(s) classe(s) peut on temporairement désactiver les actions d’un layer en CoreAnimation ?
- UITransaction
- NSTransaction
- CATransaction // OK
- IOTransaction
-weardMethod:(NSString*)str;
- void
- id // OK
- NSString*
- Ce prototype n’est pas valide
- Insérer du texte dans un endroit précis d’un fichier
- Tester un morceau de code unitairement
- Tester qu'une expression renvoie bien "false" ou affiche un message d'erreur // OK
- La même chose que XCTAssertTrue // OK
- NSObject -> UIResponder -> UIView -> UIControl -> UIButton // OK
- NSObject -> UIView -> UIResponder -> UIControl -> UIButton
- NSObject -> NSResponder -> UIControl -> UIView -> UIButton
- NSObject -> NSResponder -> UIView -> UIControl -> UIButton
- @count
- @unionOfObject
- @explodeObject
- @min
- Un certificat de développement
- Un certificat de distribution // OK
- Une clef privé/clef publique (PEM) // OK
- App File Id (AFI)
- Un provisionning Profile // OK
- La liste des actions se déroulant actuellement dans le main thread
- Une pile d'opérations s'executant les unes a la suite des autres // OK
- Quelque chose de manquant à GCD // OK
- Une pile d'actions a traiter par une vue en background
###V) expert, questions de veille, de parti pris
- Un framework OpenSource // OK
- Un framework inspiré de la programmation fonctionnelle // OK
- Un framework permettant l’injection de dépendance
- API permettant de composer et de transformer des flux de valeurs // OK
- Une alternative à RxSwift // OK
- Une manière d'optimiser son code afin de rentre l'experience utilisateur plus fluide
- Un outil disponible dans Instruments
- Un framework OpenSource // OK
- Un framework inspiré de la programmation fonctionnelle
- Un framework permettant l’injection de dépendance // OK
- Un outil d’analyse des données de l’application
- Une base de donnée // OK
- Un outil de test “temps réel”
- Un outils de gestion de tests fonctionnels
- Un site mettant à disponibilité de très bonnes conférences // OK
- Un remplacement du MVC // OK
- Une maniére de penser permettant de soulagé le ViewController // OK
- Une alternative à VIPER // OK
- Le Model Versionning View Model
- Une librairie développée par Facebook // OK
- Une manière d'architecturer ses modeles
- Une solution afin de switcher entre différentes versions des composants de son application // OK
- Un blog très connu de veille informatique
- SpriteKit
- SceneKit // OK
- GameplayKit // OK
- MetalKit // OK
- SwiftOpenGLKit
- ContactsUI // OK
- Model I/O
- ReplayKit // OK
- AsyncDisplayKit // OK
- Bolts // OK
- PureLayout
- ComponentKit // OK
- ReactNative// OK
40) Dans les noms suivants quels sont les développeurs très présents sur la scene des librairies OpenSources/Conférences
- Chris Eidhof // OK
- Mattt Thompson // OK
- Marck Ziwensky
- Ray Wenderlich // OK
- Zach Lumberg
- Ash Furrow // OK