Automação de build para frontend

17
Automação de build para frontend vanessa me tonini

description

Apresentação feita no 2º Encontro Nacional de Mulheres na Tecnologia

Transcript of Automação de build para frontend

Page 1: Automação de build para frontend

Automação de build para frontendvanessa me tonini

Page 2: Automação de build para frontend

eu sou...

● Desenvolvedora Web desde 2007

● Tecnóloga em sistemas para Internet pela UNIVALI

● Especialista em desenvolvimento Web pela UTFPR

● Hoje trabalho em projetos de fomento a acessibilidade Web e Open Web no W3C Brasil

Page 3: Automação de build para frontend

automação

Automação é a aplicação de técnicas

computadorizadas ou mecânicas para diminuir

o uso de mão-de-obra em qualquer processo,

especialmente o uso de robôs nas linhas de

produção. Lacombe (2004)

Page 4: Automação de build para frontend

automação para o desenvolvimento de softwares

É o processo de escrita de um programa de computador para executar uma série de tarefas automaticamente.

Estas tarefas servem desde para garantia do funcionamento como para perfomance de um software.

Page 5: Automação de build para frontend

performance para frontend

Desde o surgimento do HTML5, construir aplicações Web ficou mais complexo.A complexidade não está só nas linguagens, que evoluiram muito nos últimos anos.Mas também na diversidade de dispositivos para acessar a Internet, que aumentaram rapidamente.

Page 6: Automação de build para frontend

build de frontend

O build é a versão final compilada de um software.

No caso do frontend é o pacote de código fonte já testado e otimizado.

Page 7: Automação de build para frontend

Tasks para construção do build

● Testes de JS (unit & e2e)

● CSS pré processado

● Gerenciamento de Sprites (imagens do CSS)

● Concatenação e minização dos arquivos JS e CSS

Page 8: Automação de build para frontend

Tasks para construção do build

● Output de template engines

● Minimização de imagens

● Minimização de html

● Validação de código (w3c, lint …)

entre outras...

Page 9: Automação de build para frontend

Ferramentas

task runner tools

Page 10: Automação de build para frontend

GRUNT JS

npm + Node.js

Page 11: Automação de build para frontend

GRUNT JS: instalação

sudo npm install -g grunt-cli

Page 12: Automação de build para frontend

GRUNT JS: preparando seu projeto

package.json

Gruntfile.js

Page 13: Automação de build para frontend

GRUNT JS: package.json

{

"name": "my-project-name",

"version": "0.1.0",

"devDependencies": {

"grunt": "~0.4.2",

"grunt-contrib-jshint": "~0.6.3",

"grunt-contrib-nodeunit": "~0.2.0",

"grunt-contrib-uglify": "~0.2.2"

}

}

Page 14: Automação de build para frontend

GRUNT JS: Gruntfile.jsmodule.exports = function(grunt) {

// Project configuration. grunt.initConfig({ pkg: grunt.file.readJSON('package.json'), uglify: { options: { banner: '/*! <%= pkg.name %> <%= grunt.template.today("yyyy-mm-dd") %> */\n' }, build: { src: 'src/<%= pkg.name %>.js', dest: 'build/<%= pkg.name %>.min.js' } } });

// Load the plugin that provides the "uglify" task. grunt.loadNpmTasks('grunt-contrib-uglify');

// Default task(s). grunt.registerTask('default', ['uglify']);

};

Page 15: Automação de build para frontend

exemplos

Page 17: Automação de build para frontend

@vanessametonini

obrigada!