Seminář v Brně ohledně Delphi pro iOS - pár postřehů

vložil Radek Červinka 12. března 2013 22:16
Byl to ten slavný den, 
kdy nám byl předveden
nový ARM compiler.
Nativní, nativní, zkrátka Delphi compiler.

Aktualizace: materiály ke stažení

Brno ARM Delphi

Přes 100 lidí mělo možnost se trochu seznámit s možnostmi Delphi pro iOS. Většinu času se opravdu Pawel věnoval iOS - respektive mobilní verzi FMX (po nezbytném PPT úvodu, kde mne nejvíce zaujalo, že dle předpovědí letos tablety v prodejích překonají notebooky), až na konci letem světem FireDAC. Mohu psát jen o tom CO bylo ukázáno.

FireMonkey v nové verzi je výrazně vylepšená a určitě řádově lepší než v XE3.

Ukazován byl překlad pro iOS simulátor a deploy na zařízení (iPhone 4GS a iPad asi 2). Minimální verze iOS je asi 5.1, iOS 6.x je podporován. Myslím, že je obecně známo, ale přece jen: iOS simulátor spouští normální x86 kód, který emuluje chování iOS, tj. jedná se v podstatě o normální (z hlediska OS X) aplikaci. Tj. kompilátor pro Delphi v tomto případě emituje x86 kód pro MAC. Na rozdíl od zařízení, které je ARM, tudíž Delphi emituje ARM kód (to je nápad Apple).

Ohledně novinek: nový kompilátor (mluvíme jen o ARM) je postaven (resp. codegen používá) LLVM - v čem je psán frontend nevím - možná je v Delphi. Nový kompilátor (ARM) používá ARC - automatic reference counting, tj. to co má Delphi pro interface a stringy odjakživa.

Pro vývoj potřebujete OS X (což neznamená i macka, jak zde bylo nedávno řečeno). Pro deploy na zařízení je třeba zaplatit Apple $99 dolarů (ročně) - pro simulátor ne. Delphi podporuje několik typů iOS aplikací - jak bylo ukázáno (debug, AdHoc, Apple Store) - má to stejný význam jak při vývoji pro iOS. Nemusíte se XCode ani dotknout.

Killing feature (na kterou Pawel původně zapomněl a přítomný MVP ho jemně upozornil) je podle mne to, že kromě uvedených dvou módu (device, simulátor), se dá díky podstatě FireMonkey výsledný program přeložit pro Windows a tak si v pohodě odladit většinu programu bez nutnosti OS X. Tohle je velmi významný bod.

Z ukázek mne velmi příjemně překvapilo použití TPageControl tak, že se dá mezi jednotlivými (schovanými) záložkami přecházet se slide efektem (vzpomínáte si, jak jsem popisoval možnosti animací ve FireMonkey)? Přibylo několik standardních akcí pro TActionList - ukazována byla akce pro vyfocení obrazu integrovaným fotoaparátem, kdy v události přijde přímo bitmapa, kterou stačilo přiřadit komponentě obrázku. Obecně jsem už o práci s audio a video ve FireMonkey taky něco napsal.

Mezi dalšími akcemi byl zmiňována třeba akce typu vyfoť a nabídni sdílení (facebook, twitter atd.) - tak jak jsou uživatelé iOS zvyknutí, akce pro změnu záložky se zmiňovaným slide efektem atd. Prezentovány různé prvky UI, nativní prvky FireMonkey z iOS (např. výběr data přes ten buben).

Jako perlička vývoj v 3D - přímo v IDE vytvořeny v OpenGL kostky, připojena animace atd. Ohledně 3D jsem tu již také psal - navíc je to mezi demy v Delphi - myslím, že se jmenuje controls nebo tak nějak.

Byl ukazován rozšířený FireMonkey TListBox, tohle je ze stránek Marca Cantu -

TListBox

jen ten ukazovaný měl ještě kromě položek, header, footer, skupiny a vyhledávací pole.

Z hlediska portability je IMHO FireMonkey připravena velmi dobře, takže další platformy (Android) už snad nebudou představovat velké změny.

