ºÝºÝߣ

ºÝºÝߣShare a Scribd company logo
EL?AD?:
Inotay Kriszti¨¢n
krisztian.inotay@gmail.com
BlackBerry10 alap¨² nat¨ªv
alkalmaz¨¢sfejleszt¨¦s
BME-AutSoft KFT.
BlackBerry 10 OS
? Egy fokozatos fejleszt¨¦si folyamat
eredm¨¦nye
¨C BlackBerry Tablet OS (PlayBook)
¨C BlackBerry Tablet OS 2.0 (PlayBook)
¨C BlackBerry 10
? Nagyon friss, janu¨¢r 30.-¨¢n jelent meg
? Az ¨²j funkci¨®kat integr¨¢lni fogj¨¢k a r¨¦gi
Tablet OS-be is
BlackBerry Tablet OS -1-
? Teljes m¨¦rt¨¦kben saj¨¢t fejleszt¨¦s
? QNX Neutrino alapok (valaki eml¨¦kszik a
floppy-s v¨¢ltozatra? ? )
? Minden tekintetben
egyedi fel¨¹letet kapott
BlackBerry PlayBook
BlackBerry Tablet OS -2-
? Teljes ¨¦rt¨¦k? gesztus alap¨² vez¨¦rl¨¦s, az
eszk?z k¨¢v¨¢ja is akt¨ªv szerepet kap benne
? BlackBerry Flow
? Sok t¨¢mogatott fejleszt?i platform:
¨C BlackBerry Java
¨C Adobe AIR
¨C Nat¨ªv C/C++
¨C Android
Micsoda?! Android??
? Az OS r¨¦sze az Android Player
? 2.3. ¨Cas Gingerbread alkalmaz¨¢sok nat¨ªv
futtat¨¢sa
? Portol¨¢s sz¨¹ks¨¦ges
? Az alkalmaz¨¢sok az Android verzi¨®nak
megfelel? UI-jal jelennek meg
? Hamarosan ICS t¨¢mogat¨¢s is lesz
BlackBerry 10
? Mindent ?tud¡±, amit a Tablet OS
? Kieg¨¦sz¨ªtett, saj¨¢t nat¨ªv UI vez¨¦rl?k
megjelen¨¦se
? Multitasking, fejleszt? d?nthet a h¨¢tt¨¦rben
fut¨¢sr¨®l
? BlackBerry Hub megjelen¨¦se
? T¨¢mogatott¨¢ v¨¢lt m¨¦g ?n¨¦h¨¢ny¡± fejleszt?i
platform¡­.
BB10 t¨¢mogatott platformok
? ±á³Ü³ó³ó¡­
Mobil funkcionalit¨¢s
? BlackBerry World
? Push notification
? In-app Payment
? Maps
? Sharing
? AD Service
? ScoreLoop
BlackBerry World
? Most ¨¦rte el a 100.000 alkalmaz¨¢st
(a Windows Phone-os market most tart
130.000-n¨¦l¡­)
? A gy¨¢rt¨® minden erej¨¦vel (¨¦s p¨¦nz¨¦vel)
t¨¢mogatja az ¨²j/portolt alkalmaz¨¢sok
felker¨¹l¨¦s¨¦t
¨C Port-a-Thon-ok
¨C Marmalade Playbook offer
Android alkalmaz¨¢sok portol¨¢sa
? Command line tool-ok
? Csak 2.3-as alkalmaz¨¢sok portolhat¨®ak
? Google API-k nem t¨¢mogatottak
? Egy tool ellen?rzi az APK-t, egy m¨¢sik tool
elv¨¦gzi az ¨¢tcsomagol¨¢st
? A felmer¨¹l? hib¨¢kat ¨¦s inkompatibilit¨¢st jelzi a
tool ¨C 5 level
? Probl¨¦ma eset¨¦n az Android alkalmaz¨¢s
m¨®dos¨ªt¨¢sa sz¨¹ks¨¦ges
Nat¨ªv alkalmaz¨¢s fejleszt¨¦s
? BlackBerry Cascades SDK
? Simulator
? Nyelv: Qt C++ m¨®dos¨ªtott v¨¢ltozata, DE
? UI: Cascades QML + JavaScript
? Aki amit eddig tudott a QML
komponensekr?l¡­azt felejtse el
? Val¨®ban Qt ¨¦s QML komponenseket
haszn¨¢lunk, de Cascades gy?jt?n¨¦ven
Kitekint¨¦s: Qt
? C++ framework
? Crossplatform: Windows, Linux, OSX,
Android, Symbian, MeeGo
? Minden esetben nat¨ªv alkalmaz¨¢ss¨¢ fordul
a k¨®d
? Els?sorban GUI-s alkalmaz¨¢sokhoz
Kitekint¨¦s: QML
? Qt Modeling Language
? Deklarat¨ªv le¨ªr¨® nyelv
? A le¨ªr¨¢s alapj¨¢n hierarchikusan
p¨¦ld¨¢nyosodnak az objektumok
? Objektumoknak Property-jei ¨¦s Event-jei
vannak
? Objektum hierarchia tetsz?legesen
bej¨¢rhat¨® C++ oldalr¨®l is
Cascades
? Egyfajta UI framework a QML felett
? Egyszer?bb alkalmaz¨¢sok k¨¦sz¨ªthet?k 1-2
sor val¨®di programk¨®d ¨ªr¨¢sa mellett is
? Az elk¨¦pzel¨¦s: UI interakci¨®kat ¨¦s
esem¨¦nyeket a QML kezeli, a h¨¢tt¨¦rlogika
a gyors fut¨¢s miatt Qt C++ k¨®d
? L¨¢ttunk m¨¢r olyan platformot, ahol ez
pokoli gyors fel¨¹letet eredm¨¦nyezett¡­
Qt+QML vs Cascades
? ?gy k¨¦pzelj¨¹k el, hogy az ismert
keretrendszer f?l¨¦ h¨²ztak m¨¦g egy r¨¦teget
? ?R¨¦gi¡± keretrendszer csak nyomokban
fedezhet? fel (szemf¨¹les m¨®don)
? QML funkcionalit¨¢sa megmaradt
? Qwidget nem l¨¦tezik, ¨¦s olyan oszt¨¢lyok
sem, melyek ehhez kapcsol¨®dnak (pl.
QSyntaxHighLighter)
? QML k¨¹l?n sz¨¢lon fut default
Ami nagyon j¨®
? El¨¦rhet? az OS teljes UI vez¨¦rl?t¨¢ra
? Ezek C++ oszt¨¢lyai is, ¨ªgy m¨¢r C++ -b¨®l is
fejleszthet¨¹nk UI-t (b¨¢r az eredeti Qt-s
koncepci¨®hoz k¨¦pest ez visszal¨¦p¨¦s)
? Megmaradt a Signals and Slots
mechanizmus (kib?v¨ªtve, m¨¢r lehets¨¦ges
C++ <-> QML k?t¨¦s is)
? QML teljesen OpenGL ES-sel renderel?dik
default
Ami kev¨¦sb¨¦ t?k¨¦letes¡­
? ?j layout rendszer miatt megsz?nt a relat¨ªv
poz¨ªcion¨¢l¨¢s
? Ami bevett gyakorlat volt Qt alatt, az itt
m¨¢r lehet hogy workaround-ot ig¨¦nyel
? Egyes komponensek m¨¢shogy
viselkednek (pl. Label)
? DE k?nny? megszokni
UI Guidelines
? Egyfajta BB10 ?¨¦lm¨¦nyt¡± defini¨¢ltak a nat¨ªv
alkalmaz¨¢soknak
? Pontos ¨¦s r¨¦szletes guideline a fel¨¹letek
tervez¨¦s¨¦hez
¨C http://developer.blackberry.com/devzone/desi
gn/bb10/
? Elt¨¦rni lehet, de akkor az alkalmaz¨¢s kil¨®g
az ?sszk¨¦pb?l
UI Guidelines p¨¦lda
Fejleszt¨¦s Cascades SDK-val
? Minden esetben nat¨ªv k¨®dra fordul az
alkalmaz¨¢s
? Eclipse alap¨² SDK
? Be¨¦p¨ªtett fejleszt¨¦st t¨¢mogat¨® plugin-ek
(QML editor, BlackBerry Device Wizard)
? Gy¨¢ri projekt template-ek
C++ logika
? Minden alkalmaz¨¢shoz tartozik legal¨¢bb 2
oszt¨¢ly a template-ekben
? Egyik a main() f¨¹ggv¨¦ny, m¨¢sik a UI-t
hozza l¨¦tre (most ¨¦pp applicationUI a
neve)
? C++ met¨®dusok h¨ªvhat¨®ak a UI-r¨®l
? QML vez¨¦rl?k, property-k m¨®dos¨ªthat¨®ak
C++ -b¨®l
? Aszinkron m?k?d¨¦st egyszer? biztos¨ªtani
Saj¨¢t C++ oszt¨¢lyok
? ?ltal¨¢nos oszt¨¢lyok k¨¦sz¨ªthet?ek a modell
sz¨¢m¨¢ra (Qobject parent rendszer)
? C++ oszt¨¢lyok egy az egyben adhat¨®ak ¨¢t
a QML-nek -> QML-szer? viselked¨¦s
? Saj¨¢t UI controllerek implement¨¢lhat¨®ak
Amit m¨¦g a BB ad
? Developer Site
¨C T?bb sz¨¢z oldalnyi dokument¨¢ci¨®, r¨¦szletes
le¨ªr¨¢s, p¨¦ld¨¢k mindenre
¨C GitHUB profil a m¨¢r elk¨¦sz¨¹lt sample
appoknak
¨C R¨¦szletes API reference
¨C BugTracking
¨C Developer blog
? Developer Forum
EL?AD?:
Inotay Kriszti¨¢n
krisztian.inotay@gmail.com
BlackBerry10 alap¨² nat¨ªv
alkalmaz¨¢sfejleszt¨¦s
BME-AutSoft KFT.
K¨¦rd¨¦sek
EL?AD?:
Inotay Kriszti¨¢n
krisztian.inotay@gmail.com
BlackBerry10 alap¨² nat¨ªv
alkalmaz¨¢sfejleszt¨¦s
BME-AutSoft KFT.
K?sz?n?m a figyelmet!

