SlideShare uma empresa Scribd logo
1 de 34
Baixar para ler offline
Unicsovics Milán
milan.unicsovics@sztaki.mta.hu
slideshare.net/thesnapdragon
Okostelefon eladások a világon (%), forrás: Gartner
Firefox OS
➵ Customer: "A friend told me I'm using a thing
called 'Linux'. What is it?"
➵ Tech Support: "An operating system."
➵ Customer: "Like Firefox right?"
Firefox OS
● egy mobil OS, mely a böngészőbe bootol be
● alacsony ár:
○ fejlődő országok ellátásának képessége
● 3 havonta frissülő főverzió
○ rendszerfrissítések telepítése over-the-air
● csak webes technológiák használata
○ meglévő webfejlesztési ismeretek használata
○ ~> natív alkalmazás használati élmény
○ write once, deploy everywhere
Mozilla WebAPI: https://wiki.mozilla.org/WebAPI
WebAPI példa
WebUSB draft
● app = bármely web alkalmazás + manifest
● publikálási lehetőségek:
○ hosted app
○ packaged app (.zip fájlban)
● packaged alkalmazások típusai:
○ plain
○ privileged
○ certified
Alkalmazások és a Firefox Marketplace
Manifest példa
Architektúra röviden
● Gonk: kernel + HAL
● Gecko: böngészőmotor
○ futtatókörnyezet (pl.: Javascript motor)
● Gaia: teljes felhasználói felület
○ ez is HTML, CSS, JS
Gecko
● nyílt forrású, többplatformos böngészőmotor
● Netscape később Mozilla fejlesztésében
● tartalmaz: networking stack, graphics stack,
renderelő motor,
JS virtuális gép
Böngészők részesedése, forrás: statcounter.com
Partnerek
Fejlesztői telefonok
Geeksphone Keon Geeksphone Peak
Első fecskék
Alcatel One Touch Fire
Méret: 114 x 62 x 12.5 mm
Kijelző: 320 x 480 pixel, 3.5
inch
Chipset: Qualcomm MSM7225A
Snapdragon
CPU: 1.0 GHz Cortex-A5
GPU: Adreno 200
Mem.: 512 MB ROM, 256 MB
RAM
Akkum.: Li-Ion 1200 mAh
ZTE Open
HTML5 és a mobil web
… I think the biggest mistake that we made, as a company,
is betting too much on HTML5 as opposed to native…
because it just wasn’t there.
Mark Zuckerberg, 2012
HTML5 és a mobil web
… I think the biggest mistake that we made, as a company,
is betting too much on HTML5 as opposed to native…
because it just wasn’t there.
Mark Zuckerberg, 2012
… And it's not that HTML5 is bad. I'm actually, on long-
term, really excited about it.
Mark Zuckerberg, 2012
People use this platform as the basis for tremendous
creativity. There's incredible innovation happening out
there, and people thinking of all kinds of amazing things, at
any moment.
Sir Tim Berners Lee, 2013
Workflow
● a szoftver minőségét a fejlesztés
folyamatának minősége határozza meg
● Yeoman: eszközkészlet és munkafolyamat
modern webalkalmazások fejlesztéséhez
Yeoman eszközkészlet
● Yo
○ scaffolding tool
○ sablon generátor
○ konfigurációs fájlok előállítása a fejlesztéshez
● Bower
○ dependency management tool
○ JS, CSS függőségek intelligens kezelése
● Grunt
○ task runner tool
○ preview: webszerver + live reload
○ test: egység, és integrációs tesztek futtatása
○ build: uglify, minify
Yo példák
# teljes frontend alkalmazás
$ yo webapp
# teljes Wordpress blog környezet
$ yo wordpress
# teljes AngularJS projekt
$ yo angular myapp
# AngularJS Controller
$ yo angular:controller myController
# AngularJS View
$ yo angular:view myView
Bower, Grunt példák
# Bower keresés, telepítés, update
$ bower search jquery
$ bower install jquery
$ bower update
# Grunt live reload server indítása
$ grunt server
# Grunt test
$ grunt test
# Grunt project build
$ grunt build
Responsive design
● sokféle felbontást használnak az eszközök
● elrendezés dinamikusan változik a
felbontástól függően
● Twitter Bootstrap
○ CSS keretrendszer
○ tipográfia, űrlapok, gombok, navigáció és egyéb
grafikus komponensek
○ opcionális JS kiegészítés
Bootstrap példák #1
Bootstrap példák #2
Bootstrap példák #3
AngularJS
● MVC Javascript keretrendszer a Google-től
● deklaratív programozás -> GUI
○ kétirányú adatkötés a HTML-lel -> modell alapján
automatikusan frissül a view
○ DOM-tól való függetlenség -> tesztelhetőség
● imperatív programozás -> üzleti logika
○ megvalósítás controller-ekben
○ backend: REST, JSONP
AngularJS #2
● meghatározza a fejlesztési munkafolyamatot
1. UI tervezése, deklaratív implementáció
2. Üzleti logika fejlesztése
3. Tesztelés
● egység, és integrációs tesztek:
○ Jasmine: viselkedés alapú tesztelést tesz lehetővé
○ DOM-tól független
○ tesztek futtatása automatikusan (TDD, BDD)
AngularJS GUI
AngularJS üzleti logika
AngularJS tesztelés
Köszönöm a figyelmet!
milan.unicsovics@sztaki.mta.hu
slideshare.net/thesnapdragon
Felhasznált anyagok
● http://www.slideshare.net/daf182 (Nagy Gergő)
● http://www.slideshare.net/matenadasdi1/firefox-os-weekend (Nádasdi
Máté)
● http://www.slideshare.net/janjongboom (Jan Jongboom)
● http://olavhn.github.io/shower/intro2.html (Olav Nymoen)
● http://www.slideshare.net/KAMI911 (Szalai Kálmán)
● http://slides.openjck.com/s/firefox-os/ (John Karahalis)

