Jak działa Delphi XE2 na różnych platformach? [Zamknięte]

13

Czytałem więc trochę o Delphi XE2 i prawdopodobnie pójdę na światową trasę koncertową w Chicago, która pojawi się później w tym miesiącu i zadam to pytanie, czy nikt nie może tutaj odpowiedzieć.

Zastanawiam się, jak mój kod Delphi zostanie wykonany na komputerze Mac? Czy coś innego będzie musiało zostać uruchomione (np. Maszyna wirtualna), aby uruchomić program?

Peter Turner
źródło
1
Nie powiedzieli wprost, że Win64 i Mac będą kodami natywnymi - ale nie powiedzieli inaczej, a Delphi zawsze był kodem natywnym. Mają zasoby i rozległą wiedzę na temat budowania kompilatorów, więc nie widzę powodu, aby sądzić, że będzie to coś innego niż kod macierzysty. To powiedziawszy, nie widziałem nic oficjalnego, co by mówiło, że obsługa Maca będzie w tej wersji - tylko Win64. Chociaż byłbym bardzo zadowolony, że się mylę. FireMonkey to zestaw komponentów interfejsu użytkownika dla niestandardowych interfejsów typu flash.
GrandmasterB,
1
Ludzie, którzy znają wszystkie szczegóły, są prawdopodobnie objęci NDA i nie mogą powiedzieć.
Warren P,
1
Będzie natywny - zobacz ten raport z sesji w Auckland. W systemie Windows używa Direct2D lub Direct3D. W systemach OSX i iOS korzysta z bloga
Gerry
1
Zasadniczo część RTL VCL jest wieloplatformowa, więc jeśli chcesz zrobić GUI między platformami, musisz użyć FireMonkey.
Misha,
4
Głosuję za zamknięciem tego pytania jako nie na temat, ponieważ dotyczy ono konkretnego wsparcia oprogramowania (i materiałów opatrzonych datą historyczną).

Odpowiedzi:

1

Możesz teraz pobrać wersję próbną Delphi XE2 i wypróbować ją samodzielnie.

Firemonkey (FMX) to nowa, oparta na biznesie platforma międzyplatformowa 2d i 3d, na urządzenia z systemem Windows, Mac i iOS (iPad, iPod Touch, iPhone).

Rzeczywiście opiera się na technologii nabytej od firm ksdev i almdev z Rosji, a programiści z tych firm pracują teraz dla Embarcadero i byli częścią zespołu, który zbudował Firemonkey, oraz wsparcie nowych motywów VCL w XE2.

Firemonkey ma wiele zalet, ale Firemonkey XE2 to „pierwsze wydanie” zupełnie nowej platformy. Uważaj na wiele niesamowitych rzeczy pochodzących z Embarcadero w kolejnych kilku wydaniach, gdy Firemonkey rośnie i dojrzewa. Moim zdaniem praca z nim jest taka, że ​​„wyprzedza swój czas”. To świetny sposób na tworzenie świetnie wyglądających aplikacji.

Jednak nie jest tak dojrzały i zdolny jak VCL, szczególnie w Win32, przegapisz wiele rzeczy. Systemy raportowania. Itd. Z czasem pojawi się ekosystem komponentów zewnętrznych, ale na razie nie ma jeszcze dużych bibliotek komponentów zewnętrznych, które działałyby w FMX. Na przykład nie ma odpowiednika zestawów komponentów Developer Express lub TMS, nie ma Rave ani FastReports. Pierwszą stroną trzecią na pokładzie po wyjęciu z pudełka jest Czcigodny TeeChart, który jest teraz zarówno dla VCL, jak i Firemonkey. (Bardzo się cieszę, że to widzę. Byłoby smutno, gdyby „ramy biznesowe” były dostarczane bez możliwości tworzenia wykresów kołowych.)

Warren P.
źródło
Najwyraźniej mamy (choć raz wyprzedzając zakręt) jakiś pomysł, jak trudne / konieczne byłoby przekonwertowanie rzeczy takich jak virtualtreeview i trichview na firemonkey?
Peter Turner,
Prawie niemożliwe, chyba że napisałeś je w pierwszej kolejności, i naprawdę są naprawdę dobre w kodowaniu na niskim poziomie.
Warren P,
8

FireMonkey to platforma będąca wynikiem wynajmu twórcy VGScene i firmy KSDev. Następnie jest w dużej mierze oparty na OpenGL i jako taki nie jest trudny do przeniesienia kodu źródłowego między Windows i Mac.

Edycja: Kilka dodatkowych informacji o FireMonkey właśnie pojawiło się: http://www.andreanolanusse.com/en/a-little-bit-about-firemonkey-and-delphi-xe2/?utm_source=rss&utm_medium=rss&utm_campaign=a-little-bit -about-firemonkey-and-delphi-xe2

jszpilewski
źródło
2

Delphi XE2 wygeneruje wieloplatformowe pliki binarne. Tak, natywna aplikacja, bez żadnej maszyny wirtualnej.

