Facebook ne compte pas revenir au HTML5
Et va utiliser son framework React Native pour le développement de ses futures applications mobiles

Le , par Olivier Famien

29PARTAGES

5  0 
Cette semaine, Facebook a accordé une interview à plusieurs journalistes dans la capitale anglaise. Devant les représentants d’organes de presse, David Mortenson, le directeur de l’infrastructure de développeur du réseau social a annoncé la fin du développement des applications mobiles avec HTML5 et JavaScript.

Dorénavant, le réseau social se consacrera au développement d’applications mobiles avec son framework JavaScript React Native. Aussi, vu le soutien apporté par les entreprises et Facebook y compris après la sortie d’HTML5, c’est un revirement de situation auquel on ne s’y attendait pas.

Il faut rappeler que React Native avait été présenté en 2013 et a été rendu open source à la conférence F8 2015 qui avait également servi d’appui pour présenter ComponentKit, le framework dérivé de React Native qui a été porté sur iOS. L’objectif de Facebook en implémentant ce framework est de simplifier la création d’applications natives mobiles tout en donnant aux développeurs les moyens de concevoir assez rapidement leurs produits.

Mortenson a encore rappelé ces avantages pendant l’interview en soulignant que React Native favorise une itération des développements mobiles « très, très » rapidement et permet également d’être productif. Le projet ayant gagné en maturité, Facebook se tourne entièrement vers son framework pour le développement d’applications natives sur les mobiles.

Il faut souligner que la firme tient particulièrement à ce projet en raison des limites rencontrées dans le développement des applications mobiles natives. En effet, en jetant un coup d’œil sur le développement des applications web, on constate que les projets les plus vastes s’achèvent rapidement, souligne Facebook.

Cette même célérité ne se voit pas lorsqu’il s’agit des projets mobiles. Aussi la firme a mis en œuvre ce framework afin de répondre à ce besoin de gagner en temps pour les projets mobiles. Facebook ajoute également ceci, « la raison pour laquelle nous concevons des applications natives sur ces plateformes propriétaires est que dès maintenant, nous pouvons créer de meilleures expériences qui sont plus compatibles avec le reste de la plateforme que ne nous pouvons sur le web ».

Pour concevoir ces applications natives, vous pouvez utiliser React Native avec JavaScript ou React qui est une bibliothèque JavaScript mise en œuvre par Facebook pour concevoir des interfaces utilisateurs.

Toutefois, il est bon de savoir que React Native ne s’inscrit pas dans la maxime « code once, deploy everywhere », mais plutôt « learn once, write anywhere ». Pour les francophiles, il faut simplement comprendre que React Native ne permet pas de concevoir un seul projet pour le déployer sur toutes les plateformes, mais permet d’apprendre les caractéristiques du framework afin de pouvoir coder facilement un même projet sur plusieurs plateformes en utilisant ce framework.

La firme affirme par ailleurs que plusieurs applications ont déjà été développées avec ce framework parmi lesquelles on peut citer Facebook Groups qui est une application hybride et Facebook Ads Manager qui est une application entièrement conçue avec Rect Native.

Source : The Register, Facebook, GitHub React Native, React

Et vous ?

Que pensez-vous de React Native ?

Est-ce un framework de trop ? Ou pensez-vous qu’il aura réellement du succès ?

Une erreur dans cette actualité ? Signalez-le nous !

Avatar de SylvainPV
Rédacteur/Modérateur https://www.developpez.com
Le 15/06/2015 à 14:29
Pour rappel, Sencha avait déjà envoyé gentiment balader les arguments de Facebook sur HTML5 : http://www.developpez.com/actu/50604...de-la-societe/