Mais conteúdo relacionado

Destaque

Emarsys CD reggeli 2015.06.26.
Emarsys CD reggeli 2015.06.26.Emarsys CD reggeli 2015.06.26.
Emarsys CD reggeli 2015.06.26.Milán Unicsovics
 
Fs2episode3 121013223231-phpapp01
Fs2episode3 121013223231-phpapp01Fs2episode3 121013223231-phpapp01
Fs2episode3 121013223231-phpapp01Christian Dumpit
 
Detailedlessonplaninfilipino 130618124802-phpapp01
Detailedlessonplaninfilipino 130618124802-phpapp01Detailedlessonplaninfilipino 130618124802-phpapp01
Detailedlessonplaninfilipino 130618124802-phpapp01Christian Dumpit
 
Detailedlessonplaninenglishii 130308032727-phpapp02
Detailedlessonplaninenglishii 130308032727-phpapp02Detailedlessonplaninenglishii 130308032727-phpapp02
Detailedlessonplaninenglishii 130308032727-phpapp02Christian Dumpit
 
Fs2full 130316065959-phpapp02
Fs2full 130316065959-phpapp02Fs2full 130316065959-phpapp02
Fs2full 130316065959-phpapp02Christian Dumpit
 

Destaque (6)

Emarsys CD reggeli 2015.06.26.
Emarsys CD reggeli 2015.06.26.Emarsys CD reggeli 2015.06.26.
Emarsys CD reggeli 2015.06.26.
 
Fs2episode3 121013223231-phpapp01
Fs2episode3 121013223231-phpapp01Fs2episode3 121013223231-phpapp01
Fs2episode3 121013223231-phpapp01
 
Detailedlessonplaninfilipino 130618124802-phpapp01
Detailedlessonplaninfilipino 130618124802-phpapp01Detailedlessonplaninfilipino 130618124802-phpapp01
Detailedlessonplaninfilipino 130618124802-phpapp01
 
Detailedlessonplaninenglishii 130308032727-phpapp02
Detailedlessonplaninenglishii 130308032727-phpapp02Detailedlessonplaninenglishii 130308032727-phpapp02
Detailedlessonplaninenglishii 130308032727-phpapp02
 
Field study 2
Field study 2Field study 2
Field study 2
 
Fs2full 130316065959-phpapp02
Fs2full 130316065959-phpapp02Fs2full 130316065959-phpapp02
Fs2full 130316065959-phpapp02
 

Semelhante a Firefox OS presentation

A világ változik, változik a Mozilla is
A világ változik, változik a Mozilla isA világ változik, változik a Mozilla is
A világ változik, változik a Mozilla isKálmán "KAMI" Szalai
 
Firefox Thunderbird Seamonkey - felpörgetve!
Firefox Thunderbird Seamonkey - felpörgetve!Firefox Thunderbird Seamonkey - felpörgetve!
Firefox Thunderbird Seamonkey - felpörgetve!Kálmán "KAMI" Szalai
 
