18
ZOSTAŃ NINJA JOOMLA! DEVELOPEREM Automatyzacja zadań w procesie tworzenia szablonów i rozszerzeń dla Joomla!

ZOSTAŃ NINJA JOOMLA! DEVELOPEREM Automatyzacja zadań w procesie tworzenia szablonów i rozszerzeń dla Joomla!

Embed Size (px)

DESCRIPTION

Prezentacja na temat automatyzacji zadań w procesie tworzenia stron opartych na Joomla! W prezentacji zostały przedstaiwone sposoby automatyzacji w oparciu o Grunt.js oraz zostały pokrótce omówione możliwości tego rozszerzenia. Prezentacja była przedstawiana na JUG Silesia w dniu 14-go grudnia 2013, w Katowicach.

Citation preview

Page 1: ZOSTAŃ NINJA JOOMLA! DEVELOPEREM Automatyzacja zadań w procesie tworzenia szablonów i rozszerzeń dla Joomla!

ZOSTAŃ NINJA JOOMLA! DEVELOPEREM

Automatyzacja zadań w procesie tworzenia szablonów i rozszerzeń dla

Joomla!

Page 2: ZOSTAŃ NINJA JOOMLA! DEVELOPEREM Automatyzacja zadań w procesie tworzenia szablonów i rozszerzeń dla Joomla!

Piotr Nalepa - blog.piotrnalepa.pl 2

KIM JESTEM?

Page 3: ZOSTAŃ NINJA JOOMLA! DEVELOPEREM Automatyzacja zadań w procesie tworzenia szablonów i rozszerzeń dla Joomla!

Piotr Nalepa - blog.piotrnalepa.pl 3

MÓJ BLOG

Page 4: ZOSTAŃ NINJA JOOMLA! DEVELOPEREM Automatyzacja zadań w procesie tworzenia szablonów i rozszerzeń dla Joomla!

Piotr Nalepa - blog.piotrnalepa.pl 4

W KÓŁKO TO SAMO

• “Manualne” sprawdzenie poprawności kodu JS/CSS,

• “Manualna” kompresja obrazków,• “Manualna” kompresja kodu CSS/JS,• “Manualne” przygotowywanie paczki

z szablonem lub rozszerzeniem Joomla!

Page 5: ZOSTAŃ NINJA JOOMLA! DEVELOPEREM Automatyzacja zadań w procesie tworzenia szablonów i rozszerzeń dla Joomla!

Piotr Nalepa - blog.piotrnalepa.pl 5

NIGDY WIĘCEJ!

Page 6: ZOSTAŃ NINJA JOOMLA! DEVELOPEREM Automatyzacja zadań w procesie tworzenia szablonów i rozszerzeń dla Joomla!

Piotr Nalepa - blog.piotrnalepa.pl 6

GRUNT.JS

Page 7: ZOSTAŃ NINJA JOOMLA! DEVELOPEREM Automatyzacja zadań w procesie tworzenia szablonów i rozszerzeń dla Joomla!

Piotr Nalepa - blog.piotrnalepa.pl 7

GRUNT.JS - INSTALACJA

1. Node.js2. npm install -g grunt-cli3. npm install grunt --save-dev4. grunt

Page 8: ZOSTAŃ NINJA JOOMLA! DEVELOPEREM Automatyzacja zadań w procesie tworzenia szablonów i rozszerzeń dla Joomla!

Piotr Nalepa - blog.piotrnalepa.pl 8

GRUNT.JS - INICJALIZACJA

1. Gruntfile.js2. Package.json

Page 9: ZOSTAŃ NINJA JOOMLA! DEVELOPEREM Automatyzacja zadań w procesie tworzenia szablonów i rozszerzeń dla Joomla!

Piotr Nalepa - blog.piotrnalepa.pl 9

PACKAGE.JSON

{ "name": "joomla-projekt", "version": "1.0.0", "devDependencies": {

"grunt": "~0.4.2", "grunt-contrib-watch": "~0.5.3", "grunt-contrib-uglify": "~0.2.7"

} }

Page 10: ZOSTAŃ NINJA JOOMLA! DEVELOPEREM Automatyzacja zadań w procesie tworzenia szablonów i rozszerzeń dla Joomla!

Piotr Nalepa - blog.piotrnalepa.pl 10

GRUNTFILE.JSmodule.exports = function(grunt) {

grunt.initConfig({ pkg: grunt.file.readJSON('package.json'),uglify: { options: {src : ['**/*.js', '!*.min.js'],cwd : 'dev/js/',dest : 'prod/js/',expand : true,

} }

});

grunt.loadNpmTasks('grunt-contrib-uglify'); grunt.registerTask('default', ['uglify']);

};

Page 11: ZOSTAŃ NINJA JOOMLA! DEVELOPEREM Automatyzacja zadań w procesie tworzenia szablonów i rozszerzeń dla Joomla!

Piotr Nalepa - blog.piotrnalepa.pl 11

MINIFIKACJA KODU

Automatyczne kompresowanie kodu JS/CSS po dokonaniu zmian w plikach.

Page 12: ZOSTAŃ NINJA JOOMLA! DEVELOPEREM Automatyzacja zadań w procesie tworzenia szablonów i rozszerzeń dla Joomla!

Piotr Nalepa - blog.piotrnalepa.pl 12

PRZYSPIESZENIE PROCESÓW

• Automatyczne przetwarzanie kodu napisanego w LESS lub SASS do CSS,

• Automatyczna kompresja obrazków,• Automatyczne generowanie

sprite’ów.

Page 13: ZOSTAŃ NINJA JOOMLA! DEVELOPEREM Automatyzacja zadań w procesie tworzenia szablonów i rozszerzeń dla Joomla!

Piotr Nalepa - blog.piotrnalepa.pl 13

PODGLĄD ZMIAN NA ŻYWO

Page 14: ZOSTAŃ NINJA JOOMLA! DEVELOPEREM Automatyzacja zadań w procesie tworzenia szablonów i rozszerzeń dla Joomla!

Piotr Nalepa - blog.piotrnalepa.pl 14

WALIDACJA KODU

• JSLint/JSHint• CSSLint

Page 15: ZOSTAŃ NINJA JOOMLA! DEVELOPEREM Automatyzacja zadań w procesie tworzenia szablonów i rozszerzeń dla Joomla!

Piotr Nalepa - blog.piotrnalepa.pl 15

KOD PRODUKCYJNY

• Wyodrębnienie tylko najważniejszych plików projektu,

• Kompresja obrazków,• Kompresja kodu JS/CSS,• Łączenie wielu plików w jeden główny,• Przygotowanie paczki instalacyjnej dla Joomla!

Page 16: ZOSTAŃ NINJA JOOMLA! DEVELOPEREM Automatyzacja zadań w procesie tworzenia szablonów i rozszerzeń dla Joomla!

Piotr Nalepa - blog.piotrnalepa.pl 16

SZCZĘŚLIWY DEVELOPER = SZCZĘŚLIWY KLIENT

Page 17: ZOSTAŃ NINJA JOOMLA! DEVELOPEREM Automatyzacja zadań w procesie tworzenia szablonów i rozszerzeń dla Joomla!

Piotr Nalepa - blog.piotrnalepa.pl 17

PRZYDATNE LINKI

Grunt.js http://gruntjs.com/

Node.js http://nodejs.org/

Mój blog http://blog.piotrnalepa.pl/

Page 18: ZOSTAŃ NINJA JOOMLA! DEVELOPEREM Automatyzacja zadań w procesie tworzenia szablonów i rozszerzeń dla Joomla!

Piotr Nalepa - blog.piotrnalepa.pl 18