Un Vérifier l'état de la YUI 2-à-3 transition

Novembre 5, 2010 à 11:06 par Eric Miraglia | En développement , YUI 3 Galerie | 7 commentaires

La YUI deux bibliothèques JavaScript et CSS a été un produit énormément de succès dans les années quatre-Plus depuis que nous avons publié en 2006. YUI deux distributions ont été téléchargés plus de 2 millions de fois, et des milliers de développeurs utilisent aujourd'hui YUI, sans jamais le téléchargement des fichiers, en tirant au lieu soit de la Yahoo! ou Google CAN. 1 du trafic YUI sur le CDN Yahoo! n'a cessé de croître au fil des ans depuis que nous avons rendu public, et aujourd'hui, nous estimons que yui.yahooapis.com sert environ 15 milliards fichiers mensuels.

Ce n'est un secret, cependant, que les ingénieurs chez Yahoo YUI passent la plupart de leur énergie d'aujourd'hui travaillent sur ​​YUI 3 , le projet successeur de YUI 2, et qui applique un grand nombre des leçons tirées par les ingénieurs de YUI dans les années nous avons passé la construction YUI 2. YUI 3 aujourd'hui est robuste et riche en fonctionnalités. Au niveau d'utilité (animation, XHR, glisser-déposer, etc), il dépasse le niveau fonctionnel de YUI 2. Au niveau widget, où YUI 2 a été populaire avec son vaste portefeuille, YUI 3 est toujours rattrapage. DataTable YUI 2, le rédacteur en chef, menu, bouton et le calendrier sont encore la norme, et YUI 3 utilisateurs qui recherchent des fonctionnalités équivalentes d'aujourd'hui sont guidés vers la YUI 2-in-3 du projet , qui vous permet d'inclure facilement et utiliser YUI 2 de au sein de YUI 3 implémentations. C'est facile et sûr, mais c'est aussi pas optimale: Nous préférons ne pas basculer entre les deux API, et nous préférons ne pas encourir les frais généraux d'exécution de chargement à deux noyaux de la bibliothèque.

Comme nous nous préparons pour la semaine prochaine YUIConf 2010 , il a semblé comme un bon temps pour examiner le statut de la YUI 2 à 3 YUI transition. Nous sommes un peu plus d'un an dans les trois YUI époque, et pas tout à fait un an à partir de la YUI 3 Galerie lancement de l '. Entre l'équipe de YUI à Yahoo! Et ceux d'entre vous dans les composants de la communauté en contribuant YUI (près de 100 contribitors au total), comment faisons-nous?

La réponse pourrait vous surprendre.

Avec des projets comme AlloyUI Liferay et des dizaines de contributeurs indépendants peupler la galerie, nous avons maintenant plus d'options disponibles, même au niveau du widget dans YUI 3 que nous avons livré avec YUI 2. Le tableau ci-dessous correspond à la fonctionnalité entre les deux bibliothèques et donne une idée de comment les deux bibliothèques de comparer en termes de catégories fonctionnelles. Avertissements:

  • Quelques rangées sont 01:01 comparaisons. Quand je dis que la fonctionnalité est supportée, je ne veux pas dire qu'il est soutenu exactement de la même façon ou au niveau des fonctions identiques dans les deux lignes de code.
  • Toutes les fonctionnalités non prises en charge YUI 3 peuvent être accessibles via YUI 2-in-3.
  • Où je l'ai indiqué que quelque chose est pris en charge via la communauté / Galerie, je ne veux pas dire quelque chose sur l'intégralité fonction du contenu Galerie - simplement que la communauté a répondu à ce besoin et a produit et partagé une solution.
  • Ce tableau inclut seulement une fraction du contenu qui est dans la Galerie. Une image plus fidèle, y compris tous les contenus Gallery, montrerait YUI YUI 3 nanisme 2 en termes d'options de composant. Je me suis confinée ici pour la fonctionnalité de base de YUI 2, son équivalent en YUI 3, et les principaux faits nouveaux dans le YUI 3 monde (y compris des catégories de composants majeurs qui ont émergé dans la galerie).