Ohledně FireDAC: dá se dokoupit pro lib. Embarcadero verzi Professional Delphi nebo je součástí vyšších verzí XE3. Bylo ukazováno akorát připojení přes komponenty na formuláři. Osobně preferuji spíše dynamický přístup. Výsledná aplikace je monolitická, ne jak v případě DBExpress, kdy byl dodávána ještě DLL knihovna pro připojení. Navíc se u FireDAC dá vytvořit připojení dynamicky - opět plus proti DBExpress a jeho problémům s ini souborem.

Jinak byla XE3 podle všeho poslední verze s BDE.

Zkusím v brzké době nějaký malý tutoriál ohledně FireDAC, ale je to jednoduché jako žebřík.

Více, až budu moci. Pawel v jednu chvilku těžce zariskoval, když si popletl Brno s Prahou a nazval první projekt Prague:-). Jinak díky všem za pochvaly ohledně Delphi.cz.

Brno ARM Delphi

P.S.: R. Voltr tam měl MS surface postavený na ARM. Moc pěkný HW a i to "Metro" má něco do sebe.

Tagy: , , ,

Akce

Komentáře

13.3.2013 10:55:51 #

Fala

nevíte, jestli je někde ke stažení ta Pawlova prezoška?

Fala

13.3.2013 11:49:34 #

Richard Kubát

Dobrý den. Zkusím prezentaci od Pawla získat a zveřejnit, nebo alespoň poslat všem účastníkům. Nicméně se mi zdá, že Pawel především ukazoval příklady a těch obrázků moc neměl. Dejte mi pár dní; Pawel hodně cestuje, takže to může nějaký čas trvat.

Richard Kubát

13.3.2013 15:59:32 #

Petr Kohut

Dobrý den,
mě přišla jako zásadní informace o rozdílu v indexování řetězců mezi vývojem pro iOS a pro Desktop. Sice to půjde ovlivnit direktivou kompilátoru, ale výchozí nastavení bude od 1 pro Desktop a od 0 pro mobilní zařízení. Pokud jsem to teda nepochopil špatně.

Petr Kohut

13.3.2013 16:07:04 #

radekc

Já stále doufám, že si to rozmyslí a nejsem sám. Dokud nebude RTM, tak budu doufat. Je to složitější problém a nechtěl bych to teď řešit dokud to nebude definitivní.

radekc

13.3.2013 17:07:36 #

RadekV

Jedna poznamka - diskutovali jsme kolik zarizeni mezi lidma ma iOS mensi nez podporovane (tj. 5.1) verze. Podle nasich statistik z Vikings & Dragons hry pro iPad/iPhone (je venku uz vic nez rok) je to aktualne pod 10%. Zatim vsechny nativni apps targetujeme na 4.1 ale je pravdou ze ta 5.1 asi nebude zasadni problem. Koukal jsem na wiki a na 5.1 jsou updatovatelne vsechny iPADy (vcetne 1cky), iPod Touch od 3ti generace a iPhone od 3GS

RadekV

13.3.2013 20:28:14 #

bullhead

..to RadekV:
http://www.tuaw.com/2013/02/13/chitika-all-versions-of-ios-6-now-account-for-83-1-of-ios-traf/
...data únor 2013; dle web přístupů; platí pro severní ameriku (USA a Canada) ...ale čekal bych, že velmi podobné je to i v jiných státech
B.

bullhead

14.3.2013 19:07:44 #

geby

Mohl by mi nekdo osvetlit, jak je to s temi $99 rocne? K cemu je to potreba?

geby

14.3.2013 19:24:23 #

radekc

Pozadavek Apple, tim dostanes nejake data (provisioning), ktere potrebujes pro to, aby jsi poslal svuj program na device (pokud ho nemas jailbreaknute) - zjednodusene licencni klic. Pro simulator to neni treba. Bez toho take nejde vystavovat svuj program na Apple store. https://developer.apple.com/devcenter/ios/index.action

radekc

14.3.2013 19:38:06 #

Zdeněk Vašků

To pagecontrol bylo pěkný. Taky se dole automaticky objevily tečky podle počtu záložek.

Zdeněk Vašků

14.3.2013 21:00:42 #

RadekV

Vsechny mobilni shopy maji nejaky poplatek za pristup/zverejneni ci odemceni zarizeni :

iOS - $99 , lze vice vyvojaru i zarizeni (myslim ze limit je 100/100), bez zaplaceni se neda sw oficialne dostat do hw zarizeni

Android - $5 (myslim, je mozne ze to menili), pro upload do zarizeni neni potreba, pouze pro store