Rien de surprenant à ce que Facebook défende sa solution maison (même si React est web à la base, ils n'ont jamais été dans l'optique HTML5). Du côté de Google, on vend du Polymer et ça marche aussi très bien (essayez https://polymer-topeka.appspot.com/ sur vos mobiles).

Le web et le natif ne sont pas des technos concurrentes, ce sont des approches différentes:

Application native:
Application conçue spécifiquement pour une plate-forme avec le SDK propre à celle-ci.
Exclusivité, spécificité, performance, centré sur l’appareil

Web app mobile:
Site web optimisé pour un usage mobile
Universalité, pérennité, adaptabilité, centré sur le contenu

Vouloir faire du natif multi-plateforme c'est un non-sens. Ceux désirant une vraie expérience "native" suivront les guidelines du constructeur, au lieu d'empiler des couches d'abstraction et de chercher des compromis entre toutes les plates-formes supportées.

http://rexstjohn.com/is-react-native...orm-snake-oil/
7  0 
Avatar de Paul TOTH
Expert éminent sénior https://www.developpez.com
Le 12/06/2015 à 22:31
ils abandonnent HTML5 ? très bien, il ne reste plus qu'à abandonner JavaScript et ils pourront enfin faire du développement sérieusement
5  5 
Avatar de Paul TOTH
Expert éminent sénior https://www.developpez.com
Le 15/06/2015 à 15:09
Citation Envoyé par SylvainPV Voir le message
Pour rappel, Sencha avait déjà envoyé gentiment balader les arguments de Facebook sur HTML5 : http://www.developpez.com/actu/50604...de-la-societe/

Rien de surprenant à ce que Facebook défende sa solution maison (même si React est web à la base, ils n'ont jamais été dans l'optique HTML5). Du côté de Google, on vend du Polymer et ça marche aussi très bien (essayez https://polymer-topeka.appspot.com/ sur vos mobiles).

Le web et le natif ne sont pas des technos concurrentes, ce sont des approches différentes:

Application native:
Application conçue spécifiquement pour une plate-forme avec le SDK propre à celle-ci.
Exclusivité, spécificité, performance, centré sur l’appareil

Web app mobile:
Site web optimisé pour un usage mobile
Universalité, pérennité, adaptabilité, centré sur le contenu

Vouloir faire du natif multi-plateforme c'est un non-sens. Ceux désirant une vraie expérience "native" suivront les guidelines du constructeur, au lieu d'empiler des couches d'abstraction et de chercher des compromis entre toutes les plates-formes supportées.

http://rexstjohn.com/is-react-native...orm-snake-oil/
il y a tout de même un problème dans ta définition d'application native, tout comme sous Windows tu n'est pas obligé d'utiliser les outils Microsoft pour développer en natif, tu n'est pas contraint d'utiliser XCode ou AndroidStudio pour développer "natif" sur iOS ou Android. et rien ne t'oblige a être centré sur un appareil, d'ailleurs entre un smartphone une phablette une "watch", il n'y a pas grand chose à voir.

Je ne suis pas non plus d'accord avec ta définition de l'app mobile, la pérennité n'est certainement pas une caractéristique du HTML ou des feuilles de styles dont les normes évoluent avec de méchantes cassures avec le passé.

Après, que Facebook développe comme des manches, ça c'est tout à fait possible.
4  1 
Avatar de crodilus
Membre régulier https://www.developpez.com
Le 15/06/2015 à 12:18
Citation Envoyé par Paul TOTH Voir le message
ils abandonnent HTML5 ? très bien, il ne reste plus qu'à abandonner JavaScript et ils pourront enfin faire du développement sérieusement
Abandonner HTML5 et JavaScript ? ! Qu'ils abandonnent le web alors ? Non ? !
3  3 
Avatar de SylvainPV
Rédacteur/Modérateur https://www.developpez.com
Le 15/06/2015 à 15:59
Citation Envoyé par Paul TOTH Voir le message
il y a tout de même un problème dans ta définition d'application native, tout comme sous Windows tu n'est pas obligé d'utiliser les outils Microsoft pour développer en natif, tu n'est pas contraint d'utiliser XCode ou AndroidStudio pour développer "natif" sur iOS ou Android. et rien ne t'oblige a être centré sur un appareil, d'ailleurs entre un smartphone une phablette une "watch", il n'y a pas grand chose à voir.
Ce ne sont pas les mêmes environnements de développement mais on passe toujours par le SDK et les API du constructeur. Et je suis bien d'accord qu'une montre n'a rien à voir avec un smartphone et une phablette, c'est pourquoi ça n'a pas de sens de vouloir faire une application native qui cible ces 3 classes d'appareils en même temps.

Citation Envoyé par Paul TOTH Voir le message
Je ne suis pas non plus d'accord avec ta définition de l'app mobile, la pérennité n'est certainement pas une caractéristique du HTML ou des feuilles de styles dont les normes évoluent avec de méchantes cassures avec le passé.
Pardon ??? Depuis quand le web n'est plus rétrocompatible ? Les sites faits il y a 20 ans tournent toujours sur ton navigateur que je sache. Il n'y a pas de cassure entre les normes web, la rétrocompatibilité est une contrainte inhérente au web. On ne peut pas se permettre de casser les millions de sites existants.
3  0 
Avatar de Paul TOTH
Expert éminent sénior https://www.developpez.com
Le 15/06/2015 à 13:19
Citation Envoyé par crodilus Voir le message
Abandonner HTML5 et JavaScript ? ! Qu'ils abandonnent le web alors ? Non ? !
je suis certain que Facebook adorerait pouvoir remplacer les navigateurs, mais là question ici n'est pas sur l'accès Web à FaceBook, mais de l'accès Mobile.

Si HTML5 permet de créer des sites accessibles aussi bien sur PC que sur Mobile, on trouve de plus en plus d'applications "natives" sur mobile. Elles s'intègrent bien plus naturellement sur le mobile que n'importe quelle application Web.

Ensuite HTML5 est utilisé de façon embarquée pour développer une seule fois l'application pour Android ou iOS avec un bootstrap spécifique à la plateforme. Là FaceBook laisse tomber HTML5/DOM pour le remplacer par une API native afin de manipuler iOS depuis Javascript comme le montre cet exemple:

Code : Sélectionner tout
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
var React = require('react-native');
var { TabBarIOS, NavigatorIOS } = React;

var App = React.createClass({
  render: function() {
    return (
      <TabBarIOS>
        <TabBarIOS.Item title="React Native" selected={true}>
          <NavigatorIOS initialRoute={{ title: 'React Native' }} />
        </TabBarIOS.Item>
      </TabBarIOS>
    );
  },
});
La seule chose que je n'ai pas compris c'est que d'après ce que je vois React Native c'est uniquement pour iOS...quid de l'appli Facebook pour Android ?
2  1 
Avatar de micka132
Membre expert https://www.developpez.com
Le 16/06/2015 à 9:52
Citation Envoyé par SylvainPV Voir le message
Pardon ??? Depuis quand le web n'est plus rétrocompatible ? Les sites faits il y a 20 ans tournent toujours sur ton navigateur que je sache. Il n'y a pas de cassure entre les normes web, la rétrocompatibilité est une contrainte inhérente au web. On ne peut pas se permettre de casser les millions de sites existants.
C'est pour ca que les intégrateurs web s'arrachent les cheveux à chaque test sous un autre navigateur? (Ce qui est certes de moins en moins vrai)
Apres si tu parles de site avec du texte brute comme un affichage sur un bloc note, alors oui il y a rétrocompatibilité, sinon tu dois vivre sur une autre planète.
1  0 
Avatar de crodilus
Membre régulier https://www.developpez.com
Le 15/06/2015 à 15:30
Tant qu'il n'y aura pas une homogénéité qui sera faite au niveau des terminaux portatifs (tablettes,smarthphone,iphone,...) on aura droit à tout et n'importe quoi, et à un beau paquet de "caca". C'est comparable à l’informatique d'il y a 30 ans, tout le monde à sa technologie propriétaire avec son matériel qui va avec.

Quand je vois le le nombre de couche pour arriver à un terminal mobile, je me dis que certain dirigeants des grosses boites informatiques doivent aimer les gros gâteaux à plusieurs couches.

L'orienté objet est déjà une jungle ou il faut une sacré machette pour y avancer correctement mais le mobile c'est l'Amazonie avec comme seul outil un couteau suisse.

Alors qu'ils y aient chacun de leur idées, de leurs frameworks, de leurs rustines révolutionnaires pour contourner l'incontournable mais ça n'apportera rien de constructif mis à part scinder un peu plus les communautés.

Le proverbe ne dit-il pas "diviser pour mieux régner" ?
0  2 
Avatar de Bono_BX
Membre confirmé https://www.developpez.com
Le 15/06/2015 à 16:05
L'orienté objet est déjà une jungle ou il faut une sacré machette pour y avancer correctement
C'est fatiguant ce genre d'absurdité ... je ne répondrais pas plus à ce troll que ceci : la programmation objet simplifie le code QUAND BIEN UTILISEE ! C'est sûr qu'entre les mains de manches, ça fait des catastrophes. Sinon c'est super simple et logique. Après, il faut bien entendu voir quelle est la "méthodologie" la plus adaptée au besoin : objet, fonctionnelle, événementielle ...

Application native:
Application conçue spécifiquement pour une plate-forme avec le SDK propre à celle-ci.
@SylvainPV : Exclusivité, spécificité, performance, centré sur l’appareil
Qu'entends-tu par là ? Si c'est "utilisation possible des exclusivités et spécificités", je suis d'accord. Par contre, si c'est "non portabilité", là, non : c'est pour cela que des technologies comme JAVA et Mono existent (entre autre) ; ce qui au passage invalide ta première phrase.

Web app mobile:
Site web optimisé pour un usage mobile
Universalité, pérennité, adaptabilité, centré sur le contenu
Si seulement tous les dev pouvaient t'entendre ...
0  1 
Avatar de crodilus
Membre régulier https://www.developpez.com
Le 15/06/2015 à 16:37
Citation Envoyé par Bono_BX Voir le message
C'est fatiguant ce genre d'absurdité ... je ne répondrais pas plus à ce troll que ceci : la programmation objet simplifie le code QUAND BIEN UTILISEE ! C'est sûr qu'entre les mains de manches, ça fait des catastrophes. Sinon c'est super simple et logique. Après, il faut bien entendu voir quelle est la "méthodologie" la plus adaptée au besoin : objet, fonctionnelle, événementielle ...
Je n'ai jamais dit que c'était compliqué. L'orienté objet est une jungle, ce qui sous entend qu'il y a une profusion de framework, d'API,... Choisir les bons outils n'est pas toujours facile, à la limite c'est peut-être encore plus difficile que de maîtriser le langage en lui même.

Le concept est clair et précis la manière d'y arriver ne l'est pas toujours.
0  2 
Contacter le responsable de la rubrique Accueil

Partenaire : Hébergement Web