React Native Flashcards
Dans quel langage les applications Android sont-elles programmées ?
-C#
-JAVA /KOTLIN
-PHP
-Javascript
Java/kotlin
Globalement les app Native sont ?
- Moins performantes que les applications cross-platform
-La seule manière de faire des applications mobiles
-Plus performantes que les applications cross-platform
-Possèdent un meilleur rapport qualité/prix
Plus performantes que les applications cross-platform
App mobile utilisent?
-code compilé
-code non compilé
code compilé
définition compilateur
Un compilateur prend un langage de programmation donné pour les traduire en langage machine, ou « code », utilisé par le processeur d’un ordinateur.
principe d’une application web Embarquée?
Avantage et défauts ?
une app dans la technologie web avec javascript en utilisant un framework fonctionne qui hors ligne qui embarque sont code dans une app native géré par le framework.
Avantages = Améliore le développement, productivité globales du projet
Défaut = La performance pas au rdv Apple, facebook ont abandonné l’idée ils préfère le cross-platforme ou natif
Définition WebView
Page web lancée dans une application qui affiche des pages
A quoi sert une API?
API facilitent la communication des produits et services en simplifiant le développement des applications, gagne en temps , et en argent
Définition API NATIVE
API NATIVE
API native fait référence aux services internes de Windows NT, ce sont les interfaces privées où sont stockées les fenêtres API.
Lequel de ces frameworks ne permet pas de réaliser des applications web embarquées ?
Ionic
Cordova
PhoneGap
Symfony
Symfony
Quelle technologie est utilisée pour la mise en page d’applications web embarquées ?
HTML / CSS
Objective-C
Kotlin
À laquelle de ces problématiques ne répond pas une application web embarquée ?
Mutualiser le code entre les projets web et mobile
Avoir de bonnes performances
Des outils simplifiés pour la mise en page
Réduire le nombre de compétences nécessaires dans une équipe
Avoir de bonnes performances
Quel est l’équivalent d’une div en React Native ?
Box
View
Container
Une View est l’homologue d’une div en React Native et permet de définir un conteneur.
En termes de date d’apparition, vous diriez que React Native, par rapport aux applications natives et web embarquées, est…
La plus ancienne façon de créer des applications mobiles
La plus récente façon de créer des applications mobiles
Ni l’une, ni l’autre
La plus récente façon de créer des applications mobiles
Laquelle de ces phrases est fausse ?
React Native utilise un thread JavaScript pour faire tourner son code
React Native utilise un moteur de rendu 3D avec un canva pour afficher ses composants
NativeScript est un framework pour créer des applications cross-plaform hybrides
La deuxième réponse est fausse
Définition REACT NATIVE
Affiche le language natif plus simple et performant.
C’est quoi une application hybride ?
dernière évolution du cross-Platform. pour atteindre un compromis entre performance et facilité de développement. Une utilisation proche du web car génère du code proche du natif performant .
Définition Open sources ?
Les logiciels libres sont accessibles au public, développés en collaboration par une communauté, et offrent un bon rapport coût-efficacité, de la souplesse et une durée de vie plus longue. Ils vont au-delà de la création de logiciels et utilisent des modèles de production décentralisés pour résoudre des problèmes communautaires et sectoriels.
comment marche React Native ?
- Le tread Javascript : Le code est exécuté dans un seul fichier App.js par le packager React Native, puis lancé dans un moteur JavaScript au sein d’une application iOS ou Android. Le thread communique avec un thread natif spécialisant les instructions JSON. Cette opération se produit toutes les 16,67 ms, ce qui permet d’obtenir jusqu’à 60 images par seconde. Le fait de ne pas générer les instructions dans ce délai provoque un effet de ralenti, dégradant l’expérience utilisateur.
2.Le pont natif (Bridge)
il reçoit des instructions de la part du thread JavaScript, lui indiquant des changements à opérer sur l’application. De là, il va retranscrire ces informations en instructions qui seront interprétables par le thread natif, afin de pouvoir impacter le cycle de vie et l’affichage de l’application.
3.Les threads natifs
le thread UI (User Interface → Interface Utilisateur) reçoit des instructions pour afficher des composants natifs Android ou iOS, qui ont été pré-mâchés par le pont React Native.
Pourquoi Expo est aussi utile à REACT NATIVE que Symfony pour PHP ?
Expo utilise le principe de l’application sans compiler, en utilisant JavaScript et ne nécessitant l’application pendant la phase de programmation. Il facilite l’accès à la création mobile, et fournit et maintient un ensemble d’APIs systèmes, comme l’accès à la caméra ou le système de fichiers du téléphone.
Site les trois cadre de travail d’EXPO ?
Un mode Managed, qui est le plus facile d’accès, mais n’est pas trop personnalisable en termes de librairies embarquées.
Un mode Bare qui offre plus de souplesse sur les librairies embarquées. Il permet d’installer du code natif qui ne serait pas disponible dans Expo, tel qu’un module de machine learning par exemple, mais s’accompagne de toute la complexité liée à une application React Native classique.
Enfin, un mode Ejected, qui est l’ancienne version du Bare Workflow. Le mode Ejected possède toutes les fonctionnalités progressivement ajoutées au Bare Workflow, destiné à le remplacer.lus supportée à partir du SDK 38 : https://docs.expo.io/expokit/eject/.
On peut commencer en mode Managed, puis migrer vers le Bare ou Ejected à tout moment. L’autre sens n’est par contre pas simple et peut représenter une vraie complexité : à éviter, donc.
A quoi sert un composant ?
Un composant est une brique logicielle qui permet de réutiliser du code pour le factoriser. Ils peuvent s’écrire de différentes manières : avec des classes JavaScript ou avec des fonctions.
combien de façon y-t-il pour écrire un composant ?
Il y en a 2 ; ceux écrire à partir d’une classe et ceux d’une fonction, a retenir que , la syntaxe n’est pas tout à fait équivalente.
* Pour les composants basés sur une fonction, il faut utiliser des hooks, qui sont une nouvelle façon de gérer des états et effets de bords avec React.
Quel genre de relation ont les composant entre eux pour structurer l’application ?
Les composants ont une relation de parent/enfant et forment un grand arbre de composants pour définir la structure d’une application.
Qu’est ce que le jsx?
Le JSX (JavaScript XML) est une syntaxe destinée à simplifier l’imbrication des composants dans une application React. Il est compilé vers une syntaxe JavaScript au moment où on génère le fichier JS final via le packager.
Comment fonctionne un composant ?
Les composants possèdent un cycle de vie qui leur permet de venir déclencher des effets de bord lorsqu’ils sont créés, détruits ou qu’ils reçoivent de nouveaux arguments.
A quoi sert un hook ?
La plupart du temps, on utilisera les hooks pour aller chercher des données distantes ou pour initialiser des gestionnaires d’événements.
Qu’est-ce qu’une prop ?
Les props sont des données transmises entre un parent et un enfant dans React Native, facilitant la transmission d’informations et de fonctionnalités, rendant les composants réutilisables et modulaires, et immuables.
(Pour améliorer la lisibilité et la propreté du code, il est possible d’utiliser la décomposition (destructuring) pour extraire les props directement dans les paramètres de la fonction du composant.)
Qu’est qu’un state ?
Le state est un mécanisme permettant de stocker et de gérer les données internes d’un composant. Contrairement aux props, le state est mutable, ce qui signifie qu’il peut être modifié au cours du cycle de vie d’un composant. Le state est utilisé pour gérer les données qui peuvent changer au fil du temps et pour déclencher des mises à jour lorsque ces données sont modifiées.
Qu’est ce qu’une dépendance autrement dit ‘dependy array”?A quoi sert elle ?
Un tableau de dépendances (ou « dependency array » en anglais) est un paramètre optionnel que l’on peut passer à la fonction useEffect dans un composant React. Ce tableau permet de spécifier les variables dont dépend l’effet déclenché par useEffect. La table de dépendance optimise les performances d’un composant en déclenchant la fonction useEffect lorsqu’une variable change, évitant ainsi les ralentissements.
Quels approchent différentes on les composants fonctionnel et les composants de classes ?
.Dans les composants de classe, le cycle de vie est géré par des méthodes spécifiques, telles que componentDidMount, componentDidUpdate ou componentWillUnmount. Ces méthodes sont appelées automatiquement par React en fonction de l’étape de vie du composant.
En revanche, dans les composants fonctionnels, le cycle de vie est géré par les hooks, tels que useEffect, useLayoutEffect, useReducer, useState. Les hooks permettent aux composants fonctionnels de gérer l’état et les effets secondaires, ainsi que de modifier leur comportement en fonction de leur état et des entrées utilisateur.
Quel différence y-a t-il entre les deux ? Avantages inconvénient?
Les hooks ont une approche de coding et de maintenance de React, qui permet de separer la logique d’état et de cycle de vie en deux parties distinctes, rendre le code plus lisible et modulaire. Les hooks permettent de réutiliser la logique d’état et de cycle de vie entre les différents composants,ainsi que la possibilité création de personnalisées et bibliothèques de composants réutilisables. les hooks sont une alternative plus simple et efficace pour gérer le cycle de vie des composants en React.
comment se transmettent les données entre parent et enfants
Pour transmettre des données d’un composant parent à un composant enfant, nous utilisons des props. Les props permettent de passer des valeurs et des fonctionnalités d’un composant à un autre, créant ainsi une communication unidirectionnelle des données. nous utilisons généralement des fonctions de rappel (callbacks).
définition fonction callbacks ?
Les fonctions de rappel sont des fonctions qui sont passées en tant que props à un composant enfant. Ces fonctions permettent au composant enfant d’interagir avec le composant parent en appelant la fonction de rappel.
Quel est le meilleur combo pour développer une app ?
YogaLayout de Facebook pour pour les flexbox et STYLESHEET une API pour mimer css. Et s’assurer que l’on écrit du style correct et qui, si l’IDE le permet, ajoute de l’auto-complétion, ce qui est très pratique. Utiliser du style avec les composants React Native est très simple et s’inspire grandement de la très populaire syntaxe CSS.
Enfin, on peut faire varier les styles dynamiquement en fonction de variables comme le state ou les props, ce qui nous permettra de gérer des animations.
(Rappel) C’est quoi une API?
Une API (application programming interface ou « interface de programmation d’application ») est une interface logicielle qui permet de « connecter » un logiciel ou un service à un autre logiciel ou service afin d’échanger des données et des fonctionnalités.
Pourquoi a-t-on besoin de faire varier du code entre les plateformes
Malgré la plus grande tentative d’abstraction entre les plateformes, il existe encore quelques cas où le développeur doit procéder à des différences entre les plateformes.
C’est le cas de composants natifs ou encore de la gestion des ombres dans React Native, mais cela peut aller plus loin, comme des différences fondamentales d’architecture sur des fonctionnalités telles que les notifications push.