Windows RT (alias Windows Metro pro tablet a desktop) - $99 , do zarizeni ale software dostanete s tzv. developer licenci ktera plati mesic (pak je potreba o ni znova pozadat, pozaduje Microsoft ID / heslo, jinak nic)

Windows Phone 7.5/8 - $99 , pouze jeden email (a vyvojar), developerskych zarizeni lze odemknout (myslim) 3ks ale pro testy lze dat sw do storu jako testovaci verzi a poslat link testerovi. Pak se neschvaluje ale jde instalovat i do neodemceneho hardware. Odemceni je nutne hlavne pro remote debug


Pozor na to ze i u Apple se plati $99 jeste za desktopovy store ale maj to jinak podelene - i z hlediska SDK/API na iOS (iPhone/iPAD) a MacOS (Desktop) , proti MS kde je to Windows Store (Tablet/Desktop) a Phone Store (Windows Phone)

Dale pozor na to ze Apple je agresivni jak svina a napr. nechcou schvalovat cokoliv kde se da dostat na jiny zpusob placeni nez jejich, dost casto neprojde ani kod ktery je obecne dostupny (napr. clovek pouzije jako resource ID cislo ktere odkazuje na ikonku v system aby ji mel stejnou. Pokud neni oficialne povolena v SDK tak aplikace neprojde)

RadekV

15.3.2013 11:50:11 #

bullhead

to geby: ...ještě k tomu Apple poplatku
1.
...je to poplatek že jsi ofiko Apple Developer, že můžeš ofiko vyvíjet, můžes si vygenrovat certifikáty apod.  - 99,- ročně je pro iOS a dalších 99,- ročně pokud chceš vyvíjet i pro OS X.

2.
Máš díky tomu přednostně například jak bety XCode, tak bety iOSx (můžeš se předem připravit na novinky - iOS 6 přišla v beta programu už někdy v polovině 2012) tak bety OS X (už pár měsíců chodí bety 10.8.3ky).

3.
...a jen taková perlička, pokud to nezměnili, vyžadují pro evropu FAX ...jako opravdu faxové číslo z kterého pošleš svůj registrační formulář:-))) ...jsem myslel, že se zbláznili - naštěstí se dají pořídit virtuální faxová čísla.


to RadekV: "Dale pozor na to ze Apple je agresivni jak svina a napr. nechcou schvalovat co..."
...ano jsou, ale upřiměně, ten BORDEL co je na Androidu, je opravu hrůza - přešel jsem z iPhone na Android a nechápu že pouštějí vše do storu - nefunknčí aplikace, mallware, naprosté hovadiny z vygenerovanými stovkami "supr" komentářů a je to nesmysl apod. (ale před pár dny jsme někde četl že i Google to začne více hlídat - konečně).

B.

bullhead

25.3.2013 8:52:58 #

Zdeněk Dušátko

moc se mi líbil FireDAC na semináři v Brně, ale zjistil jsem že nemám žádnou šanci jak ho reálně vyzkoušet před případnou koupí. Stáhnul jsem trial Delphi XE3 ale FireDAC dle ofiko stránek se jako trial nedá stáhnout. Máte někdo nějaké řešení ?

Zdeněk Dušátko

25.3.2013 11:30:59 #

radekc

>Zdeněk Dušátko
První verze FireDAC je v podstatě AnyDAC, takže si stáhni trial verzi AnyDACu - http://www.da-soft.com/download/anydac/anydac-trial/download.html

radekc

Komentování ukončeno

Naše nabídka

MVP
Ing. Radek Červinka - Embarcadero MVP
profil na linkedin, Twitter:@delphicz

Nabízím placené poradenství a konzultace v oblasti programování a vývoje SW.
Dále nabízíme i vývoj speciálního software na zakázku.

Neváhejte nás kontaktovat (i ohledně reklamy).

love Delphi

O Delphi.cz

Delphi je moderní RAD nástroj podporující tvorbu nativních aplikací pro platformu Win32, Win64, Mac OSX, Linux a na iPhone a Android.

Delphi.cz je nezávislý portál pro uživatele Delphi. Portál není koncipován pro úplné začátečníky, i když i ti se zde nebudou nudit, ale spíše na programátory, kteří již něco znají a chtějí své znalosti dále rozvíjet a sledovat novinky.

Poslední komentáře

Comment RSS

Dle měsíců