Object Model 2.0 : la solution de typage fort dynamique
Sort une nouvelle version majeure

Le , par SylvainPV, Rédacteur/Modérateur


La bibliothèque de typage fort dynamique continue son bout de chemin et sort aujourd'hui en version 2.0.

Grâce aux excellents retours des utilisateurs sur Github, plusieurs évolutions majeures ont été introduites :

  • les erreurs sont accumulées avant d'être renvoyées. En v1, la validation s'arrêtait dès la première erreur rencontrée ;
  • ajout de collecteurs d'erreurs personnalisés, permettant de définir vos propres comportements en cas d'erreur ;
  • ajout de null comme valeur valide pour les propriétés optionnelles ;
  • ajout d'une description optionnelle pour les assertions.


À partir de cette v2, le support IE9 et IE10 a été retiré. Supporter ces navigateurs se traduisait par de nombreux hacks et correctifs qui pénalisaient les autres navigateurs. Cela se traduit par une bibliothèque plus légère (6.8 Ko, 2.8 Ko en gzippé) et plus performante malgré les ajouts de nouvelles fonctionnalités.

Les futures évolutions seront centrées sur les gains de performance offerts par les Proxy ES6. Votre feedback sera également déterminant, comme il l'a été pour les changements introduits dans cette v2.

Pour en savoir plus : http://objectmodel.js.org/

Et vous ?

Qu'en pensez-vous ?


Vous avez aimé cette actualité ? Alors partagez-la avec vos amis en cliquant sur les boutons ci-dessous :


 Poster une réponse

Avatar de Gnuum Gnuum - Membre expérimenté https://www.developpez.com
le 04/04/2016 à 14:47
Intéressant! Et de 70!
Avatar de Gugelhupf Gugelhupf - Modérateur https://www.developpez.com
le 07/04/2016 à 11:05
Bonjour, Object:Model ressemble beaucoup au proposal StructType d'ES7. Je n'ai pas testé mais on dirait que les erreurs sont découverts au runtime et non au compile-time. Quels sont les avantages de ce framework par rapport à TypeScript ?
Avatar de SylvainPV SylvainPV - Rédacteur/Modérateur https://www.developpez.com
le 07/04/2016 à 11:22
Salut,

Effectivement, la grosse différence est qu'Object Model fait du typage dynamique, tandis que TypeScript valide à la compilation. J'ai expliqué la différence et l'intérêt qu'on y trouve dans le post initial de présentation d'Object Model sur ce topic.

Pour les StructType ES7, c'est une proposition assez ancienne dont le statut n'a pas beaucoup évolué depuis, donc j'ignore où ça en est. Je note toutefois comme principales différences avec Object Model:
- pas de typage imbriqué (définition de modèles objet sur plusieurs niveaux)
- pas de détection de changement ni de validation dynamique (a priori)
- pas d'assertions
- pas de composition possible (sauf si StructType hérite de Type, mais ce n'est pas indiqué dans la spec)
Avatar de Beginner. Beginner. - Membre éprouvé https://www.developpez.com
le 07/04/2016 à 19:52
Salut,

Étant débutant je ne peux tester ni donner un avis mais on sent qu'il y a dû y avoir un gros boulot d’achevé...

PS : C'est hors sujet mais je trouve que le site est top.
Responsable bénévole de la rubrique JavaScript : Xavier Lecomte -