Tüm Platformlar için Hızlı Uygulama Geliştirme Kitabı... Delphi
Ön Sipariş Talebinde Bulunan Üyelerimiz
Sipariş Talebinde Bulunan Üyelerimiz

Konuyu Paylaş : facebook gplus twitter

Konuyu Oyla:
  • Derecelendirme: 0/5 - 0 oy
  • 1
  • 2
  • 3
  • 4
  • 5
DevExpress tarafında gelişmeler ve anket
#1
Merhabalar,

Devexpress, lisanslı kullanıcılarının oy kullanabilmesi için bir anket düzenledi. Bu anket ile DevEX kullanıcısı olarak en çok hangi teknolojiler ile ilgilendiğimizi soruyorlar. Biz de bu anket ile DevEx'in yeni sürümlerinde neler çıkacak öğrenmiş olduk Smile

Anketin linki şöyle :
Linkleri Görebilmeniz İçin Giriş yap veya Üye Ol

Fikir vermesi açısından aşağıya bir ekran görüntüsü ekledim. Güzel şeyler bizi bekliyor Smile :

10ppobn.png
Dmitry Kouzmenko ve Dmitry Yemanov ile çalışmış , Eski IBSurgeon personeli, Kıdemli Firebird Kurtarma Uzmanı, Firebird Foundation bağışçısı...
Cevapla
#2
Merhaba,
Müjdeli haber için teşekkür ederiz. 

smiley.jpg

FireMonkey mimarisinin çok doğru bir temel üzerine kurulduğunu 5 yılda bir çok tecrübe kazanıldığını ve doğru yolda olduğunu her teknolojisini test eden biri olarak sürekli söylüyordum. Son dönemlerde de (son sürümlerle beraber) gayet stabil olduğunu söylemiştim. 
Devexpress FireMonkey bileşenleri üretme konusunda çok düşündü (yaklaşık 5 yıl) ve çok geciktiğini düşünüyorum.
Paylaşmış olduğunuz bilgilerden öyle anlaşılıyor ki; 
Artık VCL'in yanında, Multi-Platform gerçeğini ve Multi-Platformun Delphi yazılım geliştiricilerinin yavaş yavaş vazgeçilmezleri arasına girdiğini görmeye başladı.
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
(09-03-2018, Saat: 15:31)Fesih ARSLAN Adlı Kullanıcıdan Alıntı: Linkleri Görebilmeniz İçin Giriş yap veya Üye OlMerhaba,
Müjdeli haber için teşekkür ederiz. 

smiley.jpg

FireMonkey mimarisinin çok doğru bir temel üzerine kurulduğunu 5 yılda bir çok tecrübe kazanıldığını ve doğru yolda olduğunu her teknolojisini test eden biri olarak sürekli söylüyordum. Son dönemlerde de (son sürümlerle beraber) gayet stabil olduğunu söylemiştim. 
Devexpress FireMonkey bileşenleri üretme konusunda çok düşündü (yaklaşık 5 yıl) ve çok geciktiğini düşünüyorum.
Paylaşmış olduğunuz bilgilerden öyle anlaşılıyor ki; 
Artık VCL'in yanında, Multi-Platform gerçeğini ve Multi-Platformun Delphi yazılım geliştiricilerinin yavaş yavaş vazgeçilmezleri arasına girdiğini görmeye başladı.

Merhaba,

DevExpress'in Firemonkey'i desteklemesi çok güzel bir haber, ama maalesef sizin tespitiniz pek doğru değil. Firemonkey'in temelleri inanılmaz yanlış. 

1. Arayüzleri, native bileşenlerle oluşturmak yerine hepsini grafik motoru kullanarak (OpenGL veya DirectX) ekrana basmak yanında bir sürü ek problem de getiriyor. 

1.1 Bileşen sayısının fazla olması durumunda performans çok düşüyor. Bu zaten Firemonkey uygulamalarının bilinen bir sorunu.

1.2 Bileşenlerin görünümü platformun varsayılanı ile uyuşmuyor. Firemonkey hep platform varsayılanı taklit ediyor. Bu da tema desteği veren platformlarda sorun yaratıyor.

