Programujeme v iTunes Xcode 4 - MujMAC.cz - Apple, Mac OS X, Apple iPod

Odběr fotomagazínu

Fotografický magazín "iZIN IDIF" každý týden ve Vašem e-mailu.
Co nového ve světě fotografie!

 

Zadejte Vaši e-mailovou adresu:

Kamarád fotí rád?

Přihlas ho k odběru fotomagazínu!

 

Zadejte e-mailovou adresu kamaráda:

Soutěž

Sponzorem soutěže je:

IDIF

 

Odkud pochází fotografka Anne Erhard?

V dnešní soutěži hrajeme o:

Seriály

Více seriálů



Software

Programujeme v iTunes Xcode 4

25. května 2011, 00.00 | Dnes a v několika následujících článcích se podíváme blíže na nové vývojové prostředí Apple – Xcode 4. Začneme novinkami, jež nabízí aktuální verse překladače Objective C (jde jen o jednu drobnost, ale příjemnou), a pak se již soustředíme na SDK a jeho (ne)možnosti.

Ve firmě Apple trpí nekritickou láskou k aplikaci iTunes. Musí tomu tak být; jinak by nemohlo nikoho soudného napadnout, že se budou data mezi telefonem a počítačem synchronizovat prostřednictvím přehrávače MP3... ale to odbočuji. Naopak s naším seriálem úzce souvisí to, že se v posledních letech v Apple evidentně snažili do iTunes přesunout i psaní nových aplikací; když zjistili, že to tak úplně nejde, aspoň předělali Xcode tak, aby se iTunes podobalo co nejvíc.

Takže nyní máme vývojové prostředí, které nejenže má vlevo nahoře tlačítka "Play" a "Stop"; dokonce je uprostřed horní lišty okénko, které ukazuje běh procesů přesně stejně, jako iTunes přehrávání skladby – a kvůli tomu nestandardními nesmyslu není lišta vůbec konfigurovatelná... Aspoň že zatím nemáme "semafor" pro zavírání / minimalizaci / zvětšení okna na výšku. Zatím.

Zkuste to přes modem!

Kompletní vývojové prostředí Xcode 4 lze nalézt standardně na stránkách Apple. Pokud náhodou nemáte připojení k Internetu T1, připravte se na kafíčko nebo několik: velikost balíku ukrutně narostla, má cca 4.5 GB. Zato v něm je standardně kompletní podpora obou současných platforem, jak Mac OS X, tak i iOS.

Instalace by měla být bezproblémová; jen je vhodné zvážit, zda provést kompletní upgrade, nebo zda raději instalovat do samostatné složky (např. "/Developer4"), abychom v případě potřeby mohli i nadále používat Xcode 3: jak časem uvidíme, jsou věci, jež Xcode 4 prostě neumí – a také je vzhledem k jeho novosti vždy určité risiko, že narazíme na nějakou chybu, jež vývoj ve čtyřce omezí nebo znemožní. Prozatím bych proto doporučil alespoň na jednom počítači Xcode 3 zachovat. Dobrou zprávou zde je to, že projekty jsou plně vzájemně kompatibilní a lze je bez obtíží přenášet na obě strany.

Příjemná novinka v překladači

Součástí nového SDK je také nová verse překladače, a ta kromě několika oprav chyb (naopak o žádné nové chybě dosud nevím) přináší jednu velmi příjemnou novinku: instanční proměnné lze nyní deklarovat nejen v rozhraní, ale také v rozšíření a v implementaci.

To je příjemné, protože instanční proměnné samozřejmě obecně v rozhraní nemají co dělat. Historicky bývalo zapotřebí je tam umísťovat proto, že podtřídy je musely znát; v současnosti ale už Objective C tento problém nemá. Je tedy jen logické a rozumné instanční proměnné deklarovat v implementaci, a nyní již k tomu není zapotřebí "trik" s atributy:

// SomeClass.h
@interface SomeClass @end
// SomeClass.m
@implementation SomeClass {
  int ivar;
  ...
}
...

Nepříjemné novinky v IDE

Nové Xcode je navrženo s poměrně šílenou ideou "Vše by mělo být v jednom okně a podle toho, co člověk zrovna dělá, se to tam uvnitř může přepínat". Standardně tedy to, nač bývaly velmi pohodlné samostatné panely (především inspektory souborů), je nyní integrováno do hlavního okna (takže přístup k tomu je pramizerný); pro zobrazení výpisů testované aplikace se editor zdrojového textu vertikálně rozdělí, a výpisy se zobrazí pod ním...

Asi nejhorší je to, že přímo do Xcode jsou nyní integrovány i služby Interface Builderu, a jeho okna se to týká také – nelze tedy standardně mít vedle sebe knihovnu objektů a panel inspektoru. S XIBy se v novém Xcode pracuje opravdu špatně, i přes některé docela šikovné novinky.

Postupně si v našem seriálu ukážeme, jak některé z problémů obejít; začneme ale tím, že si ukážeme, jak nové Xcode vypadá a funguje standardně.

Co kde hledat

Okno nového IDE po otevření projektu (a zobrazení výpisu programu, abychom viděli všechny základní prvky) může vypadat zhruba asi nějak takto:

Podívejme se postupně shora dolů (a zleva doprava) na jednotlivé prvky – později si toho o každém z nich řekneme víc:

• titulek okna je víceméně standardní; jen na rozdíl od Xcode 3 nefunguje tažení dokumentové ikony. Přesněji řečeno, funguje, jenže bez ohledu na to, co máme v okně právě otevřeného, se vždy táhne projekt jako celek a nikdy aktuální soubor (toto je, doufejme, jen chyba, již Apple časem opraví);