Cross Platform mobil app fejlesztés HTML5 JavaScript alapokon
Cross Platform mobil app fejlesztés HTML5 JavaScript alapokonCross Platform mobil app fejlesztés HTML5 JavaScript alapokon
Cross Platform mobil app fejlesztés HTML5 JavaScript alapokoneRise
 
Firefox OS - Az Open Web megérkezik az okostelefonokra
Firefox OS - Az Open Web megérkezik az okostelefonokraFirefox OS - Az Open Web megérkezik az okostelefonokra
Firefox OS - Az Open Web megérkezik az okostelefonokraKálmán "KAMI" Szalai
 
Dr. Ekler Péter: A mobilszoftver két értéke – legjobb gyakorlatok és újdonság...
Dr. Ekler Péter: A mobilszoftver két értéke – legjobb gyakorlatok és újdonság...Dr. Ekler Péter: A mobilszoftver két értéke – legjobb gyakorlatok és újdonság...
Dr. Ekler Péter: A mobilszoftver két értéke – legjobb gyakorlatok és újdonság...Mobil Weekend
 
Android fejlesztés
Android fejlesztésAndroid fejlesztés
Android fejlesztésOpen Academy
 
Firefox OS előadás a Corvinus Nyári Egyetem rendezvényen
Firefox OS előadás a Corvinus Nyári Egyetem rendezvényenFirefox OS előadás a Corvinus Nyári Egyetem rendezvényen
Firefox OS előadás a Corvinus Nyári Egyetem rendezvényenKálmán "KAMI" Szalai
 
Firefox OS Szakmai Esti Mesek ELTE IK
Firefox OS Szakmai Esti Mesek ELTE IKFirefox OS Szakmai Esti Mesek ELTE IK
Firefox OS Szakmai Esti Mesek ELTE IKdaf182
 
Felhő alapú számítástechnika
Felhő alapú számítástechnikaFelhő alapú számítástechnika
Felhő alapú számítástechnikaKároly Novák
 
StreamProxy - University of Pannonia
StreamProxy - University of PannoniaStreamProxy - University of Pannonia
StreamProxy - University of PannoniaBálint Szekeres
 
PHP alkalmazások minőségbiztosítása
PHP alkalmazások minőségbiztosításaPHP alkalmazások minőségbiztosítása
PHP alkalmazások minőségbiztosításaFerenc Kovács
 