1.3 Native bileşenler, işletim sistemi tarafından çok hızlı çalıştırılır. Firemonkey onları taklit ettiği için maalesef yavaş çalışıyor.

1.4 Render işlemlerini işletim sistemine yaptırmadığı için donanım bağımlılığı var. Gerçi günümüzdeki cihazlarsa sorun olmuyor, ama bu donanım bağımlılığı gerçeğini değiştirmiyor.

1.5 Uygulama açılırken, bizim yazmadığımız kütüphaneleri yüklemek zorunda kalıyor. Bu yüzden de ilk açılış süreleri fazla uzun. Uygulamaya splash screen koymadığınız takdirde programın gerçekten de çalışıp çalışmayacağı belli olmuyor Smile

2. VCL ile uyumlu olabilecek bazı özellikler değiştirilmiş. Burada TLabel.Caption -> TLabel.Text gibi gereksiz özellik değişiklikleri de var, TBitmap'deki gibi uyumlu olabilecekken uyumsuz yazılmış sınıflar da.

3. Firemonkey, temel olarak bol hata içerdiği bilinen VGScene (ya da öyle bir şey) bileşen seti üzerine kurulu. Zaten ilk 3 sürümde neredeyse sadece hata düzelttiler.

4. Yukarıdaki yazdıklarımı fark etmiş olacaklar ki son sürümlerde Control Style: Native/Styled (tam hatırlamıyorum) diye özellik eklediler.

İşin doğrusu şu haliyle Firemonkey maalesef pek işe yarar değil. Mobil tarafından basit iş uygulamaları için ideal. Masaüstünde ise olursa DevExpress gibi kaliteli bileşen üreten firmalar sayesinde olur. Ama ben DevExpress bileşenlerinin makul tutarlarda olacağını pek sanmıyorum.

İyi çalışmalar
Cevapla
#4
Devexpress VCL tarafında mükemmel diyebilirim
Yalnızım ama bir kente yürüyen ordu gibiyim, edebiyattan kaçınmalıyım..
Cevapla
#5
(09-03-2018, Saat: 16:30)Bahadir.Alkac Adlı Kullanıcıdan Alıntı: Linkleri Görebilmeniz İçin Giriş yap veya Üye Ol
(09-03-2018, Saat: 15:31)Fesih ARSLAN Adlı Kullanıcıdan Alıntı: Linkleri Görebilmeniz İçin Giriş yap veya Üye OlMerhaba,
Müjdeli haber için teşekkür ederiz. 

smiley.jpg

FireMonkey mimarisinin çok doğru bir temel üzerine kurulduğunu 5 yılda bir çok tecrübe kazanıldığını ve doğru yolda olduğunu her teknolojisini test eden biri olarak sürekli söylüyordum. Son dönemlerde de (son sürümlerle beraber) gayet stabil olduğunu söylemiştim. 
Devexpress FireMonkey bileşenleri üretme konusunda çok düşündü (yaklaşık 5 yıl) ve çok geciktiğini düşünüyorum.
Paylaşmış olduğunuz bilgilerden öyle anlaşılıyor ki; 
Artık VCL'in yanında, Multi-Platform gerçeğini ve Multi-Platformun Delphi yazılım geliştiricilerinin yavaş yavaş vazgeçilmezleri arasına girdiğini görmeye başladı.

Merhaba,

DevExpress'in Firemonkey'i desteklemesi çok güzel bir haber, ama maalesef sizin tespitiniz pek doğru değil. Firemonkey'in temelleri inanılmaz yanlış. 

1. Arayüzleri, native bileşenlerle oluşturmak yerine hepsini grafik motoru kullanarak (OpenGL veya DirectX) ekrana basmak yanında bir sürü ek problem de getiriyor. 

1.1 Bileşen sayısının fazla olması durumunda performans çok düşüyor. Bu zaten Firemonkey uygulamalarının bilinen bir sorunu.

1.2 Bileşenlerin görünümü platformun varsayılanı ile uyuşmuyor. Firemonkey hep platform varsayılanı taklit ediyor. Bu da tema desteği veren platformlarda sorun yaratıyor.

1.3 Native bileşenler, işletim sistemi tarafından çok hızlı çalıştırılır. Firemonkey onları taklit ettiği için maalesef yavaş çalışıyor.