More Related Content

BlackBerry10 alap¨² nat¨ªv alkalmaz¨¢sfejleszt¨¦s

  • 1. EL?AD?: Inotay Kriszti¨¢n krisztian.inotay@gmail.com BlackBerry10 alap¨² nat¨ªv alkalmaz¨¢sfejleszt¨¦s BME-AutSoft KFT.
  • 2. BlackBerry 10 OS ? Egy fokozatos fejleszt¨¦si folyamat eredm¨¦nye ¨C BlackBerry Tablet OS (PlayBook) ¨C BlackBerry Tablet OS 2.0 (PlayBook) ¨C BlackBerry 10 ? Nagyon friss, janu¨¢r 30.-¨¢n jelent meg ? Az ¨²j funkci¨®kat integr¨¢lni fogj¨¢k a r¨¦gi Tablet OS-be is
  • 3. BlackBerry Tablet OS -1- ? Teljes m¨¦rt¨¦kben saj¨¢t fejleszt¨¦s ? QNX Neutrino alapok (valaki eml¨¦kszik a floppy-s v¨¢ltozatra? ? ) ? Minden tekintetben egyedi fel¨¹letet kapott
  • 5. BlackBerry Tablet OS -2- ? Teljes ¨¦rt¨¦k? gesztus alap¨² vez¨¦rl¨¦s, az eszk?z k¨¢v¨¢ja is akt¨ªv szerepet kap benne ? BlackBerry Flow ? Sok t¨¢mogatott fejleszt?i platform: ¨C BlackBerry Java ¨C Adobe AIR ¨C Nat¨ªv C/C++ ¨C Android
  • 6. Micsoda?! Android?? ? Az OS r¨¦sze az Android Player ? 2.3. ¨Cas Gingerbread alkalmaz¨¢sok nat¨ªv futtat¨¢sa ? Portol¨¢s sz¨¹ks¨¦ges ? Az alkalmaz¨¢sok az Android verzi¨®nak megfelel? UI-jal jelennek meg ? Hamarosan ICS t¨¢mogat¨¢s is lesz
  • 7. BlackBerry 10 ? Mindent ?tud¡±, amit a Tablet OS ? Kieg¨¦sz¨ªtett, saj¨¢t nat¨ªv UI vez¨¦rl?k megjelen¨¦se ? Multitasking, fejleszt? d?nthet a h¨¢tt¨¦rben fut¨¢sr¨®l ? BlackBerry Hub megjelen¨¦se ? T¨¢mogatott¨¢ v¨¢lt m¨¦g ?n¨¦h¨¢ny¡± fejleszt?i platform¡­.
  • 8. BB10 t¨¢mogatott platformok ? ±á³Ü³ó³ó¡­
  • 9. Mobil funkcionalit¨¢s ? BlackBerry World ? Push notification ? In-app Payment ? Maps ? Sharing ? AD Service ? ScoreLoop
  • 10. BlackBerry World ? Most ¨¦rte el a 100.000 alkalmaz¨¢st (a Windows Phone-os market most tart 130.000-n¨¦l¡­) ? A gy¨¢rt¨® minden erej¨¦vel (¨¦s p¨¦nz¨¦vel) t¨¢mogatja az ¨²j/portolt alkalmaz¨¢sok felker¨¹l¨¦s¨¦t ¨C Port-a-Thon-ok ¨C Marmalade Playbook offer
  • 11. Android alkalmaz¨¢sok portol¨¢sa ? Command line tool-ok ? Csak 2.3-as alkalmaz¨¢sok portolhat¨®ak ? Google API-k nem t¨¢mogatottak ? Egy tool ellen?rzi az APK-t, egy m¨¢sik tool elv¨¦gzi az ¨¢tcsomagol¨¢st ? A felmer¨¹l? hib¨¢kat ¨¦s inkompatibilit¨¢st jelzi a tool ¨C 5 level ? Probl¨¦ma eset¨¦n az Android alkalmaz¨¢s m¨®dos¨ªt¨¢sa sz¨¹ks¨¦ges
  • 12. Nat¨ªv alkalmaz¨¢s fejleszt¨¦s ? BlackBerry Cascades SDK ? Simulator ? Nyelv: Qt C++ m¨®dos¨ªtott v¨¢ltozata, DE ? UI: Cascades QML + JavaScript ? Aki amit eddig tudott a QML komponensekr?l¡­azt felejtse el ? Val¨®ban Qt ¨¦s QML komponenseket haszn¨¢lunk, de Cascades gy?jt?n¨¦ven
  • 13. Kitekint¨¦s: Qt ? C++ framework ? Crossplatform: Windows, Linux, OSX, Android, Symbian, MeeGo ? Minden esetben nat¨ªv alkalmaz¨¢ss¨¢ fordul a k¨®d ? Els?sorban GUI-s alkalmaz¨¢sokhoz
  • 14. Kitekint¨¦s: QML ? Qt Modeling Language ? Deklarat¨ªv le¨ªr¨® nyelv ? A le¨ªr¨¢s alapj¨¢n hierarchikusan p¨¦ld¨¢nyosodnak az objektumok ? Objektumoknak Property-jei ¨¦s Event-jei vannak ? Objektum hierarchia tetsz?legesen bej¨¢rhat¨® C++ oldalr¨®l is
  • 15. Cascades ? Egyfajta UI framework a QML felett ? Egyszer?bb alkalmaz¨¢sok k¨¦sz¨ªthet?k 1-2 sor val¨®di programk¨®d ¨ªr¨¢sa mellett is ? Az elk¨¦pzel¨¦s: UI interakci¨®kat ¨¦s esem¨¦nyeket a QML kezeli, a h¨¢tt¨¦rlogika a gyors fut¨¢s miatt Qt C++ k¨®d ? L¨¢ttunk m¨¢r olyan platformot, ahol ez pokoli gyors fel¨¹letet eredm¨¦nyezett¡­
  • 16. Qt+QML vs Cascades ? ?gy k¨¦pzelj¨¹k el, hogy az ismert keretrendszer f?l¨¦ h¨²ztak m¨¦g egy r¨¦teget ? ?R¨¦gi¡± keretrendszer csak nyomokban fedezhet? fel (szemf¨¹les m¨®don) ? QML funkcionalit¨¢sa megmaradt ? Qwidget nem l¨¦tezik, ¨¦s olyan oszt¨¢lyok sem, melyek ehhez kapcsol¨®dnak (pl. QSyntaxHighLighter) ? QML k¨¹l?n sz¨¢lon fut default
  • 17. Ami nagyon j¨® ? El¨¦rhet? az OS teljes UI vez¨¦rl?t¨¢ra ? Ezek C++ oszt¨¢lyai is, ¨ªgy m¨¢r C++ -b¨®l is fejleszthet¨¹nk UI-t (b¨¢r az eredeti Qt-s koncepci¨®hoz k¨¦pest ez visszal¨¦p¨¦s) ? Megmaradt a Signals and Slots mechanizmus (kib?v¨ªtve, m¨¢r lehets¨¦ges C++ <-> QML k?t¨¦s is) ? QML teljesen OpenGL ES-sel renderel?dik default
  • 18. Ami kev¨¦sb¨¦ t?k¨¦letes¡­ ? ?j layout rendszer miatt megsz?nt a relat¨ªv poz¨ªcion¨¢l¨¢s ? Ami bevett gyakorlat volt Qt alatt, az itt m¨¢r lehet hogy workaround-ot ig¨¦nyel ? Egyes komponensek m¨¢shogy viselkednek (pl. Label) ? DE k?nny? megszokni
  • 19. UI Guidelines ? Egyfajta BB10 ?¨¦lm¨¦nyt¡± defini¨¢ltak a nat¨ªv alkalmaz¨¢soknak ? Pontos ¨¦s r¨¦szletes guideline a fel¨¹letek tervez¨¦s¨¦hez ¨C http://developer.blackberry.com/devzone/desi gn/bb10/ ? Elt¨¦rni lehet, de akkor az alkalmaz¨¢s kil¨®g az ?sszk¨¦pb?l
  • 21. Fejleszt¨¦s Cascades SDK-val ? Minden esetben nat¨ªv k¨®dra fordul az alkalmaz¨¢s ? Eclipse alap¨² SDK ? Be¨¦p¨ªtett fejleszt¨¦st t¨¢mogat¨® plugin-ek (QML editor, BlackBerry Device Wizard) ? Gy¨¢ri projekt template-ek
  • 22. C++ logika ? Minden alkalmaz¨¢shoz tartozik legal¨¢bb 2 oszt¨¢ly a template-ekben ? Egyik a main() f¨¹ggv¨¦ny, m¨¢sik a UI-t hozza l¨¦tre (most ¨¦pp applicationUI a neve) ? C++ met¨®dusok h¨ªvhat¨®ak a UI-r¨®l ? QML vez¨¦rl?k, property-k m¨®dos¨ªthat¨®ak C++ -b¨®l ? Aszinkron m?k?d¨¦st egyszer? biztos¨ªtani
  • 23. Saj¨¢t C++ oszt¨¢lyok ? ?ltal¨¢nos oszt¨¢lyok k¨¦sz¨ªthet?ek a modell sz¨¢m¨¢ra (Qobject parent rendszer) ? C++ oszt¨¢lyok egy az egyben adhat¨®ak ¨¢t a QML-nek -> QML-szer? viselked¨¦s ? Saj¨¢t UI controllerek implement¨¢lhat¨®ak
  • 24. Amit m¨¦g a BB ad ? Developer Site ¨C T?bb sz¨¢z oldalnyi dokument¨¢ci¨®, r¨¦szletes le¨ªr¨¢s, p¨¦ld¨¢k mindenre ¨C GitHUB profil a m¨¢r elk¨¦sz¨¹lt sample appoknak ¨C R¨¦szletes API reference ¨C BugTracking ¨C Developer blog ? Developer Forum
  • 25. EL?AD?: Inotay Kriszti¨¢n krisztian.inotay@gmail.com BlackBerry10 alap¨² nat¨ªv alkalmaz¨¢sfejleszt¨¦s BME-AutSoft KFT. K¨¦rd¨¦sek
  • 26. EL?AD?: Inotay Kriszti¨¢n krisztian.inotay@gmail.com BlackBerry10 alap¨² nat¨ªv alkalmaz¨¢sfejleszt¨¦s BME-AutSoft KFT. K?sz?n?m a figyelmet!