2013-02-19 10 views
26

Ho avuto difficoltà a trovare una panoramica delle differenze tra component e bower. Quale è migliore, qual è il miglior gestore di pacchetti da utilizzare? Ci sono alternative a questi due che dovrei prendere in considerazione?Qual è la differenza tra componente e bower?

+0

Ho trovato la mia risposta qui: http://dailyjs.com/2013/01/28/components/. Una discussione può essere trovata qui: https://groups.google.com/forum/#!msg/componentjs/FGM46qQX9hs/zOryL24q1AcJ –

risposta

10

Un "componente" è una parte di un sistema. Bower è manager dei pacchetti.

Qual è il migliore? Leggi the Bower FAQ per le differenze.

Bower sembra rendere migliore ciò che mira, ovvero un gestore di pacchetti per il web.

Ci sono anche Jam, Volo o Ender. E naturalmente, NPM.

per la popolarità e la verifica di adozione, è possibile check Ohloh

UPDATE:

Componente gestore di pacchetti https://github.com/component/component è anche un gestore di pacchetti per il web. Usa GitHub come database di back-end per i moduli, quindi i moduli che non sono su GitHub non saranno elencati. Questo approccio tuttavia rende le cose più facili, in quanto non vi è alcuna necessità di ulteriori credenziali; gli autori usano solo GitHub.

Personalmente, penso che Component dovrebbe adattare un nome distintivo, in modo che non venga confuso con la parola generale "componente".

+13

"Il componente fa parte di un sistema." Sulla base di questa affermazione, non penso che Joe capisca la domanda. Yoshua si riferisce a https://github.com/component/component, un concorrente di Bower. –

+6

Per un anno e mezzo la domanda è stata compresa allo stesso modo (6 voti su). Il gestore pacchetti componente ha un nome ambiguo. –

4

La squadra dietro componente ora hanno scritto la propria risposta a questa supponente: https://github.com/component/guide/blob/master/component/vs.md#component-vs-bower

Copiare il contenuto a partire da oggi:

Bower è più simile a npm rispetto a Component. Come npm, manifest di Bower bower.json è incluso, ad eccezione di tutto nel relativo file .ignore. Il componente, d'altra parte, è esclusivo, scaricando solo i file specificati nello component.json.

Tuttavia, la principale differenza tra Bower e Component è che component.json s sono più severe e supponente: tutti i file elencati nel component.json sono assume che essere obbligatoria. D'altra parte, i file elencati in un bower.json sono generalmente facoltativi.

Una specifica manifest rigorosa consente a Component di integrare facilmente un processo di compilazione. Tuttavia, con Bower questo è impossibile in quanto le persone pubblicano diversi tipi di moduli (globali, plug-in, AMD e CommonJS), nonché i file opzionali come mostrato in questo react-bower issue, rendendo molto difficile un processo di compilazione integrato.

Il sistema di compilazione integrato del componente consente di includere semplicemente uno script e un foglio di stile nella pagina. Non ci sono chiamate <script src="bower_components/jquery"><script> giocoleria e così via.

Come npm, bower è più lento di Componente durante l'installazione, ha una fase di pubblicazione non necessaria, non supporta più versioni di dipendenze e non memorizza nella cache le installazioni.