Několik dalších informací o tom co nás čeká. Podrobné informace (určitě včetně benchmarku x64bit) budou po RTM verzi, do té doby jen útržky z toho co je povoleno publikovat.
XE2 a iOS
Delphi XE2 umí spolupracovat s FPC na vytváření ARM binárek pro iOS (pro tuto verzi jen pro výslednou kompilaci používáno FPC, jsou nějaké náznaky, že ještě v rámci XE2 bude dostupný přímo Delphi kompilátor pro iOS). Podle všeho Linux a Android je plánován pro XE3.
Pro vytváření aplikací pro iOS (tedy iPhone, iPod, iPad …) budete potřebovat XE2 a Mac (Lion nebo Snow Leopard - pokud se nepletu). Jde to i tak, že na Mac budou virtualizována Windows, naopak to není garantováno 100%. Navíc pro výsledný překlad pro iOS zařízení je třeba být registrovaným Apple vývojářem ($99 na rok). Pro testování na emulátoru to není třeba.
Pro podrobnější info Introduction to iOS for Delphi Developers nebo iPod development na FPC.
FireMonkey a RDP
Jelikož je FireMonkey velmi HW efektivní (ideálně Pixel Shader 2.0 z DirectX 9.0 - tj. technologie cca 2003), určitě Vás napadlo jak je to s RDP (Remote Desktop Protokol).
Jsou dvě varianty: RDP na fyzickém počítači nebo RDP na VM (a taky trochu na OS, který běží)
Regarding RDP to physical machine
Regarding RDP to a Win7 or Vista physical machine works fine (Karl one
of our engineers working on FireMonkey has this as one of his main
development environments. The other is VMWare Fusion.) This is because
the RDP server for Vista and Win7 can handle 3D.
RDP to a WinXP physical machine that fully supports FireMonkey (has a
GPU) will work for 2D. For 3D applications RDP Server for WinXP can't
stream 3D content over the wire, this is a Windows RDP limitation, and
not FireMonkey.
2D should RDP fine all the way back to XP client and host. 3D needs
Vista or up on the host machine to RDP, XP ok on client machine.
Regarding RDP to VM's
Regarding XenAPP or VmWare ESX, basically any server based virtualized
environment that lacks a GPU.
This is fundamentally about the presence of a GPU. The GPU is involved
in three parts of FireMonkey: 3D, Shader based filters/effects, and 2D
drawing. FireMonkey will fall back to GDI+ based software rendering for
2D drawing, but there is no software fallback for 3D or Shader based
filters/effects.
In case you want more information about GPU virtualization I would
recommend you to read this thread
http://communities.vmware.com/message/1697721, it's a long thread but a
real case explaining the heavy use of 3D application in VM environments.
Andreano Lanusse
https://forums.embarcadero.com/thread.jspa?threadID=58208&tstart=0
Další věci
FireMonkey používá font z operačního systému.
Doufám, že je jasné, že pokud Váš OS je 32bit, tak budete sice mít možnost vytvářet 64bit aplikace ale pro jejich běh a ladění budete potřebovat druhý počítač, který bude s prvním spojen pomocí remote debuggeru. Pokud je Váš OS 64bit tak není problém. Ale i tak je ladění prováděno přes něco jako remote debugger, jelikož IDE je 32bit aplikace.
V článku Unit Scope Names v XE2 se dozvíte několik zásadních informací. Mimochodem tečkované názvy jednotek mají být neoficiálně podporovány od Delphi 7, oficiálně uvedeny v Delphi 2005.
Ve zkratce: Celá RTL a VCL je nyní striktně "tečkovaná", tj. např. Classes -> System.Classes.pas atd. Zásadní je, že s příchodem FireMonkey vznikl problém s identifikací jednotlivých frameworků, tj. nyní existuje např. VCL.Dialogs.pas a FMX.Dialogs.pas. Pravděpodobně budou i jednotky specifické pro OS např. Linux.xxxx, Windows.xxxx.
Pokud tedy napíšete uses Dialogs, kompilátor vezme tu jednotku, která je specifikována pro projekt - resp. podle specifikovaného prefixu (tj. VCL nebo FMX). Nebo můžete přímo napsat např. uses FMX.Dialogs.