Chapitre 03 - MVC Flashcards

1
Q

Que contient le fichier AndroidManifest.xml?

A

La description des composantes et les paramètres de l’application

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
2
Q

Que contient le fichier build.gradle?

A

Les propriétés de l’application et ses dépendances.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
3
Q

Qu’est-ce que Proguard?

A

Un outil qui permet d’optimiser, protéger et réduire en taille une application.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
4
Q

Comment est-ce que Proguard fonctionne?

A

Il retire les classes non utilisées, il optimise le bytecode, retire les instructions inutiles, il renomme les classes pour des noms cours sans valeur et retire toute trace de log lors d’une compilation en release.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
5
Q

Qu’est-ce que Gradle?

A

Programme qui automise le processus de compilation et de gestion de dépendance.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
6
Q

Qu’est-ce que MVC?

A

Model View Controller

Model: Modèle de donnée
View: Vue visible à l’utilisateur
Controller: Logique de contrôle, colle entre données et UI

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
7
Q

Quel est le flow de MVC?

A

Modèle mets à jouse la vue informe des événements le contrôleur qui mets à jour le modèle

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
8
Q

Qu’est-ce que MVP?

A

Model View Presenter

Comme MVC, mais on retire le lien entre la vue et le modèle

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
9
Q

Qu’est-ce que MVVM?

A

Model View ViewModel

Comme MVC

ViewModel: Modèle de la vue. Agit à titre intermédiaire entre le modèle et la vue.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
10
Q

Qu’est-ce que PAC?

A

Prsentation Abstraction Control

Presentation: Formate et présente information
Abstraction: Récupère et traire information
Control: S’occupe de la communication entre Abstraction et Presentation et gère le flux d’information

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
11
Q

Qu’est-ce que HMVC?

A

Hierarchical model-view-controller

Variation de MVC qui ressemble à PAC

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
12
Q

Quelle est la différence entre HMVC et MVC?

A

HMVC utilise les modules de MVC pour une hiérarchie. Le contrôleur sélectionne le modèle et ensuite la vue.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
13
Q

Différence entre MVC et MVP?

A

MVP: Vue couplée de manière indirecte au modèle. Un presenter avec une seule vue

MVC: Contrôleurs basés sur actions et peuvent être partagées à travers les vues. Peut être responsable de déterminer quelle vue sera présentée.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
14
Q

Quelle est le style architecturale de Android?

A

Officiellement pas annoncé, probablement un mix de MVC et MVP.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
15
Q

Quelle est le style architecturale de iOS?

A

MVC

Model: NSObject
Vue: UIView
Contrôleur: UIViewController

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
16
Q

Qu’est-ce que le cycle de vie d’une activité sur Android?

A

onCreate(), onStart(), onResume(), onPause(), onStop(), onRestart(), onDestroy()

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
17
Q

Quelles sont les trois boucles de cycle de vie Android?

A

Boucle de vie, boucle de vie disponible, boucle de vie visible premier plan

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
18
Q

Qu’est-ce que la boucle de vie?

A

Contient les boucles de vie visible et non visible, l’activité est chargée en mémoire à l’intérieur de cette boucle.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
19
Q

Qu’est-ce que la boucle de vie disponible?

A

L’activité est disponible, mais aucune garantie qu’elle est en premier plan.

20
Q

Qu’est-ce que la boucle de vie visible de premier plan?

A

L’activité est au premier plan.

21
Q

Qu’est-ce que onCreate() fait?

A
  • Appelé une seule fois lors de la création de l’activité.
  • Établir liens entre interface et contrôleur (activité)
  • Recois un bundle qui contient de l’information utile
22
Q

Qu’est-ce que onStart() fait?

A

L’activité devient visible

23
Q

Qu’est-ce que onResume() fait?

A

L’activité est au premier plan et devient active

24
Q

Qu’est-ce que onPause() fait?

A

L’activité n’est plus au premier plan et n’est plus active

25
Q

Qu’est-ce que onStop() fait?

A

L’activité n’est plus visible

26
Q

Qu’est-ce que onDestroy() fait?

A

L’activité sera bientôt complètement désallouée

27
Q

De quelles facons sont gérées les activités?

A

Pile de type LIFO (Last in first out)

28
Q

Qu’est-ce qu’un intent?

A

Description d’une opération à effectuer

29
Q

Comment est-ce qu’on démarre une activité?

A
Intent monIntention = new Intent(getApplicationContext(), MonActivite.class);
startActivity(monIntention)
30
Q

Comment mettre des options dans un intent?

A

monIntention.putExtra(“Nom du truc”, “truc lol”);

31
Q

Qu’est-ce que l’objet context dans une application Android?

A

Objet qui contient le contexte d’exécution d’une application/activité.

32
Q

Qu’est-ce que la classe R.* dans Android?

A

Classe qui regroupe toutes les ressources et qui est généré automatiquement par compilateur.

33
Q

Comment est-ce qu’on transfère des classes complexes dans un intent?

A

Via Parcelable ou Serializable

34
Q

Qu’est-ce qu’un delegate sur iOS?

A

Permet de partager de l’information entre des contrôleurs et de respecter le MVC

35
Q

Comment est-ce qu’on implémente un delete en iOS?

A

@protocol

36
Q

Qu’est-ce qu’un service sur Android?

A

Composante d’une application qui nécessite une longue période de temps et qui ne doit pas nécessairement interagir avec l’utilisateur ou qui ne fourtnit pas nécessairement des fonctionnalités à d’autres applications.

37
Q

Quels sont les deux états possibles d’un service sur Android?

A

Démarré (après avoir appelé startService())

Lié (avec avoir appelé bindService())

38
Q

Comment est-ce que tu peux arrêter un service sur Android?

A

stopService() et stopSelf()

39
Q

Quels sont les deux cycles de vie nécessaires pour démarrer un service sur Android?

A

Commencer le service: startService(), onCreate(), onStartCommand() -> Service running
Se lier au service: bindService(), onCreate(), onBind() -> Clients are bound to service

40
Q

Comment est-ce que tu termines complètement l’exécution d’un service?

A

Service: onDestroy()
Bind: onUnbind() -> onDestory()

41
Q

Qu’est-ce qu’un BroadcastReceiver?

A

Une classe qui permet de recevoir des broadcasts

42
Q

Qu’est-ce qu’un Broadcast?

A

Méthode de transmission d’informations interapplication et/ou intra-application.

43
Q

Qu’est-ce qu’un LocalBroadcastManager?

A

Envoie un message qui reste local au processus qui l’envoie.

44
Q

Quels sont les avantages d’un LocalBroadcastManager?

A
  • Les Broadcast restent à l’intérieur de l’application.
  • Impossible pour d’autres applications de nous envoyer un Broadcast
  • Plus rapide/efficace qu’un broadcast normal
45
Q

Coment envoyer un Broadcast?

A

Context.sendBroadcast

46
Q

Comment arrêter un Broadcast pendant l’envoie?

A

Possible avec .sendOrderedBroadcast