Delphi XE2 pozostanie narzędziem wyłącznie dla systemu Windows, ale zawiera „kompilator krzyżowy” odpowiedni dla systemów Win32, Win64, Mac OSX, iOS oraz w najbliższej przyszłości Android i Linux.

W przypadku komputerów Mac i iOS ostateczną wersję należy wykonać na komputerze Mac przy użyciu XCode. Rezultatem będzie natywna aplikacja Mac OSX / iOS, która według Steve'a Jobsa jest w pełni wykonana na Macu, więc jest przyjazna dla App Store :)

W przypadku wieloplatformowego interfejsu GUI delphi zawiera nową platformę (obok czcigodnego VCL) o nazwie Firemonkey opartą na OpenGL dla komputerów Mac i DirectX dla Windows, co oznacza grafikę akcelerowaną sprzętowo. Firemonkey jest tematyczny, dzięki czemu możesz uzyskać „natywny” wygląd na każdej platformie lub zaprojektować własny motyw.

Daniel Luyo
źródło
Nie słyszałem, żeby ktokolwiek mówił o „generowaniu wieloplatformowych plików binarnych”. Mam wrażenie, że „generowanie plików binarnych na jedną platformę dla więcej niż jednej platformy”.
Mason Wheeler,
AFAIK wykorzystuje technologię „cross-kompilatora”. To oczywiste, kiedy spojrzysz na nowe IDE. Masz teraz „Cele”. Cel oznacza platformę. Musisz zdecydować i wybrać, do których „docelowych” celów. Buduj dla tego celu, a będziesz miał plik binarny dla tego celu. Na przykład Win32 i Win64 są różnymi obiektami docelowymi, ponieważ nie możesz mieć natywnej aplikacji Win32, która działa natywnie w Win64 (będzie działać, ale pod warstwą kompatybilności z systemem operacyjnym)
Daniel Luyo
1
Dla każdej platformy są osobne pliki binarne
Misha,
Widziałeś jak działa XCode? Czy Delphi wyrzuca kod zamiast plików binarnych, gdy ustawiasz swój cel jako OSX?
Peter Turner,
2

FreePascal zawsze był doskonałym frameworkiem / językiem i narzędziem. W rzeczywistości metoda tworzenia aplikacji dla iPhone'a poprzez projektowanie formularzy w Delphi, a następnie kompilowanie tego samego w Free Pascal (ponieważ Free Pascal nie miał projektanta, a Delphi nie miał kompilatora wcześniej) do generowania aplikacji dla iPoda / iPhone'a istniała ponad rok temu.

Ale Delphi XE uczynił tę funkcję niesamowitą funkcją w swojej najnowszej wersji - Delphi XE2. W Delphi XE2 możemy używać projektanta Firemonkey do tworzenia interfejsu użytkownika dla aplikacji mobilnych iPhone / Androd i to samo można skompilować dla iPhone'a lub Androida. To prawda, że ​​Delphi XE2 obecnie używa kompilatora FreePascal, ale wkrótce będzie miał swój własny kompilator (w trakcie realizacji). Jest to zgodne z informacjami uzyskanymi z oficjalnej światowej trasy Embarcadero, w której uczestniczyłem.

Widziałem demo, w którym Delphi XE2 FireMonkey został użyty do zaprojektowania aplikacji na iPhone'a / Androida i skompilowania tego samego projektu na iPhone'a / Androida !!! To było niesamowite zobaczyć demo działające na iPhonie itp.

BTW, czuję, że jedną z innych funkcji Delphi XE2, która najbardziej mi się podobała (oprócz 64-bitowej funkcji kompilacji) jest funkcja „Live Binding” (jest niesamowita i można ją opisać jako „łączenie dowolnych danych z czymkolwiek” - możliwości są ograniczone jedynie kreatywnością i projektem łączenia).

Surendran Krishnapuram
źródło
Wspaniale, nie mogę się doczekać, aby to zobaczyć. Za kilka tygodni jadę na World Tour w Chicago.
Peter Turner,
0

Uwierz mi, będzie macierzysta obsługa zarówno komputerów Mac, jak i Win64. I tak, Mac został potwierdzony w tej wersji, a także nowa platforma o nazwie FireMonkey do łatwego tworzenia aplikacji 2D i 3D dla komputerów Mac, iOS, Android i Windows.

Pateman
źródło
1
Tak bardzo, jak chciałbym ci wierzyć ;-) Odpowiedź na pytanie z „Uwierz mi” nie jest szczególnie satysfakcjonująca! Spróbuj kiedyś to zrobić na Skeptics.SE.
Peter Turner
Myślę, że spróbuję teraz. (Trollface włączony)
Warren P
-1

Jest tak dobry, ale obsługa RTL w tym wydaniu zawiera błędy. Embarcadero obiecał naprawić to w pakietach aktualizacji.

hamid
źródło