Hirdetés

Mi is az a Samsung bada?

Köszöntök mindenki a Samsung bada fejlesztői blogban!

Az e hónap 28-án, azaz holnap megrendezésre kerülő Samsung bada Developer Day előtt egy áttekintést tartok, hogy mi is a bada, miben hasonlít és miben különbözik attól, amit eddig láthattunk. Az S8500 Wave tesztjében Bocha bemutatta, hogy a felhasználó mit várhat az új rendszertől: egy nem túlbonyolított, szélsebes felületet, ami prémium módban a legtöbb igényt zsebből kielégíti, és ezen felül még bővíthető is. De mi hajtja?

A bada, mint operációs rendszer

A bada egy réteges architektúrájú operációs rendszer, bár a rendelkezésre álló kevéske információ alapján ez főleg elvi szinten jelenik meg, nem pedig szigorú struktúraként. A Wave-en futó rendszer mélyén – hasonlóan az újkori mobil operációs rendszerekhez – egy Linux kernel fut. A kortársakkal ellentétben ez nem szükségszerű: a bada átültethető más realtime OS-ekre is, mellyel a közeljövőben még biztosan találkozni fogunk olcsóbb eszközökben. A Linux-szal, mint ahogy ennek fényében elvárható, se a felhasználói, se a fejlesztői felületen nem találkozhatunk, a köztes absztrakciós rétegek teljesen elrejtik.

A kernel feletti Device réteg biztosítja azokat a funkciókat, melyek egy önálló eszközre jellemzőek, legyen szó hardverhez vagy szoftverhez kötődő lehetőségekről. Itt jelenik meg például a grafika, az alacsonyszintű hálózatkezelés, a fájlkezelés és a biztonsági funkciók. A grafika terén egyébként nem állunk rosszul, OpenGL ES 1.1 és 2.0 támogatást is kapott a Wave, amit az esetleges low-end badás készülékek kivételével valószínűleg mindegyik készülék meg fog kapni a jövőben. Idáig még szokványosnak mondható a történet, a Symbian felépítésével például könnyen összevethető, melynél a Kernel, Base Services és OS Services rétegek együttese hasonló funkcionalitással rendelkezik (bár az szigorúan réteges felépítésű). A badánál a fő érdekesség a következő logikai rétegben kezdődik.

A Services réteg egy absztrakciós szinttel feljebb található, nevéhez méltóan a kulcsszava a szolgáltatás: jól definiált feladatkörök valósulnak meg itt, melyeket kulcsrakészen kap a Framework valamint a Services-re épülő alkalmazások. A szolgáltatások lehetnek helyiek (pl. névjegyzék, naptár, helymeghatározás) és távoliak; utóbbiak talán még fontosabbak, a bada ugyanis nagyban támaszkodik a Samsung szerverei által nyújtott szolgáltatásokra.

A csúcson a Framework található, ami a fejlesztők számára is elérhető C++ osztálykönyvtár összefoglaló neve. A szigorúan objektumorientált API 19 névtérből épül fel, melyekből a rendszer lehetőségeit kiaknázó alkalmazások építhetők fel.

A natív keretrendszer mellett a Flash Lite 3.1 (Flash 9/ActionScript 2 kompatibilis) környezet is kötelezően elérhető. A Wave-en emellett egy MIDP 2.1/CLDC-1.1 kompatibilis Java ME virtuális gép is megtalálható, de csak valószínűsíteni tudom, hogy a későbbi modellek is támogatni fogják. A blog tárgya elsősorban a natív fejlesztés, így egy pár szótól eltekintve e két terület nem fog részletesen előkerülni a jelenlegi terveink szerint.

A bada, mint szolgáltatás

Az internetelérés létfontosságú a bada számára, a rendszer teljes ereje a bada szerverek segítségével érhető el. A beépített alkalmazások között a legszembetűnőbb a Social Hub (bár az ezzel kapcsolatos dolgok még változhatnak, mivel a Wave még nincs piacon), ami egy push szinkronizációs rendszerben működő központba tömöríti az e-mailezést, az instant messaging és social networking szolgáltatásokat. Ingyen elérhető a Samsung Apps, a bada alkalmazásbolt, mely idővel lehetővé fogja tenni az alkalmazáson belüli vásárlásokat is. Induláskor viszont úgy tűnik, hogy ilyesmire még nem lesz mód.

Nem lehet azonnal észrevenni a telefonok közötti push kommunikációt, mellyel egy alkalmazás két példánya kommunikálhat egymással meglehetősen egyszerűen. Bár a szolgáltatás az írás pillanatában még csak szimulátorok között érhető el, az élesítés után a felemásnak tűnő multitasking korlátai enyhülni fognak.

Végül az alkalmazásfejlesztés során is kritikus szerepet tölt be a hálózat: a valós eszközön futó alkalmazások fejlesztésének legelső, kötelező fázisa az alkalmazás regisztrálása, az igényelt jogosultságok bejelentése a bada fejlesztői portálon, melynek eredménye a project alapjául szolgáló manifest állomány. Az eszköz a (nem Apps-on keresztüli) telepítés során ellenőrzi, hogy az alkalmazást hitelesítette-e a Samsung portálja, ennek hiányában nem futtatható a célhardveren az adott program.

Ez a fajta központosítás eddig egyedülálló. Egyes részei megjelentek már korábban, az alkalmazásboltok a legtöbb okostelefonos platformon ugye már elérhetők, az egyirányú push az eszköz felé az iPhone OS 3.0-ban debütált, de az egyszerű, hozzáférhető API-val karöltve összegészében hatalmas potenciállal rendelkezik a Samsung bada.

bada, mint üzleti lehetőség

Miért érné meg a badára fejleszteni a platformok tengerében? A jutalékos rendszerben működő Samsung Apps alkalmazásbolt mellett a nemzetközi és a magyar Developer Challenge alkalmazásfejlesztői versenyben is nagy tétekre megy a játék. Nem vagyok jós, a piac elemzése nem a szakterületem, de hardcore felhasználóként nyugodtan kijelenthetem, hogy a bada nagy hullámokat fog verni.

Karma

Azóta történt

Előzmények