1.4 Render işlemlerini işletim sistemine yaptırmadığı için donanım bağımlılığı var. Gerçi günümüzdeki cihazlarsa sorun olmuyor, ama bu donanım bağımlılığı gerçeğini değiştirmiyor.

1.5 Uygulama açılırken, bizim yazmadığımız kütüphaneleri yüklemek zorunda kalıyor. Bu yüzden de ilk açılış süreleri fazla uzun. Uygulamaya splash screen koymadığınız takdirde programın gerçekten de çalışıp çalışmayacağı belli olmuyor Smile

2. VCL ile uyumlu olabilecek bazı özellikler değiştirilmiş. Burada TLabel.Caption -> TLabel.Text gibi gereksiz özellik değişiklikleri de var, TBitmap'deki gibi uyumlu olabilecekken uyumsuz yazılmış sınıflar da.

3. Firemonkey, temel olarak bol hata içerdiği bilinen VGScene (ya da öyle bir şey) bileşen seti üzerine kurulu. Zaten ilk 3 sürümde neredeyse sadece hata düzelttiler.

4. Yukarıdaki yazdıklarımı fark etmiş olacaklar ki son sürümlerde Control Style: Native/Styled (tam hatırlamıyorum) diye özellik eklediler.

İşin doğrusu şu haliyle Firemonkey maalesef pek işe yarar değil. Mobil tarafından basit iş uygulamaları için ideal. Masaüstünde ise olursa DevExpress gibi kaliteli bileşen üreten firmalar sayesinde olur. Ama ben DevExpress bileşenlerinin makul tutarlarda olacağını pek sanmıyorum.

İyi çalışmalar

Yanlış olsa idi; sizce bu yanlışı hangi akıllı/akıllılar 5 yıl devam ettirdi ve neden halen devam ettiriyorlar? Eğer yanlış ise Devexpress de bu yanlışa ortak oldu. Smile
Benim tespitim performans üzerine değildi, bunu hiçbir zamanda iddia etmedim. Performans sorunu bileşen yapısından veya fazlalığından kaynaklanıyorsa frame'lere bölünerek çözülüyor.
Veri tabanı sorgularından kaynaklı ise SP veya paylaşımlı veri havuzları (REST, WS vb) ile bu sorunlar ortadan kalkıyor.

Bunları laf olsun diye söylemiyorum, yaşamış olduğumuz tecrübelere dayanarak söylüyorum; bir IoT projemizde bahsetmiş olduğunuz bu performans sorunlarını yaşadık.
Asıl sorunun mantık ve algoritmik hatalarımızdan kaynaklı olduğunu gördük.
Proje 4-5 formdan oluşuyordu, DB sorgular yapıyorduk. Android platformunda ilk açılış süresi Intel tabanlı cihazda 10-13 sn. diğer CPU'lu cihazlarda 7-8 sn. iOS cihazda ilk açılış 5-6 sn. idi.
Çalışma anında ise zaman zaman tespit edemediğimiz kırılmalar oluyordu.

Uygulamayı yeniden analiz edip, sil baştan (Tuğrul hocamdan ücretsiz yarı zamanlı bir destek alarak) tasarladık.
Yeni projede 1 form, 1 DM, 9 frame kullanıldı. Android Intel tabanlı cihazlarda ilk açılışı 4-5 sn. diğer CPU'larda 2-3 sn. iOS cihazlarda dokunmadan açılıyor. Desem yalan olur tabi, o derece hızlandı.
Zaten mobil platformda tek bir form üzerinde bir çok bileşen yerleştirilmesi tasarım açısından da büyük güçlükler doğuruyor.
Native konusunda; sonraki sürümde temel bileşenlerin tümünün Native olacağı söyleniyor.

Bahsetmiş olduğum proje: Linkleri Görebilmeniz İçin Giriş yap veya Üye Ol, Linkleri Görebilmeniz İçin Giriş yap veya Üye Ol
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
#6
ankete katıldım firemonkey mobil e odaklı olarak giriş yaparlan inş
Cevapla
#7
(09-03-2018, Saat: 17:10)Fesih ARSLAN Adlı Kullanıcıdan Alıntı: Linkleri Görebilmeniz İçin Giriş yap veya Üye Ol
(09-03-2018, Saat: 16:30)Bahadir.Alkac Adlı Kullanıcıdan Alıntı: Linkleri Görebilmeniz İçin Giriş yap veya Üye OlMerhaba,

