Mozilla z pohledu v - PowerPoint PPT Presentation

1 / 18
About This Presentation
Title:

Mozilla z pohledu v

Description:

Mozilla z pohledu v voj e David Majda, CZilla majda_at_czilla.cz 2. 5. 2006 prezentace na p edm t Linux (SWI043) na MFF UK – PowerPoint PPT presentation

Number of Views:54
Avg rating:3.0/5.0
Slides: 19
Provided by: LabM151
Category:
Tags: mozilla | pohledu | sisal

less

Transcript and Presenter's Notes

Title: Mozilla z pohledu v


1
Mozilla z pohledu vývojáre
  • David Majda, CZilla
  • majda_at_czilla.cz
  • 2. 5. 2006 prezentace na predmet Linux (SWI043)
    na MFF UK

2
Co se dovíte, aneb osnova
  • ? historie Mozilly
  • ? architektura Mozilly
  • ? tvorba GUI, jazyk XUL
  • jak si napsat rozšírení
  • XULRunner, aneb svetlé zítrky
  • nekolik malých lákadel vývoje po Mozillou
  • (tvorba pluginu)

minule
dnes
3
Architektura aplikací Mozilly (2/2)
4
XUL (cti zul)
  • XML User Interface Language
  • GUI zapsáno deklarativne v XML
  • jen jednou pro všechny platformy
  • vzhled v CSS
  • oživeno JavaScriptem
  • jako webové stránky
  • ? kdo umí tvorit webové stránky, umí i psát
    aplikace pod Mozillou

5
Rozširitelnost
  • architektura snadno rozširitelná
  • nové XUL, CSS a JS soubory (bez rekompilace)
  • nové XPCOM komponenty (typicky nutná kompilace)
  • pro pohodlí sbalené do XPI balícku, doplnené
    metadaty ? rozšírení

Zde jsme minule skoncili
6
Struktura rozšírení
  • install.rdf
  • chrome.manifest
  • plugins/
  • ...
  • components/
  • ...
  • chrome/
  • content/
  • skin/
  • locale/

7
Instalace rozšírení
  • globální pro konkrétního uživatele
  • mnoho metod
  • zkopírování XPI do adresáre extensions
  • pointer na XPI z tohoto adresáre
  • záznam v registrech (Windows)
  • otevrení v prohlížeci
  • správce rozšírení
  • instalace/odinstalace
  • konfigurace, zakazování,

8
XULRunner
  • runtime prostredí pro beh XUL aplikací
  • pouze infrastruktura nutná pro beh XUL a XPCOM
    komponenty zajištující funkcionalitu dodává
    aplikace
  • lze sdílet mezi aplikacemi (ale není nutné)

XULRunner
9
Další lákadla vývoje pod Mozillou
  • tag ltcanvasgt
  • vylepšení JavaScriptu
  • funkcionální programování
  • E4X
  • iterátory a generátory (budoucnost)
  • integrace Pythonu (budoucnost)

10
Tag ltcanvasgt
  • vyznacuje ve stránce oblast pro kreslení
  • samotné kreslení JavaScript
  • bohaté 2D API podobné bežným grafickým toolkitum
  • umí i pruhlednost, gradienty, vzorky, cesty,
    bézierovy krivky, transformace
  • vymyslel Apple, nyní pod krídly WHATWG
  • ?

ukázka
11
JavaScript 1.6 a dál (1/3)
  • Funkcionální programování

squares 1, 2, 3.map(Math.sqrt) // 1, 4,
9 filtered 12, 5, 8, 130, 44.filter(
function(element, index, array) return
element gt 10 ) // 12, 130, 44 function
printElement(element, index, array)
alert("" index " is " element) 2, 5,
9.forEach(printElement) // 0 is 2 // 1
is 5 // 2 is 9
12
JavaScript 1.6 a dál (2/3)
  • E4X zaclenení syntaxe pro práci v XML/DOM prímo
    do JavaScriptu

function createTable() // vytvoríme E4X
objekt pro dokument var doc new
XML(document) var mytablebody
doc..body.TABLE.TBODY for (var j 0 j lt 2
j) // pridáme prázdný rádek tabulky
mytablebody.TRj "" // pridáme bunky s
obsahem for (var i 0 i lt 2 i)
mytablebody.TRj.TDi "cell is row " j
", column " i // nastavíme tabulce
hodnotu atributu border doc..body.TABLE._at_bor
der 2
13
JavaScript 1.6 a dál (3/3)
  • Generátory, iterátory à la Python
  • JavaScript 1.7

jsgt function count(n) for (var i 0 i lt
n i) yield i jsgt g
count(10) object Generator jsgt g.next() 0 jsgt
g.next() 1 jsgt two_to_nine i for i in
g 2,3,4,5,6,7,8,9 jsgt squares_to_20 i i for
i in count(20) 0,1,4,9,16,25,36,49,64,81,100,121,
144,169,196,225,256,289,324,361
14
Integrace Pythonu
  • duvod prilákání vývojáru v Pythonu, využití
    knihoven
  • pujde použít všude, kde dnes JavaScript
  • XUL, XPCOM,
  • v Gecko 1.9/Firefox 3.0

15
Kdy vyvíjet pod Mozillou?
?
  • Když potrebujete
  • multiplatformnost
  • práci s HTML/XML/CSS
  • sítové služby, web services
  • lokalizovatelnost
  • rychlý vývoj, casté zmeny
  • velké aplikace (XPCOM, modularizace)

16
Kdy naopak Mozillu nepoužívat?
?
  • Když chcete
  • nárocnou grafiku (work in progress)
  • hrubý výkon (cástecne lze v C a XPCOM)
  • využívat všechny možnosti nativního GUI
  • prístup z kteréhokoliv pocítace na svete (lepší
    je webová aplikace)

17
Kam pro další informace
  • http//developer.mozilla.org/
  • centrum pro vývojáre Mozilly
  • velké množství dokumentace
  • wiki rychlý vývoj, mužete se zapojit
  • http//www.czilla.cz/vyvojari/
  • rozcestník v ceštine
  • dokumentace podstatne méne
  • také se mužete zapojit -)

18
Dotazy?
Write a Comment
User Comments (0)
About PowerShow.com