Mobilplatformok – Merre tart a világ?
Kis Gergely MattaKis Consulting
1
MattaKis Consulting Bemutatkozás ●
Szoftverfejlesztés, informatikai tanácsadás
●
Mobil: Android, BlackBerry (J2ME), iPhone
●
Web: JavaEE, PHP, ExtJS
●
Desktop: .NET, Visual C++
2
Tartalom ●
Mobilpiaci körkép
●
Egy modern mobilplatform ismérvei
●
Tabletek és egyéb érdekességek
●
Mobilplatformok fejlesztői szemmel
●
Melyiket válasszuk?
●
Kérdések és válaszok
3
Mobilpiaci körkép (1) Smartphone eladások a világpiacon 2010 (%) Forrás: Gartner 50 45 40 35
2009 2010
30 25 20 15 10 5 0
Symbian
Android
BlackBerry
iOS
Microsoft Egyéb OS
4
Mobilpiaci körkép (2) USA okostelefon előfizetők (%) Forrás: comScore 40
35
30
25
2010 október 2011 január
20
15
10
5
0
Android
BlackBerry
iOS
Microsoft
Palm
5
Mobilpiaci körkép (3) Alkalmazásbolt bevétel (millió USD) Forrás: IHS Screen Digest 2000
1782
1800
1600
1400
2009 2010
1200
1000
800
769
600
400
200
36
165 13
105
11
102
0
Apple App Store
BlackBerry App World
Nokia Ovi Store
Google Android Market
6
Egy modern mobilplatform ismérvei ●
●
●
●
Felhasználóbarát –
Jó alkalmazások
–
Ergonómia
–
Jó minőségű hardver
–
Testreszabhatóság
Fejlesztő Felhasználó Befektető
Fejlesztőbarát –
Biztonságos alkalmazásbolt
–
Kényelmes fejlesztőkörnyezet
Üzletbarát
r e T
s é t e v ö k k mé
–
Alkalmazásbolt
–
Hirdetési- és fizetési lehetőségek a platformba integrálva
Élő közösség 7
Mobilplatformok mindenhol ●
Tabletek –
●
“2011 a tablet éve”
Szórakoztatóelektronika –
TV
–
Set-top-box
●
Autóipar
●
Netbook
8
Mobilplatformok fejlesztőként ●
Mitől kényelmes a fejlesztés? –
Modern programozási nyelv (Java, C#, JavaScript, Objective-C)
–
Alacsonyszintű hozzáférés a platformhoz (C / C++, assembly)
–
Jól megtervezett, használható API
–
Kényelmes segédeszközök: emulator, hibakeresés közvetlenül az eszközön, IDE integráció
9
Android: erősségek ●
●
●
Programozási nyelvek: –
Java, C/C++, JavaScript, assembly
–
C#, egyéb szkriptnyelvek
Támogatott fejlesztőplatformok: Windows, Mac, Linux Támogatott IDE: Eclipse (Android specifikus kiegészítések)
●
Qemu alapú emulátor, on-target debugging
●
Nyílt forrású platform 10
Android: kihívások ●
●
Fragmentáció –
Nagyon sokféle hardver (képernyőfelbontások, CPU, GPU … stb.)
–
Nagyon gyors az OS fejlődése
Android Market –
Nem minden országban elérhető
–
Az alkalmazások nagy része ingyenes
–
Meg kell találni a megfelelő üzleti modellt.
11
iOS: erősségek ●
●
●
Programozási nyelvek: –
Objective-C, C/C++, JavaScript, assembly
–
C#, Java
App Store: –
Jó üzleti lehetőségek
–
Jobban szervezett, mint az Android Market
–
A felhasználók szívesebben vásárolnak
Hardver: –
●
Jól átgondolt termékstratégia
Felhasználók: –
Nagy vásárlóerőt képviselnek, lojálisak 12
iOS: kihívások ●
●
Fejlesztőkörnyezet: –
Csak Mac OSX-en elérhető
–
Az Objective-C kevésbé ismert nyelv
Totális kontroll: –
Helyenként üzleti okokból korlátozott lehetőségek (API)
–
Az Apple bármikor módosíthatja a játékszabályokat
13
Windows Phone: erősségek ●
Programozási nyelvek: –
C# (Silverlight, XNA)
●
Egységes hardver – egyelőre
●
Fiatal rendszer –
●
Silverlight / XNA platformokra épít –
●
Megpróbálják egyesíteni az Android és iOS platformok előnyeit, tanulni a hibákból Rengeteg fejlesztő ismeri az alaptechnológiákat
Segédeszközök: –
Kód generálás, Visual Studio 2010 integráció 14
Windows Phone: kihívások ●
Későn érkezett: –
Sok mobilpiaci szereplő egyelőre kivár (Androidnál is hasonló volt a helyzet)
–
Egyelőre kevesebb funkció, mint a többi mobilplatformon
–
Kevesebb alkalmazás
●
Nincs natív kód futtatására lehetőség
●
A nagy lehetőség:
15
Symbian ●
Az első elterjedt okostelefon platform
●
Kis erőforrásigényű
●
Több cég is licencelte
●
●
●
●
●
Egy ideig open-source modellre épülő fejlesztéssel is próbálkoztak Fejlesztés sokféle nyelven: Symbian C++, Java (J2ME), JavaScript (WebKit), Qt (C++), Python, Flash Lite Nincs egységes API a különböző változatok között, nehézkes fejlesztés Már csak a Nokia használja, a többi cég Androidra váltott. A Nokia úgy döntött, hogy Windows Phone platformra vált → ez valószínűleg Symbian életciklusának végét jelzi. 16
Kristálygömb: mi várható ●
Az Android szerepe tovább fog erősödni –
A BlackBerry platform is Android kompatibilissé fog válni, egy alternatív, QNX alapú implementációval
●
Az iOS továbbra is fontos tényező marad
●
A Windows Phone nagy lehetősége a Nokia
●
Az ellenérdekelt piaci szereplők miatt feltehetőleg nem fog totális monopólium kialakulni. 17
●
●
Melyik platformot válasszuk a projektünkhöz? Döntés: –
A célcsoport melyik platformot részesíti előnyben
–
Megvalósíthatóság
–
Rendelkezésre álló eszközök
–
Rendelkezésre álló fejlesztők
Ezek alapján: –
●
Android, iOS, BlackBerry vagy Windows Phone
Készítsünk prototípust! 18
Melyik platformmal foglalkozzunk hallgatóként ●
●
Javaslat: Először Android, utána folytassuk iOSsel, és/vagy Windows Phone-nal. –
Használhatunk bármely desktop OS-t
–
A Java nyelvet minden informatikus hallgató tanulja
–
A fejlesztőeszközök teljesen ingyenesek
–
Olcsó hardver könnyen hozzáférhető
–
Sokat lehet tanulni az Android forrásából
Ne csak egy platformra koncentráljunk! 19
Natív vagy web alapon? ●
●
●
●
Az összes fontos mobilplatform lehetőséget ad arra, hogy web alapú alkalmazásokat készítsünk Előnyök: –
Kevés platformfüggő kód
–
Könnyen módosítható UI
–
Online és offline verziók
Hátrányok: –
Teljesítmény
–
Bizonyos API-k nem elérhetők
–
Look & Feel különbözhet a natív alkalmazásoktól
Keretrendszerek: –
PhoneGap
–
Sencha Touch 20
Köszönöm a figyelmet! Kis Gergely ügyvezető
[email protected] MattaKis Consulting Kft. www.mattakis.com
●
●
Karrierlehetőség hallgatóknak is: –
MattaKis Gyakornoki Program
–
Junior és senior szoftverfejlesztő pozíciók
Jelentkezés: http://www.mattakis.hu/karrier 21