2012-02-16 16 views
13

Quindi, come ho capito jQuery è fondamentalmente un framework per la manipolazione DOM come un livello di astrazione più elevato del javascript nativo. Dove la libreria YUI (yahoo UI) è una libreria di widget dell'interfaccia utente che fornisce allo sviluppatore un mezzo per dimenticare la manipolazione del DOM e lavorare di più sulla logica aziendale.jQuery e YUI (yahoo ui)

È giusto?

La mia domanda: C'è qualche serio problema di prestazioni con l'inclusione di entrambe le librerie? e come si confronta YUI con l'interfaccia utente di jQuery?

risposta

7

UPDATE

Il quadro YUI è stata sconsigliata a agosto 2014


Lascio ai pro jQuery per precisare i migliori punti di confronto, ma io uso YUI in progetti sia piccoli che grandi. YUI è strutturato in modo tale da includere solo la funzionalità modulare di cui hai bisogno, fino al livello più avanzato, inclusa la possibilità di eseguire il rollover delle dipendenze di tutto il resto nel giusto pacchetto.

YUI è fantastico per la manipolazione DOM, io, i widget, funziona davvero. Vai con YUI3, se trovi i widget YUI2 che vuoi/servono, hanno 'YUI2-in-3'.

Inoltre, uno (probabilmente più) dei contributori principali di YUI, Dav Glass, ha fatto un lavoro fantastico per ottenere YUI3 sul server, quindi essenzialmente lo stesso framework fa il lavoro di backend grunt e le stesse dipendenze fanno la magia di front-end.

sistema di inclusione di semi di YUI è molto facile da ottenere cominciato con troppo, codice di esempio:

<script src="http://yui.yahooapis.com/3.4.1/build/yui/yui-min.js"></script> 
<script type="text/javascript"> 
    YUI().use(['node','io'], function (Y) { 
     // node and io are ready now, do whatever you like. Need custom events, gesture support or animation? Add them to the array above. 
    }); 
</script> 

C'è il mio caso per YUI, divertirsi con essa :)

Inoltre, ho incluso sia jquery e YUI su un paio di progetti ... Non ho notato nulla di negativo, ma con più esperienza YUI, non ho avuto bisogno di farlo di nuovo.

+0

Qualche idea di come YUI 3 paragona le prestazioni? YUI 2 sembra molto scarso in confronto a jq – AndrewMcLagan

+0

Non ho collegamenti di riferimento ufficiali, esisteranno, ne sono sicuro, ma posso dirti che l'utilità di selezione di YUI3 è stata assolutamente uccisa rispetto a quella di YUI2. Ho fatto un sacco di test di base su IE6 e 7, poiché mi preoccupano, e YUI3 ha superato il suo predecessore. Direi che mixare e abbinare YUI2-in-3 probabilmente non farebbe miracoli per le prestazioni, ma potresti scoprire che non devi assolutamente guardare indietro. Mi è capitato di avere un accordo con il codice YUI2 che voleva l'aggiornamento, quindi l'opzione di YUI2-in-3 è piacevole. – danjah

+1

Di interesse potrebbe essere: http://www.jsrosettastone.com/ che è un confronto di sintassi, di sorta. Tieni presente che l'elenco sembra fermarsi a YUI 3.0.0, dove YUI è ora in 3.5. – danjah

22

jQuery

  • selezione $ DOM è potente e funziona come per magia.

  • jQuery code di solito è molto conciso; esistono funzioni di supporto per qualsiasi cosa banale (e non banale, anche).

  • La libreria di plugin è ampia e offre funzionalità rapide.

  • jQuery è sorprendente per i siti più piccoli ed è facile da raccogliere per i nuovi utenti , motivo per cui ha una community così ampia.

  • risultati immediati con minore curva di apprendimento.

YUI

  • Grande documentazione e gli esempi, così come il supporto da Yahoo con i colloqui tech e frequenti aggiornamenti.

  • Il codice scritto con YUI tende ad essere organizzato. A volte sembra addirittura Java-esque. ha un ricco set di moduli per altre cose oltre DOM manipolazione - cookie, cache, cronologia, i18n, ecc

  • In particolare attraverso la galleria, YUI ha ottenuto più aperto a contributi esterni

  • YUI YUI3 specialy richiede almeno abilità di base con la lingua, e altro se si vuole veramente sfruttarlo bene ed estenderlo.

  • YUI è molto più adatto per un codice modulare ben organizzato che può essere riutilizzato.

Per vedere cosa YUI è in grado di voi può visitare here per gli esempi di YUI2 e here per YUI3 gallerie (che sono IMO un po 'simile al plugin JQuery).

È possibile fare riferimento a questo site per confrontare YUI e la velocità di jquery.

IMO JQuery è una libreria, YUI è un framework e non una libreria. JQuery è adatto ai piccoli siti Web in cui si desidera ottenere un fattore "WOW" in un tempo relativamente breve. Ma quando costruisci un'applicazione, hai bisogno di una solida struttura in cui puoi integrare i tuoi codici. Yui è una scelta migliore.

+4

Bel confronto, inoltre, c'è una lettura interessante di John Resig qui: http: //www.quora.com/How-could-YUI3-migliora-sua-immagine-rispetto-a -Query-MooTools-etc – danjah

+3

+1 per "JQuery è una libreria, YUI è un framework e non una libreria" – AndrewMcLagan

+0

@Danjah: buon link, John Resig fa un punto intelligente quando dice: "La semplicità è molto più difficile da ottenere rispetto alla creazione di applicazioni complesse". –

1

Non utilizzare entrambe le librerie, le pagine verranno caricati più lento :)

jQuery è principalmente per manipolazione del DOM e AJAX e funziona bene con web pagine/siti. YUI è più di un framework e funziona bene con le applicazioni web. Sebbene ci sia qualche incrocio; YUI può essere usato facilmente con piccoli siti banali e jQuery può essere usato per creare grandi app web (anche se di solito è combinato con qualcos'altro come Backbone o JavaScriptMVC per una migliore organizzazione del codice)

Se non ti danno tutti necessario, utilizzare uno diverso

+0

non fraintendetemi, ma seguendo la logica YUI sarebbe più applicabile a web apps e jQuery a siti più piccoli no? – AndrewMcLagan

+0

Le dimensioni non sempre indicano la complessità. Ma sì, jQuery è più adatto ai siti "più piccoli". Vedi: http://blog.rebeccamurphey.com/on-jquery-large-applications – danwellman

+1

In realtà lo YUI può essere molto utilizzato in siti "più piccoli". Basta usare SimpleYUI http://ericmiraglia.com/yui/demos/quickyui.php se vuoi meno complessità. E allo stesso modo, puoi usare jQueryUI e Wijmo per siti più grandi costruiti su jQuery. – juandopazo