Podemos afirmar que o Gulp é um automatizador de tarefas front-end mais rápido que o Grunt!
O que é um automatizador de tarefas?
Automatizador de tarefas ou executor de tarefas é um sistema de compilação (build system).
A função do automatizador de tarefas é ajudar os programadores a realizarem tarefas repetitivas como:
- Minificação de CSS, JS e HTML;
- Concatenação de arquivos para diminuição de requests;
- Testes;
- Otimização de Imagens
- e outras tarefas essenciais de codificação frontend…
GRUNT
O Grunt é o automatizador de tarefas mais conhecido entre os front-end(ers), criado em 2012 por Ben Alman. O arquivo central do grunt é o Gruntfile.js que é criado na raiz do projeto, é nele que são criadas as tarefas (tasks) a serem executadas no build do projeto. Esse arquivo gerencia os vários plugins e cria arquivos temporários no disco, até gerar o arquivo final.
Pontos fortes do Grunt
- Comunidade Grande
- Possui muitos plugins
Pontos fracos do Grunt
- Arquivos de configuração muito grandes
- Grande número de parâmetros para cada plugin
- Processamento lento quando utiliza arquivos muito grandes
GULP
O Gulp é um automatizador de tarefas lançado pouco depois do Grunt, foi criado em 2013 por Eric Schoffstall.
As informações são transmitidas através das tarefas usando o método de pipeline, o que reduz o número de operações I/O. Por isso o Gulp é mais rápido que o Grunt, por utilizar streams do nodejs para escrever arquivos diretamente no disco. Assim como o Grunt o Gulp usa o arquivo Gulpfile, que tem uma semelhança ao código comum do nodejs.
Pontos fortes do Gulp
- Melhor performance
- Arquivo de configuração pequeno e mais fácil de ler
- Linha de aprendizado menor
- Evita criação de arquivos termporários
- Facilidade de uso através dos 5 comandos principais da API
- Plugins mais simples e menores
Veja como instalar o Gulp neste Vídeo:
Quer saber mais? entre no site do Gulp: https://gulpjs.com/
CONCLUSÃO
Eu mesma até um tempo atrás não utilizava nenhum automatizador de tarefas! Mas realmente percebi que para desenvolver um projeto, seja um site ou aplicativo é necessário ter a coisa organizada e simplificada tudo em um lugar só, feito de um jeito só e com algumas linhas de comando.