DevExpress'in Firemonkey'i desteklemesi çok güzel bir haber, ama maalesef sizin tespitiniz pek doğru değil. Firemonkey'in temelleri inanılmaz yanlış. 

1. Arayüzleri, native bileşenlerle oluşturmak yerine hepsini grafik motoru kullanarak (OpenGL veya DirectX) ekrana basmak yanında bir sürü ek problem de getiriyor. 

1.1 Bileşen sayısının fazla olması durumunda performans çok düşüyor. Bu zaten Firemonkey uygulamalarının bilinen bir sorunu.

1.2 Bileşenlerin görünümü platformun varsayılanı ile uyuşmuyor. Firemonkey hep platform varsayılanı taklit ediyor. Bu da tema desteği veren platformlarda sorun yaratıyor.

1.3 Native bileşenler, işletim sistemi tarafından çok hızlı çalıştırılır. Firemonkey onları taklit ettiği için maalesef yavaş çalışıyor.

1.4 Render işlemlerini işletim sistemine yaptırmadığı için donanım bağımlılığı var. Gerçi günümüzdeki cihazlarsa sorun olmuyor, ama bu donanım bağımlılığı gerçeğini değiştirmiyor.

1.5 Uygulama açılırken, bizim yazmadığımız kütüphaneleri yüklemek zorunda kalıyor. Bu yüzden de ilk açılış süreleri fazla uzun. Uygulamaya splash screen koymadığınız takdirde programın gerçekten de çalışıp çalışmayacağı belli olmuyor Smile

2. VCL ile uyumlu olabilecek bazı özellikler değiştirilmiş. Burada TLabel.Caption -> TLabel.Text gibi gereksiz özellik değişiklikleri de var, TBitmap'deki gibi uyumlu olabilecekken uyumsuz yazılmış sınıflar da.

3. Firemonkey, temel olarak bol hata içerdiği bilinen VGScene (ya da öyle bir şey) bileşen seti üzerine kurulu. Zaten ilk 3 sürümde neredeyse sadece hata düzelttiler.

4. Yukarıdaki yazdıklarımı fark etmiş olacaklar ki son sürümlerde Control Style: Native/Styled (tam hatırlamıyorum) diye özellik eklediler.

İşin doğrusu şu haliyle Firemonkey maalesef pek işe yarar değil. Mobil tarafından basit iş uygulamaları için ideal. Masaüstünde ise olursa DevExpress gibi kaliteli bileşen üreten firmalar sayesinde olur. Ama ben DevExpress bileşenlerinin makul tutarlarda olacağını pek sanmıyorum.

İyi çalışmalar

Yanlış olsa idi; sizce bu yanlışı hangi akıllı/akıllılar 5 yıl devam ettirdi ve neden halen devam ettiriyorlar? Eğer yanlış ise Devexpress de bu yanlışa ortak oldu. Smile
Benim tespitim performans üzerine değildi, bunu hiçbir zamanda iddia etmedim. Performans sorunu bileşen yapısından veya fazlalığından kaynaklanıyorsa frame'lere bölünerek çözülüyor.
Veri tabanı sorgularından kaynaklı ise SP veya paylaşımlı veri havuzları (REST, WS vb) ile bu sorunlar ortadan kalkıyor.

Bunları laf olsun diye söylemiyorum, yaşamış olduğumuz tecrübelere dayanarak söylüyorum; bir IoT projemizde bahsetmiş olduğunuz bu performans sorunlarını yaşadık.
Asıl sorunun mantık ve algoritmik hatalarımızdan kaynaklı olduğunu gördük.
Proje 4-5 formdan oluşuyordu, DB sorgular yapıyorduk. Android platformunda ilk açılış süresi Intel tabanlı cihazda 10-13 sn. diğer CPU'lu cihazlarda 7-8 sn. iOS cihazda ilk açılış 5-6 sn. idi.
Çalışma anında ise zaman zaman tespit edemediğimiz kırılmalar oluyordu.

