automação de build para frontend

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

Upload: vanessa-me-tonini

Post on 25-May-2015

551 views

Category:

Technology


3 download

DESCRIPTION

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

TRANSCRIPT

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!