Tüm Platformlar için Hızlı Uygulama Geliştirme --->    Kitabımız...      Delphi

Konuyu Paylaş : facebook gplus twitter

Konuyu Oyla:
  • Derecelendirme: 5/5 - 1 oy
  • 1
  • 2
  • 3
  • 4
  • 5
Delphi XE Mobilde Çalışma Mantığı Nedir?
#1
Selamün Aleyküm, herkese hayırlı bayramlar!

Delphi XE ve C++ Builder XE ile mobil uygulama geliştirebiliyoruz lakin benim merak ettiğim bir konu var: Delphi XE Android, iOS ve Windows Mobile'da nasıl çalışıyor? Daha fazla ayrıntıya inmem gerekirse; her mobil geliştiricinin bildiği gibi Android resmi olarak Java ile geliştiriliyor, iOS Objective-C / Swift ile geliştiriliyor, Windows Mobile ise C# (.NET) ile geliştiriliyor. Peki Delphi XE'de geliştirdiğimiz bir mobil uygulama Android'de, iOS'de ve Windows Mobile'da çalışmak için hangi evrelerden geçiyor?
Delphi kodları masaüstü yazılımlarda direk olarak makine koduna çevriliyor fakat mobilde de mi böyle oluyor?

Gerçekleşen evrenin nasıl olduğunu bilenler yardımcı olurlarsa çok sevinirim. Herkese şimdiden teşekkürler.
Cevapla
#2
(15-09-2016, Saat: 01:28)İbrahim Adlı Kullanıcıdan Alıntı: Linkleri Görebilmeniz İçin Giriş yap veya Üye OlSelamün Aleyküm, herkese hayırlı bayramlar!

Delphi XE ve C++ Builder XE ile mobil uygulama geliştirebiliyoruz lakin benim merak ettiğim bir konu var: Delphi XE Android, iOS ve Windows Mobile'da nasıl çalışıyor? Daha fazla ayrıntıya inmem gerekirse; her mobil geliştiricinin bildiği gibi Android resmi olarak Java ile geliştiriliyor, iOS Objective-C / Swift ile geliştiriliyor, Windows Mobile ise C# (.NET) ile geliştiriliyor. Peki Delphi XE'de geliştirdiğimiz bir mobil uygulama Android'de, iOS'de ve Windows Mobile'da çalışmak için hangi evrelerden geçiyor?
Delphi kodları masaüstü yazılımlarda direk olarak makine koduna çevriliyor fakat mobilde de mi böyle oluyor?

Gerçekleşen evrenin nasıl olduğunu bilenler yardımcı olurlarsa çok sevinirim. Herkese şimdiden teşekkürler.

Aleyküm Selam İbrahim Bey,
Sizin de az çok değindiğiniz gibi IDE (Yazılım Geliştirme Ortamı ) kendi dilini kullanarak bir derleyici vasıtası ile kodu makina diline yakın IL (Intermediate Language )'e dönüştürerek, platforma özgü çalıştırılabilir uygulamanın üretilmesini sağlar.
Peki Delphi Tek Kod (Tek Proje ) ile Tüm Platformlar için Nasıl Uygulama Geliştirebiliyor?
Delphi Kodu/Object Pascal kodu ve Platforma özgü API kodları Linkleri Görebilmeniz İçin Giriş yap veya Üye Ol vasıtası ile (Project Manager > Target Platforms > Platform Adı seçilerek compiler arka planda otomatik olarak belirlenmiş olur ) işlem görür.
Tüm Delphi derleyicileri, kodları hedef platformun anlayabileceği, çalışabilir uygulamaya (exe, apk, ipa vb.)  dönüştürür.
Özetle çalışma prensibi bu şekildedir.
Daha detaylı bilgi isterseniz, daha geniş bir zamanda anlatırız, İnşaallah.
Aşağıdaki resimde sormuş olduğunuz Tüm Platformlar için Uygulumu Gliştirmenin Temel Yapısı Gösterilmiştir.

15gpm61.jpg

