Homepage » Toolkit » Az építési parancsfájlok csata Gulp Vs Grunt

    Az építési parancsfájlok csata Gulp Vs Grunt

    Már írtam arról, hogyan kezdhetem meg a Gulp-t, és hogyan kezdhetem a Grunt-ot. Mindketten automatizálja feladatainkat, mindketten használja a Csomópontot, és mindketten megkövetelik feladatok létrehozása és bővítmények telepítése valamiféle. De vajon vajon a kettő, vagy akár a különbség, ami jobb?

    Ebben a cikkben főként a témára összpontosítok a két projekt közötti különbségek ami segíthet abban, hogy eldöntse, hogy melyik közül melyiket tekintheti jobban magának. Néhány kódot fogok használni, ami ismeretlen. Ha igen, azt javasoljuk, hogy olvassa el a két korábban közzétett cikket, mielőtt elkezdené.

    További információ a Hongkiat.com oldalon

    • Hogyan lehet elkezdeni a Gulp-ot?
    • Hogyan lehet elkezdeni a Grunt-ot?

    Sebesség

    A fő különbség Gulp és Grunt között fekszik hogyan kezelik az automatizálási feladataikat belülről. A Gulp a csomópontokat használja, míg a Grunt a temp fájlokat használja. Tegyük fel ezt az egyszerű angol nyelvre?

    Tegyük fel, hogy a SASS kódot szeretné írni a projekthez. Szeretné összeállítani a SASS kódját, majd talán enyhítené azt.

    Grunt kezeli ezt közvetítő fájlok amelyek lemez I / O műveletek. A SASS fájlt összeállítja, majd egy ideiglenes fájlba írja. Az ideiglenes fájlt az autoprefixer használja, majd a végterméket a célfájlba írja.

    Gulp mindezt gondoskodik emlékül. A forrás SASS fájlja össze van állítva, az eredményt az autoprefixernek átadja anélkül, hogy egy fájlba írná, és a célfájl kiíródik.

    A memóriában végzett műveletekhez képest a lemez írása lassú, ami azt jelenti A Gulp nagy sebességgel rendelkezik (átmenetileg). A sebesség összehasonlítását tech.tmw végezte, ami azt mutatja, hogy a legtöbb feladat legalább kétszer gyorsabb a Gulp-nál. Bár ez nem volt rendkívül tudományos tanulmány, a tendencia ott van, és én is láttam ugyanezt a saját projektjeimmel. De milyen nagy a hatás a sebességkülönbség?

    Másodpercek közötti különbség

    A legtöbb projekt esetében ez nem számít. A legtöbb projekt kicsi. Amikor létrehoz egy WordPress-témát, vagy valami hasonló, a megmunkálandó fájlok száma ésszerű határokon belül van. Valójában nem számít, hogy a stíluslapjaidat 400 ms-ban vagy 800 ms-ban állítottuk össze.

    Továbbá a legtöbb projekt lehet oly módon, hogy a legintenzívebb kérdések közül néhányat el lehessen kerülni. Ha 50 SASS-fájlja van, akkor ugyanolyan gyorsan összevonhatja őket a fejlesztés során, ezért nincs szükség az autoprefixálásra vagy azok kicsinyítésére. Nem kell optimalizálnia a képeket minden egyes projekt mentésekor, és így tovább.

    Még akkor is, ha valóban szüksége van a nagy fegyverekre, mert a munkát egy állomáskiszolgálóra helyezi, vagy ha egy tárolót frissít, az 5 másodperces vagy 9 másodperces beépített idő nagy különbséget tesz?

    Mindezek tetejére Grunt hozzá fog járulni a csővezetékek támogatásához a közelgő 0,5 kiadásban, amely jelentősen felgyorsítja a dolgokat, és ezáltal vitathatatlan kérdés lesz..

    A közösség

    Grunt sokkal hosszabb ideig tart, mint a Gulp, így jelentős felhasználói bázisa van. A Grunt naponta átlagosan körülbelül 37 000 letöltést kap, a Gulp pedig egy kicsit több, mint a fele, a 23 ezer jel közelében. A Gulp csak egy és fél éve van, így ez a szám a legkevésbé tiszteletreméltó.

    A Grunt jelenleg több mint 4000 pluginnel rendelkezik, míg a Gulp több mint 1200 pluginnel rendelkezik. A Google trendjei szerint több ember keresi a Grunthoz kapcsolódó dolgokat, több olyan fórum van, amely foglalkozik vele és általában több közösségi támogatással.

    Természetesen Gulp jön és jön, ami azt jelenti valószínűleg hosszú távon kiegyenlít. Ez azonban bizonyos fejlesztők számára akadály, különösen a Grunt-alapú projekteket használók számára.

    Szeretném rámutatni, hogy a közösségek mindkettő számára nagyon szép. Amennyire meg tudom mondani, az egyes közösségek vezetői közötti kapcsolat csodálatos, és példaként szolgálhat mindenkinek. A Gulp készítője valóban segített a sebességmérő összehasonlítás írójának, hogy javítsa az időzítési pontosságot, ami az időbeli különbségek csökkenéséhez vezet. Ezt hívom úriembernek!

    Kód Vs konfiguráció

    Nyilvánvaló, hogy ez sok pontra fordul, de hogy őszinte legyek, nem látom személyesen a problémát.

    Az érv így megy: Gulp jó példa erre A konfiguráció kódja jó dolog lehet, ha a konfiguráció kicsit zavaros. Más emberek azt mondják, hogy bár ez igaz és a Gulp könnyebb olvas, ez nehezebb ír mert a csövek kissé zavaróak lehetnek.

    Mielőtt súlyoznám, itt van ugyanez a példa Gruntban, majd Gulpban:

     grunt.initConfig (sass: dist: fájlok: [src: 'dev / *. scss', dest: '.tmp / styles', kiterjesztés: true, ext: '.css'], autoprefixer : dist: fájlok: [expand: true, cwd: .tmp / styles ", src: ', * / *. css', dest: 'css / styles'], néz:  stílusok: files: ['dev / *. scss'], feladatok: ['sass: dist', 'autoprefixer: dist']); grunt.registerTask ('alapértelmezett', ['stílusok', 'néz')); 
     gulp.task ('sass', függvény () gulp.src ('dev / *. scss') .pipe (sass ()) .pipe (autoprefixer ()) .pipe (gulp.dest ('css / styles' ));); gulp.task ('alapértelmezett', függvény () gulp.run ('sass'); gulp.watch ('dev / *. scss, függvény () gulp.run (' sass ');); ); 

    Véleményem szerint tényleg nem számít. Persze, ha megszokta az első utat, szükség lehet arra, hogy egy kis időt töltsön a másodikra, de ez igaz is fordítva. Szóval nekem, a “ez összezavaró” az érv teljesen érvénytelen. Bármilyen az új módszer, amit megtanul, eleinte zavaró, de ha időt vesz igénybe, hogy megértsük az egyes logikát, akkor mindent megmagyaráz.

    Ez azt mondta, én személy szerint inkább Gulp API, mert tisztaés ez tükrözi azt, ahogyan jobban gondolok, mint Grunt. Ez természetesen teljesen szubjektív és egyáltalán nem probléma Gruntnál, csak személyes preferenciám.

    Hogyan válasszunk

    Nem hiszem, hogy kétség merülne fel azzal kapcsolatban, hogy Grunt és Gulp is nagyszerű eszközök, és segítenek az embereknek, hogy számtalan órát takarítsanak meg az évek során. A Grunt egy kicsit lassabb, de sokkal nagyobb közössége van. A Gulp gyorsabb, tisztább API-val rendelkezik, de nincs felhasználói bázis.

    Úgy gondolom, hogy a döntés végül is le fog állni folytonosság, rendelkezésre álló bővítmények és preferencia.

    (1) Ha már régóta használod a Grunt / Gulp-ot és elégedett vele, nincs ok váltani.

    (2) Ha a projekted bővítményeket igényel melyeket a Gulp nem nyújt, és nem vagy készen arra, hogy írjon egyet magadnak, Grunthoz kell mennie.

    (3) Ha a fenti két megfontolás nem vonatkozik Önre, akkor előnyben részesül. Azt javaslom, hogy kipróbáljam mindkettőt, és látom melyik van veled.

    Mint mondtam, úgy döntöttem, hogy a Gulp-ot használom, mert jobban szeretem a tisztább API-t, de tökéletesen kényelmes vagyok a Grunt használatával, ha egy projekt kéri. Mit kell tenned nem olvasd el, hogy Mr. Know-it-mind azt mondta, hogy a Gulp jobb és elfogadja. Bár vannak különbségek, nincs egyértelmű győztes és mindkét projekt együtt létezhet és fog létezni. Próbáld ki őket, és készítsd el a saját elmédet.

    Megjegyzés: talán szeretné meggondolni olyan felhasználók véleményét is, mint Keith Cirkel (A Javascript tanácsadó), aki azt tanácsolja, hogy használja se. Érdekes, hogy miért kellene abbahagynunk a Grunt & Gulp cikk használatát, javasolja npm használatát.

    További irodalom

    Sok más kiváló cikk is van erről a témáról. Szívesen ajánlom a következők egyikét a további olvasáshoz; soha nem fáj, hogy mások mit mondanak!

    • Grunt vs Gulp - a számokon túl (külön köszönet a tiszta példákért)
    • Gulp, Grunt, bármi
    • Válasszon: Grunt, Gulp vagy npm?
    • Sebességmérés Gulp és Grunt
    • Miért kell abbahagynunk a Grunt & Gulp használatát
    • Háborúk építése (navigáláshoz használja a nyilakat)
    • Gruntra nincs szükség, Gulp friss levegőre