Nyílt forráskódú VideoKonferencia mindenkinek! (A GÉANT4 JRA4 T4 és T5 eredmé...
Nyílt forráskódú VideoKonferencia mindenkinek! (A GÉANT4 JRA4 T4 és T5 eredmé...Nyílt forráskódú VideoKonferencia mindenkinek! (A GÉANT4 JRA4 T4 és T5 eredmé...
Nyílt forráskódú VideoKonferencia mindenkinek! (A GÉANT4 JRA4 T4 és T5 eredmé...Mihály Mészáros
 
„Mozilla: a mi hősünk Te vagy!” előadás a Corvinus Nyári Egyetem rendezvényen
„Mozilla: a mi hősünk Te vagy!” előadás a Corvinus Nyári Egyetem rendezvényen„Mozilla: a mi hősünk Te vagy!” előadás a Corvinus Nyári Egyetem rendezvényen
„Mozilla: a mi hősünk Te vagy!” előadás a Corvinus Nyári Egyetem rendezvényenKálmán "KAMI" Szalai
 

Semelhante a Firefox OS presentation (20)

A világ változik, változik a Mozilla is
A világ változik, változik a Mozilla isA világ változik, változik a Mozilla is
A világ változik, változik a Mozilla is
 
Diagram és barcode
Diagram és barcodeDiagram és barcode
Diagram és barcode
 
Firefox Thunderbird Seamonkey - felpörgetve!
Firefox Thunderbird Seamonkey - felpörgetve!Firefox Thunderbird Seamonkey - felpörgetve!
Firefox Thunderbird Seamonkey - felpörgetve!
 
Cross Platform mobil app fejlesztés HTML5 JavaScript alapokon
Cross Platform mobil app fejlesztés HTML5 JavaScript alapokonCross Platform mobil app fejlesztés HTML5 JavaScript alapokon
Cross Platform mobil app fejlesztés HTML5 JavaScript alapokon
 
Firefox OS - Az Open Web megérkezik az okostelefonokra
Firefox OS - Az Open Web megérkezik az okostelefonokraFirefox OS - Az Open Web megérkezik az okostelefonokra
Firefox OS - Az Open Web megérkezik az okostelefonokra
 
Dr. Ekler Péter: A mobilszoftver két értéke – legjobb gyakorlatok és újdonság...
Dr. Ekler Péter: A mobilszoftver két értéke – legjobb gyakorlatok és újdonság...Dr. Ekler Péter: A mobilszoftver két értéke – legjobb gyakorlatok és újdonság...
Dr. Ekler Péter: A mobilszoftver két értéke – legjobb gyakorlatok és újdonság...
 
A Firefox-on túl is Mozilla
A Firefox-on túl is MozillaA Firefox-on túl is Mozilla
A Firefox-on túl is Mozilla
 
Firefox OS beszámoló
Firefox OS beszámolóFirefox OS beszámoló
Firefox OS beszámoló
 
Android fejlesztés
Android fejlesztésAndroid fejlesztés
Android fejlesztés
 
Firefox OS előadás a Corvinus Nyári Egyetem rendezvényen
Firefox OS előadás a Corvinus Nyári Egyetem rendezvényenFirefox OS előadás a Corvinus Nyári Egyetem rendezvényen
Firefox OS előadás a Corvinus Nyári Egyetem rendezvényen
 
Mozilla: a mi hősünk te vagy!
Mozilla: a mi hősünk te vagy!Mozilla: a mi hősünk te vagy!
Mozilla: a mi hősünk te vagy!
 
Firefox OS - Szakmai nap
Firefox OS - Szakmai napFirefox OS - Szakmai nap
Firefox OS - Szakmai nap
 
Firefox OS Szakmai Esti Mesek ELTE IK
Firefox OS Szakmai Esti Mesek ELTE IKFirefox OS Szakmai Esti Mesek ELTE IK
Firefox OS Szakmai Esti Mesek ELTE IK
 
Felhő alapú számítástechnika
Felhő alapú számítástechnikaFelhő alapú számítástechnika
Felhő alapú számítástechnika
 
StreamProxy - University of Pannonia
StreamProxy - University of PannoniaStreamProxy - University of Pannonia
StreamProxy - University of Pannonia
 
PHP alkalmazások minőségbiztosítása
PHP alkalmazások minőségbiztosításaPHP alkalmazások minőségbiztosítása
PHP alkalmazások minőségbiztosítása
 
Nyílt forráskódú VideoKonferencia mindenkinek! (A GÉANT4 JRA4 T4 és T5 eredmé...
Nyílt forráskódú VideoKonferencia mindenkinek! (A GÉANT4 JRA4 T4 és T5 eredmé...Nyílt forráskódú VideoKonferencia mindenkinek! (A GÉANT4 JRA4 T4 és T5 eredmé...
Nyílt forráskódú VideoKonferencia mindenkinek! (A GÉANT4 JRA4 T4 és T5 eredmé...
 
SZTAKI presentation
SZTAKI presentationSZTAKI presentation
SZTAKI presentation
 
A Mozilla nem csak Firefox
A Mozilla nem csak FirefoxA Mozilla nem csak Firefox
A Mozilla nem csak Firefox
 
„Mozilla: a mi hősünk Te vagy!” előadás a Corvinus Nyári Egyetem rendezvényen
„Mozilla: a mi hősünk Te vagy!” előadás a Corvinus Nyári Egyetem rendezvényen„Mozilla: a mi hősünk Te vagy!” előadás a Corvinus Nyári Egyetem rendezvényen
„Mozilla: a mi hősünk Te vagy!” előadás a Corvinus Nyári Egyetem rendezvényen
 

Firefox OS presentation

  • 2. Okostelefon eladások a világon (%), forrás: Gartner
  • 3. Firefox OS ➵ Customer: "A friend told me I'm using a thing called 'Linux'. What is it?" ➵ Tech Support: "An operating system." ➵ Customer: "Like Firefox right?"
  • 4. Firefox OS ● egy mobil OS, mely a böngészőbe bootol be ● alacsony ár: ○ fejlődő országok ellátásának képessége ● 3 havonta frissülő főverzió ○ rendszerfrissítések telepítése over-the-air ● csak webes technológiák használata ○ meglévő webfejlesztési ismeretek használata ○ ~> natív alkalmazás használati élmény ○ write once, deploy everywhere
  • 5.
  • 9. ● app = bármely web alkalmazás + manifest ● publikálási lehetőségek: ○ hosted app ○ packaged app (.zip fájlban) ● packaged alkalmazások típusai: ○ plain ○ privileged ○ certified Alkalmazások és a Firefox Marketplace
  • 11. Architektúra röviden ● Gonk: kernel + HAL ● Gecko: böngészőmotor ○ futtatókörnyezet (pl.: Javascript motor) ● Gaia: teljes felhasználói felület ○ ez is HTML, CSS, JS
  • 12.
  • 13. Gecko ● nyílt forrású, többplatformos böngészőmotor ● Netscape később Mozilla fejlesztésében ● tartalmaz: networking stack, graphics stack, renderelő motor, JS virtuális gép
  • 17. Első fecskék Alcatel One Touch Fire Méret: 114 x 62 x 12.5 mm Kijelző: 320 x 480 pixel, 3.5 inch Chipset: Qualcomm MSM7225A Snapdragon CPU: 1.0 GHz Cortex-A5 GPU: Adreno 200 Mem.: 512 MB ROM, 256 MB RAM Akkum.: Li-Ion 1200 mAh ZTE Open
  • 18. HTML5 és a mobil web … I think the biggest mistake that we made, as a company, is betting too much on HTML5 as opposed to native… because it just wasn’t there. Mark Zuckerberg, 2012
  • 19. HTML5 és a mobil web … I think the biggest mistake that we made, as a company, is betting too much on HTML5 as opposed to native… because it just wasn’t there. Mark Zuckerberg, 2012 … And it's not that HTML5 is bad. I'm actually, on long- term, really excited about it. Mark Zuckerberg, 2012 People use this platform as the basis for tremendous creativity. There's incredible innovation happening out there, and people thinking of all kinds of amazing things, at any moment. Sir Tim Berners Lee, 2013
  • 20. Workflow ● a szoftver minőségét a fejlesztés folyamatának minősége határozza meg ● Yeoman: eszközkészlet és munkafolyamat modern webalkalmazások fejlesztéséhez
  • 21. Yeoman eszközkészlet ● Yo ○ scaffolding tool ○ sablon generátor ○ konfigurációs fájlok előállítása a fejlesztéshez ● Bower ○ dependency management tool ○ JS, CSS függőségek intelligens kezelése ● Grunt ○ task runner tool ○ preview: webszerver + live reload ○ test: egység, és integrációs tesztek futtatása ○ build: uglify, minify
  • 22. Yo példák # teljes frontend alkalmazás $ yo webapp # teljes Wordpress blog környezet $ yo wordpress # teljes AngularJS projekt $ yo angular myapp # AngularJS Controller $ yo angular:controller myController # AngularJS View $ yo angular:view myView
  • 23. Bower, Grunt példák # Bower keresés, telepítés, update $ bower search jquery $ bower install jquery $ bower update # Grunt live reload server indítása $ grunt server # Grunt test $ grunt test # Grunt project build $ grunt build
  • 24. Responsive design ● sokféle felbontást használnak az eszközök ● elrendezés dinamikusan változik a felbontástól függően ● Twitter Bootstrap ○ CSS keretrendszer ○ tipográfia, űrlapok, gombok, navigáció és egyéb grafikus komponensek ○ opcionális JS kiegészítés
  • 28. AngularJS ● MVC Javascript keretrendszer a Google-től ● deklaratív programozás -> GUI ○ kétirányú adatkötés a HTML-lel -> modell alapján automatikusan frissül a view ○ DOM-tól való függetlenség -> tesztelhetőség ● imperatív programozás -> üzleti logika ○ megvalósítás controller-ekben ○ backend: REST, JSONP
  • 29. AngularJS #2 ● meghatározza a fejlesztési munkafolyamatot 1. UI tervezése, deklaratív implementáció 2. Üzleti logika fejlesztése 3. Tesztelés ● egység, és integrációs tesztek: ○ Jasmine: viselkedés alapú tesztelést tesz lehetővé ○ DOM-tól független ○ tesztek futtatása automatikusan (TDD, BDD)
  • 34. Felhasznált anyagok ● http://www.slideshare.net/daf182 (Nagy Gergő) ● http://www.slideshare.net/matenadasdi1/firefox-os-weekend (Nádasdi Máté) ● http://www.slideshare.net/janjongboom (Jan Jongboom) ● http://olavhn.github.io/shower/intro2.html (Olav Nymoen) ● http://www.slideshare.net/KAMI911 (Szalai Kálmán) ● http://slides.openjck.com/s/firefox-os/ (John Karahalis)