IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)

Vous êtes nouveau sur Developpez.com ? Créez votre compte ou connectez-vous afin de pouvoir participer !

Vous devez avoir un compte Developpez.com et être connecté pour pouvoir participer aux discussions.

Vous n'avez pas encore de compte Developpez.com ? Créez-en un en quelques instants, c'est entièrement gratuit !

Si vous disposez déjà d'un compte et qu'il est bien activé, connectez-vous à l'aide du formulaire ci-dessous.

Identifiez-vous
Identifiant
Mot de passe
Mot de passe oublié ?
Créer un compte

L'inscription est gratuite et ne vous prendra que quelques instants !

Je m'inscris !

Facebook présente Flow, son contrôleur de type statique pour JavaScript
Est désormais en open source

Le , par Stéphane le calme

7PARTAGES

2  0 
La publication de Flow, un contrôleur de type statique open source pour JavaScript, s’inscrit dans les efforts de Facebook d’alimenter la communauté open source avec des outils intégrés développés en interne. « Flow améliore la vitesse et l’efficacité afin que les développeurs soient plus productifs lorsqu’ils utilisent JavaScript », avancent les ingénieurs de Facebook dans un blog dédié à la présentation de l’outil. Bien entendu, l’outil a du faire ses preuves au sein de Facebook avant d’être publié ; le numéro un des réseaux sociaux l’a utilisé pour un grand nombre de ses propres projets.

« En particulier, le typage statique offre des avantages comme le contrôle rapide d'erreur - qui vous permet d'éviter certains types de défaillances d'exécution - et les échanges d’informations sur le code, qui facilitent la maintenance du code, la navigation, la transformation et l'optimisation »

En clair, en tant que vérificateur statique, Flow vérifie que lorsqu’un programme est exécuté, ses variables, fonctions et autres éléments du code adhèrent à leurs spécifications d’origine. Il peut vérifier si une valeur affectée à une variable est du correct type, par exemple un nombre au lieu d’une chaîne de caractères. Il peut aussi vérifier si une fonction a passé le nombre correct d’entrées. Ces contrôles d'erreur pourraient prévenir les défaillances du programme, et aider à sécuriser le programme contre de potentiels abus malveillants. La vérification de type peut également aider à effectuer la maintenance du programme.

Il faut rappeler que durant les années antérieures JavaScript a énormément gagné en popularité en tant qu’outil de développement web non seulement pour l’ajout de fonctionnalités aux pages web mais également pour la création d’applications web à grande échelle. Cependant, contrairement à d’autres langages de programmations comme le C++ ou le Java, JavaScript manque de capacités de typage statique. Les ingénieurs Facebook estiment que mettre sur pied un système de typage statique en JavaScript n’est pas une chose évidente en particulier parce que les blocs de construction en JavaScript sont extrêmement expressifs et les systèmes de type simple ne suffisent pas à modéliser précisément leur sémantique.

Il faut se souvenir que d’autres entreprises se sont également lancé dans l’ajout de la vérification de type statique JavaScript à l’instar de Microsoft qui a développé TypeScript, un sur-ensemble typé de JavaScript. Contrairement à TypeScript, Flow permet aux développeurs de ne contrôler que des portions de leur code. Les frameworks JavaScript utilisent parfois certaines techniques, comme la réflexion, qui rendent difficile la vérification de type.

L’exécution de Flow ne contraint pas le développeur à l’exécution du programme ou même à sa préparation pour son inspection. Au lieu de ça, il fonctionne comme un processus d’arrière-plan. Flow est capable de vérifier les types primitifs standards à l’instar des nombres, chaînes de caractère, valeurs booléennes mais également des types structurés comme les fonctions, les tableaux ou même les objets.

Télécharger les binaires de Flow pour Mac OS X

Télécharger les binaires de Flow pour Linux (64 bits)

Flow (GitHub)

Source : Flow Type

Et vous ?

Qu'en pensez-vous ?

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