Composants de base
Composante YUI 2 YUI 3 Remarques
Bibliothèque de base Yahoo objet global YUI module de Certaines des fonctionnalités YUI 2 s'est déplacée vers d'autres modules - oop et lang.
Loader YUI Loader Module Loader YUI Loader 3 est intrinsèque (il sera appelé automatiquement) et inclut le support pour la Galerie.
Le support de DOM DOM Collection Module Node YUI 3 est "noeud-centrique» - travailler via l'API Node est un changement de paradigme entre YUI 2 et 3.
Navigateur et d'événements personnalisés Utilitaire de l'événement Module Event
Composante de la Fondation
Composante YUI 2 YUI 3 Remarques
La gestion des attributs AttributeProvider Module des attributs
La gestion d'événements EventProvider EventTarget dans le module Event personnalisée
Base de composants Module de base
Extension du modèle Module de base
Modèle de Plugin Modules Host Plugin et Plugin
Widget fondation Utilitaire Element Module Widget Utilitaire Element YUI 2 est le schéma du cycle de vie manque de développement des composants contenus dans le YUI 3 Base / Widget système.
Utilitaires
Composante YUI 2 YUI 3 Remarques
Ajax / XHR Utilitaire Connection Manager IO module de
Animations Utilitaire d'animation
  • Module d'animation
  • Module de transition
YUI 3 ajoute le support pour les transitions CSS via le module de transitions, soutenant l'accélération matérielle des transitions où la charge.
Le préchargement d'actifs
Queueing asynchrone Module AsyncQueue Soutien pour une chaîne de rappels fonction exécutée par l'intermédiaire setTimeout . La livraison YUI 2 de cette fonctionnalité n'est pas divisé de manière suffisamment pour une utilisation générale.
Authentification
Cache Module de cache Soutien pour le stockage de paires clé / valeur dans la mémoire de JS locales.
Cookie Utilitaire Cookie Module de Cookie
Gestion des données DataSource Utilitaire
  • DataSchema (beta)
  • DataSource (beta)
  • DataType (beta)
Il n'est pas de parité fonction exacte entre les deux (par exemple, la queue n'est pas pris en charge dans YUI 3; YUI 3 modules restent en version bêta).
Drag and Drop Drag and Drop Utilitaire JJ module de
Événement Extras
  • La délégation de l'événement
  • Simulation de l'événement
  • Délégation de l'événement
  • Simulation d'événements
  • Gestes
  • Événements synthétiques
  • Des événements tactile
