HTML

Hackstock

Hack the planet! Hackers unite!

Címkék

Címkefelhő

Alkalmazásfejlesztés - A kezdet

2007.12.01. 11:46 :: theshadow

Ha elkészítettük a fejlesztő környezetet, akkor ideje lenne belevégni a fejlesztésbe.
A legfontosabb, hogy képbe kerüljünk az Objective-C-vel. C nyelvcsaládba tartozik; ezzel azt hiszem elmagyaráztam a szabályok 90%-át. Az objektumok metódusaira hivatkozás némileg eltér a megszokottól, de nem nehém nehéz megszokni. Az alapséma így néz ki:
[receiver method:argument]
Új objektumpéldány létrehozása is kicsit eltérő. Példányreferencia létrehozása az argumentum nélküli alloc metódussal történik:
[UIWindow alloc]
Ezt követően a konstruktorként funkcionáló metódust kell meghívni, amelyet talán konvencionálisan vagy csupán következetesen init-nek illetve ezt tovább fűzve neveztek el. Maradjunk a UIWindow-nál, aminek két konstruktora van: egy túlterhelt initWithFrame és egy initWithContentRect. Nézzük meg, hogy néz ki egy teljes inicializálás a valóságban:
[[UIWindow alloc] initWithContentRect: [UIHardware fullScreenApplicationContentRect]]
Létrehozunk egy UIWindow példányt, inicializáljuk az initWithContentRect metódussal, amelynek egy CGRect típusú paraméter van szüksége. Ezt a UIHardware statikus fullScreenApplicationContentRect függvényéből nyerjük.
Objektumpéldány referenciáját felszabadítani a release fukcióval lehetséges:
[window release]
A leírások alapján nem egyértelmű, hogyan kell több paramétert kezelni, ezért álljon itt egy példa erre is. Egy UINavigationBar példány metódushjvását látjuk:
[nav showButtonsWithLeftTitle: @"Foo" rightTitle: @"Bar" leftBack: YES];
Az első paraméter kivételével mindegyik értéke név szerint adódik át. Első paraméter: @"Foo", második paraméter rightTitle: @"Bar", és a harmadik leftBack: YES.
Ezen a ponton érdemes beszélni a karakterláncok kezeléséről. Természetesen léteznek karaktertömbök és használhatóak a C nyelv beépített funkciói a kezelésükre. Azonban a framework tartalmaz egy saját objektumot erre: NSString. Az egyszerüség miatt új NSString példány létrehozása az 'at' operátorral is lehetséges: @"Foo" és a későbbiekben NSString objektumként kezelhető.
Ezen a ponton pedig térjünk rá egy kényes kérdésre. Hol van mindez dokumentálva, hogy a földi halandó, egyszerű kezdő elindulhasson? Mivel nem hivatalos fejlesztőeszközről beszélünk, ezért meglehetősen sok helyről kell összegyüjtenünk az információkat.
Az Objective-C-t érintő kérdésekben a Apple Develper Connection-t szoktam használni.
A telefon specifikus osztályainak szignatúráját Erica Sadum közzétette a honlapján úgy, ahogy a classdump nevű eszköz visszafejtette. Több mint a semmi. Minden elérhető header file a Cygwin usr/local/arm-apple-darwin/include könyvtárában van; itt is érdemes mazsolázni és akár kibővjteni saját jegyzeteinkkel.
Aki komolyan töri a fejét a fejlesztésen, e header file-ok tanulmányozása erősen ajánlott.

Szólj hozzá!

Címkék: iphone appdev

A bejegyzés trackback címe:

https://hackstock.blog.hu/api/trackback/id/tr18248706

Kommentek:

A hozzászólások a vonatkozó jogszabályok  értelmében felhasználói tartalomnak minősülnek, értük a szolgáltatás technikai  üzemeltetője semmilyen felelősséget nem vállal, azokat nem ellenőrzi. Kifogás esetén forduljon a blog szerkesztőjéhez. Részletek a  Felhasználási feltételekben és az adatvédelmi tájékoztatóban.

Nincsenek hozzászólások.