Uygulamayı yeniden analiz edip, sil baştan (Tuğrul hocamdan ücretsiz yarı zamanlı bir destek alarak) tasarladık.
Yeni projede 1 form, 1 DM, 9 frame kullanıldı. Android Intel tabanlı cihazlarda ilk açılışı 4-5 sn. diğer CPU'larda 2-3 sn. iOS cihazlarda dokunmadan açılıyor. Desem yalan olur tabi, o derece hızlandı.
Zaten mobil platformda tek bir form üzerinde bir çok bileşen yerleştirilmesi tasarım açısından da büyük güçlükler doğuruyor.
Native konusunda; sonraki sürümde temel bileşenlerin tümünün Native olacağı söyleniyor.

Bahsetmiş olduğum proje: Linkleri Görebilmeniz İçin Giriş yap veya Üye Ol, Linkleri Görebilmeniz İçin Giriş yap veya Üye Ol

Fesih Bey, yazdıklarınızda benim söylediklerimin hiçbirine itiraz etmiyorsunuz. Tam aksine bu sorunları nasıl çözdüğünüzü anlatıyorsunuz. Eğer projeyi Android Studio veya XCode ile yazsaydınız, ne "Frame" kullanmak (bu IDE'lerde frame var mı bilmiyorum, o yüzden tırnak içinde yazdım) zorunda kalacaktınız, ne de açılış performansı için bu kadar uğraşmak. Siz Firemonkey'in temellerinin doğru/yanlış olmasını değil, Delphi'nin birden fazla platform için derleyiciye sahip olmasını beğeniyorsunuz Smile  Bunu ben de beğeniyorum ve bununla ilgili anket yaptıklarında da multiplatform için en yüksek oyu vermiştim.

Benim iddialarıma ve Firemonkey'in ilerleyişine bakacak olursanız aslında ikisi arasında bir tutarlılık göreceksiniz. Her platformun bileşenlerini taklit etmek kötü bir fikir. Bu kötü fikirden de dönüyorlar zaten. 

Embarcadero bu işe sağlam yatırım yaptı ve işin doğrusu geri adım atma seçeneği yok. Kylix macerasını hatırlayın. DevExpress firmasının bu kadar geç destek vermesinin sebebi de Kylix macerası zaten. Orada DevExpress'in ağzı çok kötü yandı. Bileşenlerinin bir kısmının cx, bir kısmının ise dx ile başlamasının sebebi de bu zaten. O yüzden ilk başta topa girmediler ve Embarcadero ve Delphi topluluğunun Firemonkey teknolojisinin arkasında durmasını beklediler. Anladığım kadarıyla artık eminler ki Firemonkey için bileşen yazmaya karar verdiler. Bence çok da iyi oldu, çünkü DevExpress'le birlikte Firemonkey ve Delphi çok daha büyük kitlelere ulaşabilir. Embarcadero şunun farkında: Firemonkey'den vazgeçer veya geri adım atarsa Delphi'yi Windows platformuna hapseder. Bu da Delphi'yi öldürür, çünkü hem masaüstü programcılık, hem de native Windows programcılığı hızla pazar kaybediyor. Firmalar ve kullanıcılar artık multiplatform uygulama istiyorlar. Microsoft bile Xamarin'i satın alıp bu yönde hareket ediyor, daha ne olsun Smile

İyi çalışmalar
Cevapla
#8
Merhaba,

Hayırlı olsun diyeceğim ama mobil applikasyonlara nasıl bir yük vereceği meçhul. Umarım kasma durumları yaşanmaz.

Teşekkürler.
Linkleri Görebilmeniz İçin Giriş yap veya Üye Ol
Cevapla

Konuyu Paylaş : facebook gplus twitter



Konu ile Alakalı Benzer Konular
Konular Yazar Yorumlar Okunma Son Yorum
  Devexpress Firemonkey için Kolları Sıvadı mı? Fesih ARSLAN 11 2.623 14-12-2017, Saat: 14:45
Son Yorum: mad85
  Devexpress FMX Desteği Hk. pro_imaj 1 598 13-08-2017, Saat: 11:27
Son Yorum: CaglarCoskun



Konuyu Okuyanlar: 1 Ziyaretçi