Mājas lapa » Toolkit » Izveidot skriptu kaujas Gulp Vs Grunt

    Izveidot skriptu kaujas Gulp Vs Grunt

    Esmu jau rakstījis par to, kā sākt darbu ar Gulp, kā arī par to, kā sākt darbu ar Grunt. Viņi abi automatizējiet mūsu uzdevumus, viņi abi izmantojiet mezglu, un viņi abi prasa izveidot uzdevumus un instalējiet spraudņus kaut kāda veida. Bet vai jūs domājāt par atšķirību starp abiem vai pat, kas ir labāks?

    Šajā rakstā es galveno uzmanību pievērsīšu atšķirības starp šiem diviem projektiem kas var palīdzēt jums izlemt, kurš no jums var būt labāks par sevi. Es izmantošu kādu kodu, kas var būt nepazīstams. Ja tā ir, iesakām izlasīt divus iepriekš publicētos rakstus, pirms sākat darbu.

    Vairāk par Hongkiat.com

    • Kā sākt ar Gulp
    • Kā sākt ar Grunt

    Ātrums

    Galvenā atšķirība starp Gulp un Grunt atrodas kā tās risina savus automatizācijas uzdevumus iekšpusē. Gulp izmanto mezglu plūsmas, bet Grunt izmanto temp failus. Iesakām to vienkāršā angļu valodā, vai mēs?

    Pieņemsim, ka vēlaties rakstīt SASS kodu savam projektam. Jūs vēlētos apkopot savu SASS kodu un pēc tam varbūt saīsināt to.

    Grunt to izmanto, izmantojot starpnieka failus kas ir diska I / O operācijas. Jūsu SASS fails ir apkopots un pēc tam ierakstīts pagaidu failā. Pagaidu failu izmanto autoprefiksētājs, un tad gala produkts tiek ierakstīts mērķa failā.

    Gulp par to rūpējas atmiņā. Jūsu avota SASS fails ir apkopots, rezultāts tiek nodots autoprefiksētājam bez rakstīšanas failā un galamērķa fails tiek izrakstīts.

    Salīdzinot ar operācijām ar atmiņu, disku rakstīšana ir lēna, kas nozīmē to Gulp ir liela ātruma priekšrocība (tagad). Ātruma salīdzinājums tika veikts ar tech.tmw, kas parāda, ka lielākā daļa uzdevumu ir vismaz divreiz ātrāki par Gulp. Lai gan tas nebija ļoti zinātnisks pētījums, tendence ir tur un es esmu redzējis to pašu ar saviem projektiem. Bet cik liela ietekme ir ātruma atšķirība?

    Starpība sekundēs

    Vairumam projektu tas nav svarīgi. Lielākā daļa projektu ir nelieli. Veidojot WordPress tēmu vai kaut ko līdzīgu, to failu skaits, kas jāstrādā, ir saprātīgā robežā. Tas tiešām nav svarīgi, vai jūsu stillapas ir apkopotas 400ms vai 800 ms.

    Turklāt vairums projektu var būt tādā veidā, ka dažus no intensīvākajiem jautājumiem var novērst. Ja jums ir 50 SASS faili, jūs varat tikpat ātri sasaistīt tos, kamēr tie ir izstrādes laikā, nav nepieciešams automātiski tos labot vai rediģēt. Jums nebūs nepieciešams optimizēt attēlus katru reizi, kad saglabājat projektu, un tā tālāk.

    Pat tad, ja jums tiešām ir vajadzīgi lielie lielgabali, jo jūs spiežat savu darbu uz pieturvietas serveri vai ja atjaunojat repozitoriju, vai uzceltais laiks 5 sekundes vai 9 sekundes rada lielu atšķirību?

    Augšup tas viss ir izslēgts, Grunt pievienos atbalstu cauruļvadiem gaidāmajā 0.5 versijā, kas ievērojami paātrinās, padarot šo strīdīgu punktu.

    Sabiedrība

    Grunt ir bijis daudz garāks par Gulp, tāpēc tam ir nozīmīga lietotāju bāze. Šobrīd Grunt saņem vidēji 37 000 lejupielādes dienā, bet Gulp ir nedaudz vairāk nekā puse no tā, kas ir netālu no 23 000 atzīmes. Tātad, Gulp ir bijis apmēram pusotru gadu, padarot šo skaitli par cienījamu.

    Pašlaik Grunt ir vairāk nekā 4000 spraudņi, bet Gulp ir vairāk nekā 1200 spraudņi. Saskaņā ar Google tendencēm vairāk cilvēku meklē Grunt saistītās lietas, ir vairāki forumi, kas ar to nodarbojas un parasti ir vairāk Kopienas atbalsta.

    Protams, Gulp ir augšup, un tas nozīmē, ka tas ir ilgtermiņā. Tomēr tas ir šķērslis dažiem izstrādātājiem, īpaši tiem, kas strādā Grunt balstītos projektos.

    Es vēlos norādīt, ka abu valstu kopienas ir ļoti jauki. Ciktāl es varu pateikt, ka attiecības starp līderiem katrā sabiedrībā ir pārsteidzošas, un tām vajadzētu kalpot kā piemērs visiem. Gulp autors faktiski palīdzēja ātruma testa salīdzinājuma rakstītājam uzlabot laika precizitāti, kas noved pie laika atšķirību samazināšanās. To es saucu par kungu!

    Kods Vs konfigurācija

    Acīmredzot tas ir daudzu punktu apgāšanās punkts, bet, lai būtu godīgi, es neredzu šo jautājumu personīgi.

    Šis arguments ir šāds: Gulp ir labs piemērs tam kods pār konfigurāciju var būt laba lieta, ja konfigurācija kļūst nedaudz mulsinoša. Citi cilvēki saka, ka, lai gan tas ir taisnība un Gulp ir vieglāk lasīt, tas ir grūtāk rakstiet tāpēc, ka cauruļvadi var būt nedaudz mulsinoši.

    Pirms es svaru, šeit ir tas pats piemērs vispirms Gruntā, tad Gulpā:

     grunt.initConfig (sass: dist: faili: [src: dev / *. scss, dest: '.tmp / stili', izvērst: true, ext: '.css'], autoprefixer : dist: faili: [expand: true, cwd: ".tmp / stili", src: ", * / *. css", dest: 'css / styles'], skatīties:  stili: files: ['dev / *. scss'], uzdevumi: ['sass: dist', 'autoprefixer: dist']); grunt.registerTask ('noklusējuma', ['stili', 'skatīties')); 
     gulp.task ('sass', funkcija () gulp.src ('dev / *. scss) .pipe (sass ()) .pipe (autoprefixer ()) .pipe (gulp.dest (' css / styles ' ));); gulp.task ('noklusējums', funkcija () gulp.run ('sass'); gulp.watch ('dev / *. scss, funkcija () gulp.run (' sass ');); ); 

    Manuprāt, tas tiešām nav svarīgi. Protams, ja jūs esat pieradis pie pirmā ceļa, jums var būt nepieciešams pavadīt kādu laiku, norādot otro, bet tas ir taisnība arī otrādi. Tātad man, “tas ir mulsinoši” arguments ir pilnīgi nederīgs. Jebkurš jaunā metode, ko mācāt, sākumā ir mulsinoša, bet, ja jūs veltāt laiku, lai saprastu katra loģiku, tas viss izlīdzinās.

    Tas nozīmē, ka es personīgi dodu priekšroku Gulp API, jo tas ir tīrsun tas atspoguļo veidu, kā es domāju daudz ciešāk nekā Grunt. Tas, protams, ir pilnīgi subjektīvs un tas nav jautājums ar Grunt vispār, tas ir tikai mana personīgā izvēle.

    Kā izvēlēties

    Es nedomāju, ka ir kāds jautājums par to, ka gan Grunt, gan Gulp ir lieliski instrumenti un palīdzējuši cilvēkiem ietaupīt neskaitāmas stundas laika gaitā. Šobrīd Grunt ir mazliet lēnāks, bet tai ir daudz lielāka kopiena. Gulp ir ātrāks, tam ir tīrāks API, bet trūkst lietotāju bāzes.

    Es domāju, ka lēmums galu galā nonāks nepārtrauktība, pieejamie spraudņi un priekšroka.

    (1) Ja jūs kādu laiku esat izmantojis Grunt / Gulp un tu esi apmierināts ar to, nav iemesla pārslēgties.

    (2) Ja jūsu projekts nepieciešama spraudņi ko nesniedz Gulp, un jūs neesat gatavi uzrakstīt vienu sevi, jums būs jāiet kopā ar Grunt.

    (3) Ja iepriekšminētie divi apsvērumi neattiecas uz jums, tas būs priekšroka. Es iesaku izmēģināt un redzēt kas viens ar jums saskaras.

    Kā jau teicu, es izvēlējos izmantot Gulp, jo man labāk patīk tīrāks API, bet es esmu pilnīgi apmierināts, izmantojot Grunt, ja projekts to prasa. Ko jums vajadzētu ne to dara, ir tas, ka visi zina, ka Gulp ir labāks un to pieņem. Lai gan pastāv atšķirības, nav skaidrs uzvarētājs un abi projekti var pastāvēt un būs līdzās. Izmēģiniet tos un izveidojiet savu prātu.

    Piezīme: jūs varētu vēlēties apsvērt arī lietotāju viedokļus, piemēram, Keith Cirkel (Javascript konsultants), kurš iesaka jums izmantot ne arī. Viņa interesantā iemesla dēļ, kāpēc mums vajadzētu pārtraukt Grunt & Gulp raksta izmantošanu, viņš ierosina izmantot npm.

    Turpmāka lasīšana

    Ir daudz citu lielisku rakstu par šo tēmu. Es vēlētos sirsnīgi ieteikt kādu no tālāk minētajām lasīšanas iespējām; tas nekad nav sāpīgi izlasīt to, kas citiem jāsaka!

    • Grunt vs Gulp - ārpus numura (īpašs paldies par skaidriem piemēriem)
    • Gulp, Grunt, Neatkarīgi
    • Izvēlieties: Grunt, Gulp vai npm?
    • Speedtesting Gulp un Grunt
    • Kāpēc mums jāpārtrauc Grunt & Gulp izmantošana
    • Veidot kari (izmantojiet bultiņas, lai pārvietotos)
    • Nav nepieciešams, lai Grunt, ņemiet Gulp Fresh Air