İyi çalışmalar.
While true do; Hayat döngüsü, kısır değildir! Yapılan bir yanlış, o döngünün dışına çıkmanızı sağlayacaktır.
WWW
Cevapla
#3
Cevabınız için çok teşekkür ederim. Resimden anladığım kadarıyla Delphi XE kodları Android'de NDK ile beraber derlenip ELF formatına dönüştürülüp gerekli asgari düzeyde Java koduyla apk oluşturuluyor. SMS, Service vs. Android'e özgü sınıflar da native Java kodu ile sanırım JAR formatında Delphi'de JNI ile kullanılmasını sağlıyor. iOS'de ise direk kod native olarak derleniyor. Windows kısmına ise hakim değilim, açıklama gerekebilir.

Yani resimden anladığım Delphi kendine özgü kütüphanelerini NDK ile birlikte derliyor lakin SDK içinden gerekli kütüphaneleri JNI ile çalıştırıyor. Delphi ELF formatı + JNI Java.
Cevapla
#4
(15-09-2016, Saat: 02:26)İbrahim Adlı Kullanıcıdan Alıntı: Linkleri Görebilmeniz İçin Giriş yap veya Üye OlCevabınız için çok teşekkür ederim. Resimden anladığım kadarıyla Delphi XE kodları Android'de NDK ile beraber derlenip ELF formatına dönüştürülüp gerekli asgari düzeyde Java koduyla apk oluşturuluyor. SMS, Service vs. Android'e özgü sınıflar da native Java kodu ile sanırım JAR formatında Delphi'de JNI ile kullanılmasını sağlıyor. iOS'de ise direk kod native olarak derleniyor. Windows kısmına ise hakim değilim, açıklama gerekebilir.

Yani resimden anladığım Delphi kendine özgü kütüphanelerini NDK ile birlikte derliyor lakin SDK içinden gerekli kütüphaneleri JNI ile çalıştırıyor. Delphi ELF formatı + JNI Java.

Rica ederim, platformumuzun amacına hizmet etmeye çalışıyoruz.
Tespitleriniz çok doğru. Daha önceki sürümlerde (Delphi 10.1 Berlin öncesi) Jar dosyası doğrudan kullanılamıyordu. Harici veya ek bir işlem ile java class'ları bir dosya (classes.dex ) içerisine gömülerek Delphi IDE'si tarafından kullanılabiliyordu. Yeni sürümle (Delphi 10.1 Berlin ) beraber bu durum daha da kolaylaştırıldı. Sizin de belirttiğiniz gibi  JAR formatındaki dosya doğrudan (Project Manager > Target Platforms > Android > Libraries ) kullanılabiliyor.
Delphi'nin her sürümü bir öncekine göre işleri biraz daha kolaylaştırıp, iş yükünü hafifleterek, tüm platformlarda daha hızlı ve kolay uygulama geliştirmenin yolunu açıyor.
While true do; Hayat döngüsü, kısır değildir! Yapılan bir yanlış, o döngünün dışına çıkmanızı sağlayacaktır.
WWW
Cevapla

Konuyu Paylaş : facebook gplus twitter



Konu ile Alakalı Benzer Konular
Konular Yazar Yorumlar Okunma Son Yorum
  Delphi AVD Manager kullanımı Bay_Y 4 72 17-02-2018, Saat: 14:09
Son Yorum: hyperxman
  Delphi Android Java Tetikleyici hyperxman 0 63 15-02-2018, Saat: 01:06
Son Yorum: hyperxman
  Delphi Android Sayı Karmaşası [Çözüldü] codder71 2 152 12-01-2018, Saat: 15:54
Son Yorum: codder71
  Delphi Dahili Hafıza Boyutu Öğrenme codder71 4 166 08-01-2018, Saat: 01:33
Son Yorum: codder71
  Delphi Android Java kullanmak AliZairov 10 931 21-12-2017, Saat: 18:09
Son Yorum: Abdullah ILGAZ



Konuyu Okuyanlar: 1 Ziyaretçi