Le soutien évènement YUI 3 dépasse le YUI deux branches, avec une bonne abstractions pour le toucher et les gestes.
La validation de formulaire
Géolocalisation
Obtenir (script / CSS chargement) Obtenir l'utilitaire Obtenez le module
Histoire de gestion Utilitaire Histoire Module d'histoire Module Histoire YUI 3 comprend un soutien HTML5.
ImageLoader (report de charge intelligent d'image) Utilitaire imageLoader Module imageLoader
L'internationalisation varie selon le volet L'internationalisation du module Modèle de YUI 3 de i18n est plus robuste, mais il ya du travail à faire pour réaliser l'ensemble de ses avantages à travers le système de widgets.
JSON JSON Utilitaire JSON module de YUI 3 inclut le module JSONP qui fournit une facilité à travailler avec des rappels de l'intérieur JSONP modèles bac à sable YUI 3 est.
Redimensionner Utilitaire Redimensionner La mise en œuvre AlloyUI dans la Galerie a été adopté dans le noyau de bibliothèque et fera partie de la libération 3.3.0.
Stockage (côté client) Utilitaire de stockage (comprend repli Flash) Stockage Lite ne supporte pas un repli Flash.
Stylesheet (manipulation via JS) Utilitaire Stylesheet Module de feuille de style
SWF de gestion SWF Utilitaire
Soutien SVG
Undo / Redo soutien
Emballage YQL Module d'interrogation YQL
Widgets UI
Composante YUI 2 YUI 3 Remarques
Accordéon En tant que YUI 2-en fonction widget, composante de Marco n'est pas dans la YUI 3 Galerie formellement.
Saisie semi-automatique Saisie semi-automatique de contrôle YUI 3 AutoComplete sera livré avec YUI 3.3.0. Ne pas négliger la composante AlloyUI ici, même si - il est caractéristique d'aujourd'hui riche et prête à l'emploi.
Bouton Bouton de contrôle
Calendrier Calendrier de contrôle Calendrier widget / date de sélection n'est pas attendu dans le cadre du YUI 3 distribution jusqu'à 3.4.0 ou version ultérieure; la mise en œuvre AlloyUI, cependant, est un excellent choix pour les cas d'utilisation commune.
Carrousel Carrousel de contrôle Gopal est propriétaire de l'YUI 2.x Carousel base de code pour une longue période, et son module de YUI Galerie 3 sera dans les produits Yahoo! production cette année.
Graphiques Cartes de contrôle Tripp est l'un des auteurs et le responsable du contrôle de YUI 2 graphiques, qui est basé sur Flash. Le travail YUI 3 graphiques, qui ne repose pas sur Flash, est poussé à la galerie sur une base régulière et le travail de Tripp à jour sera disponible en version bêta dans le cadre de YUI 3.3.0.
Color Picker Contrôle Color Picker
DataTable DataTable contrôle Projet d'Anthony, qui inclut un plug-in modules années, n'est pas destiné à avoir la parité avec la fonction ambitieuse YUI 2 Contrôle DataTable. Le travail accompli par l'équipe de YUI YUI sur 3 DataTable apparaîtront sous forme de bêta 3.3.0.
Cropping Image ImageCropper contrôle
Mise en page (pleine application de gestion d'écran) Layout Manager
Menuing Du menu de commande Menu simple n'est pas aussi riche que le soutien menuing complètes fournies dans YUI 2. A l'heure actuelle, l'équipe YUI plans de travail sur un contrôle YUI menu 3 pour la période 3.4.0. Node MenuNav fait partie de la distribution de YUI 3, mais il reste en version bêta et peut être déconseillée en faveur de nouveaux travaux sur un contrôle d'interface formelle.
Superpositions Famille Container
Pagination Contrôle paginateur
Barre de progression Contrôle ProgressBar Satyam a écrit le contrôle ProgressBar YUI 2; sa mise en œuvre YUI 3 n'est pas dans la galerie, mais il est disponible pour utilisation.
Notes
Rédaction de Texte Riche Rich Text Editor YUI 3.3.0 contiendra le contenu de l'éditeur de base que Yahoo utilise dans la version bêta Yahoo! Mail nouvelles - qui est l'éditeur le plus avancé, nous avons produit dans le cadre de YUI. Cependant, la barre d'outils Éditeur (qui est une partie importante de la composante de la plupart des réalisateurs) s'appuiera sur le bouton et la fonctionnalité Menuing qui n'apparaîtront pas avant au moins 3.4.0.
ScrollView ScrollView module de Ceci est un élément important pour le développement mobile.
Slideshow Cette catégorie est un bon exemple de ce que la Galerie YUI peut devenir. Alors que nous n'avons jamais eu une forte composante YUI diaporama 3, nous avons déjà quatre excellents modules à choisir dans la YUI 3 monde.
Sliders Contrôle Slider YUI 3.3.0 contiendra un ajout intéressant à l'interaction nouvelle tendance curseur, la courtoisie du concepteur de Yahoo! Et ingénieur Jeff Conniff. Restez branchés pour plus sur ce que les communiqués 3.3.0 prévisualisation apparaissent.
Onglets TabView contrôle TabView module de
Arbres Contrôle TreeView Yahoo! ingénieur Gonzalo Cordero travaille actuellement sur une mise en œuvre YUI TreeView 3. Bien qu'il ne sera pas prêt pour la 3.3.0, il est prévu pour être disponible dans la galerie après la sortie 3.3.0 et être un candidat pour la distribution dès 3.4.0.
Uploader (multi-fichiers télécharger avec un suivi en cours) Contrôle Uploader Module Uploader Les deux YUI YUI 2 et 3 implémentations requièrent Flash.
Vidéo (HTML5)
CSS Composants
Composante YUI 2 YUI 3 Remarques
Réinitialiser CSS Réinitialiser CSS Réinitialiser
Base de CSS de base CSS de base
Polices Polices CSS Polices CSS
Grilles Grilles CSS Grilles CSS La nouvelle, plus souple YUI CSS 3 grilles paquet a été publié en 3.2.0.

Notes:

  1. La YUI 2 Dépendance configurateur peut vous aider à concevoir votre script et css comprend ni pour Yahoo ou Google CDN.

Partager et prolonger: Conservez ce lien avec del.icio.us | Digg it! | reddit!

7 commentaires »

Flux RSS pour les commentaires sur ce post.

  1. Shnikies Saint, ces composants sont AlloyUI slick. Sera certainement essayer d'alliage dans mon application prochaine. :)

    Commentaire par Josh L - Novembre 5, 2010 #

  2. YUI3 désavantage par rapport à YUI2 est le manque de widgets dans le kit standart (widgets seule communauté). Tout d'abord (pour moi), DataTable, Arbres, éditeur de texte enrichi, mise en page (pleine application de gestion d'écran), Button. Ces widgets sont très importants et inclus dans concurrentes framworks javascript. Ils devraient être inclus dans le kit complet du développeur YUI3. Je ne suis pas sûr de la qualité élevée de code dans les projets communautaires, alors j'ai peur de l'utiliser. En attendant les prochaines versions du YUI3.

    Commentaire par Sergey - 7 Novembre, 2010 #

  3. @ Serge, tous les widgets yui2 et d'autres composants sont utilisables grâce YUI3.

    Commentaire par Joe - Novembre 21, 2010 #

  4. Nous utilisons la capacité de dialogue YUI2 à soumettre un formulaire de manière asynchrone dans le corps de la boîte de dialogue. Cette fonctionnalité est utilisée dans notre application. Je ne vois pas cette fonction dans la boîte de dialogue ou d'un module de dialogue AlloyUI Anthony Pipkin dans la galerie. Est-il prévu d'ajouter des superpositions supplémentaires dans YUI3 telles que Dialog riche en fonctionnalités de YUI2?

    Commentaire par Sean - Janvier 7, 2011 #

  5. @ Sean, les composants de fenêtrage (panneau, dialogues etc) sont sur la feuille de route 2011 pour YUI3. Nous n'avons pas aplanies qui libèrent ils vont se poser dans, mais ils sont provisoirement prévue pour quelque part autour de mi-année.

    La présentation sous forme asynchrone qui soutient le dialogue YUI2 est un candidat idéal pour un simple plugin YUI3, de sorte que vous (ou quelqu'un d'autre dans la communauté) est la bienvenue pour donner un coup de feu et l'ajouter à la galerie.

    C'est vraiment juste un wrapper de lumière autour du soutien sous forme d'IO. Il est probable que la mise en œuvre YUI 3 sera juste que - un plugin pour Overlay, qui s'applique io-forme pour le contenu de la superposition.

    En général, comme nous commençons l'année, nous cherchons des façons de mieux recueillir les commentaires feuille de route (par les heures d'ouverture) de la communauté, l'entretenir et de le publier, ainsi vous aurez plus de perspicacité dans ce qui est à venir, et quand.

    Commentaire par Satyen Desai - Janvier 7, 2011 #

  6. Satyen, je vous remercie pour les commentaires. Je pense que nous allons coller avec YUI2 jusqu'au YUI3 est un peu plus mature. Je pouvais commencer à utiliser migré YUI3 composants et 2in3 pour un environnement YUI2/YUI3 mixtes, mais je ne peux pas justifier le ROI car ce serait une importante ré-écrire de nombreuses parties de notre application. Nous utilisons de nombreux composants YUI2, mais DataTable / ScrollingDataTable et de dialogue sont les deux plus importantes. Une fois ces composants sont entièrement migré vers YUI3, je vais proposer une tâche de migration de la gestion.

    Commentaire par Sean - 11 Janvier 2011 #

  7. Hey! LayoutManager et ImageCropper sont maintenant dans la galerie.

    ImageCropper: http://yuilibrary.com/gallery/show/imagecropper
    Layout: http://yuilibrary.com/gallery/show/axo-layout

    Commentaire par Juan - 8 Juillet 2011 #

Laisser un commentaire

Note: Les commentaires sont modérés pour les débutants. Spam supprimé.

XHTML: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong>

Hébergé par Yahoo!

Copyright © 2006-2011 Yahoo! Tous droits réservés. Politique de confidentialité - Conditions d'utilisation

Propulsé par WordPress sur Yahoo! Web Hosting .