• o příkazové liště pod ním jsme se již zmínili výše: ačkoli ji lze – díkybohu aspoň za to – skrýt a zobrazit pomocí standardního tlačítka vpravo nahoře, konfigurovatelná bohužel není vinou nesmyslného okénka uprostřed, jež informuje o právě probíhajících procesech a také o množství chyb a varovných hlášení v projektu. Ostatní ovladače v listě si podrobněji popíšeme níže; jen pro orientaci, umožňují sestavení a spuštění cílové aplikace, volbu platformy pro niž se sestavuje a testuje, přepínání grafické podoby okna a otevření okna tzv. Organizeru;

• pod příkazovou lištou je lišta záložek; ty fungují téměř přesně stejně jako v Safari: chceme-li více různých pohledů na projekt, můžeme je otevřít v samostatných záložkách. Záložky lze také "trhat" do samostatných oken, vzájemně přesouvat a-tak-dále;

• nyní je na řadě sloupec při levém okraji okna, který připomíná navigační sloupec Xcode 3: skutečně jím je – a také lecčíms jiným. Říká se mu "Navigátor" a v základním režimu – který vidíme na obrázku – ukazuje zhruba stejnou strukturu projektu a skupin v něm, jako tomu bylo v Xcode 3. Kromě toho jej ale pomocí ikon v liště při jeho horním okraji lze přepnout do režimů, suplujících již neexistující samostatná okna: přehled symbolů, textové vyhledávání, výsledek sestavení (tedy především chyby a varovná hlášení), aktuální stav procesu v debuggeru, seznam breakpointů nebo přehled výpisů. Trochu hodně práce na jeden malý sloupec!

• v centrální oblasti okna je editor zdrojového kódu, který funguje na první pohled hodně podobně jako tomu bývalo v "trojce". Postupně pak začneme narážet na rozdíly: daleko agresivnější automatické doplňování, zcela předělaná podpora pro přístup k souvisícím souborům – umí toho mnohem víc než dříve, ale zato je daleko méně pohodlná –, a tak dále a tak podobně. Jak tomu bylo už v Xcode 3, i zde lze prostor editoru rozdělit na několik panelů, z nichž každý zobrazuje jiný (nebo i týž) zdrojový soubor; podpora pro tuto službu, tzv. "Asistent", je ale nyní dost zmatená a budeme se jí podrobně věnovat později. Velkým kladem naopak je průběžné zobrazování chyb, jež by jinak odhalilo až sestavení;

• pokud jsme litovali sloupec při levém okraji okna, že mu firma Apple naložila nějak mnoho úkolů, sloupec při pravém okraji – říká se mu "Utility" – je na tom ještě daleko hůř. Obsahuje jen v horní části – tedy nad řadou ikonek zhruba v polovině okna, jak jsou vidět na obrázku – inspektor atributů aktuálního souboru (který má sám řadu samostatných polí) a stručnou nápovědu. Otevřeme-li XIB, přibude kompletní sada inspektorů, jež bývala v samostatném panelu v Interface Builderu; otevřeme-li datový model, objeví se zde inspektory jeho entit a atributů;

• dole uprostřed je panel s výpisem testovaného programu. Připadá-li nám příliš jednoduchý, můžeme si jej vertikálně rozdělit na dvě části; výpisy pak budou napravo, kdežto vlevo bude debugger zobrazovat aktuální obsah proměnných;

• zbývá konečně dolní část sloupce při pravém okraji okna: ta obsahuje "knihovny" či "palety" všeho možného – jsou zde vzory pro nově vytvářené soubory, standardní "makra" obsahující běžně užívané úseky kódu, kompletní knihovna objektů grafického uživatelského rozhraní pro XIBy a také média, tj. především seznam všech obrázků, jež jsou v projektu uloženy.

Některé z původních inspektorů jsou nyní integrovány jako samostatné služby editoru zdrojových kódů: lze v něm např. "otevřít projekt", a uvidíme specializovaný editor, který spojuje služby bývalých inspektorů projektu a cílů:

Občas ještě pro některé služby Xcode nad hlavním oknem otevře "lístek" (sheet); vedle celkem nepřekvapivých panelů pro vytvoření nového souboru nebo přidání souborů již existujících do projektu sem patří především editor tzv. "schémat". To je zcela nová záležitost, jež v Xcode 4 nahrazuje a doplňuje dřívější kombinaci pojmenovaných konfigurací a tzv. "executables" – vrátíme se k ní také později.

Organizér

V podstatě vše, co zbývá, narvali programátoři Apple do okna "organizéru". My toto okno známe již z Xcode 3, kde sloužilo především pro přístup k telefonům a jiným iPadům a s tím úzce souvisící služby.

V Xcode 4 k tomu přibyl rozšířený přístup ke známým projektům – příště si vysvětlíme, proč to je poměrně důležité (a proč to patří spíše mezi šikovné novinky "čtyřky", ačkoli je trochu otázka, zda by si to bývalo nezasloužilo samostatné okno), přístup k repositářům správy zdrojových souborů, a snad ze zoufalství ještě do téhož samého okna v Apple narvali přístup k dokumentaci:

Ta je o poznání méně použitelná než tomu bylo v Xcode 3, hlavně proto, že se v nové dokumentaci kamsi bůhvíproč ztratily přehledné obsahy dokumentů :(

Kromě toho ještě má Xcode 4 samostatné okno pro předvolby; do těch se ale pustíme až příště.

Obsah seriálu (více o seriálu):

Tématické zařazení:

 » Rubriky  » Informace  

 » Rubriky  » Agregator  

 » Rubriky  » Tipy a Triky  

 » Rubriky  » Začínáme s  

 » Rubriky  » Software  

 

 

 

 

Přihlášení k mému účtu

Uživatelské jméno:

Heslo: