Forum: D Programlama Dili RSS
Qt yerine CopperSpice
acehreli (Moderatör) #1
Kullanıcı başlığı: Ali Çehreli
Üye Haz 2009 tarihinden beri · 4527 mesaj
Grup üyelikleri: Genel Moderatörler, Üyeler
Profili göster · Bu konuya bağlantı
Konu adı: Qt yerine CopperSpice
Bu yazının bizi ilgilendiren özeti: D, CopperSpice'ın getirmeye çalıştığı sorunlar konusunda C++'tan çok üstün. C++'ın benzer eksikliklerinin bazıları belki C++17'de giderilecekmiş.

Dünkü aylık ACCU toplantısında Barbara Geller ve Ansel Sermersheim'ın kendi yazdıkları CopperSpice çatısını tanıttılar:

  http://www.copperspice.net/

Söylediklerine göre Qt'nin bir çok sorunu varmış:

  • Qt'nin yeni sahibi Digia'nın yaklaşımı beğenilmiyor. Örneğin, Qt 4 desteği bu sene sona erecekmiş, kullanıcıları açık koda değil, kapalı koda itiyorlarmış, vs.

  • moc denen araç modern C++'ı destekleyemiyormuş ve dizgiler üzerine kurulu olduğu için yavaşmış

  • vs.

Barbara ve Ansel Qt ile yola çıkmışlar, Qt 2'den kalan ve artık gerek olmayan sınıfları çıkartmışlar, moc'u tamamen atmışlar, Qt 5'ten bazı sınıflar eklemişler, ve böylece Qt'nin çok daha kullanışlı ve çok daha hızlı işleyen bir kopyasını oluşturmuşlar. Adına da CopperSpice demişler.

moc, Qt'nin signals and slots olanağını sağlayan bir programmış. Benim en çok ilgimi çeken, onu çıkarttıktan sonra onun yerine getirdikleri çözüm oldu: C++11'ın hemen hemen bütün olanaklarından yararlanarak programda kullanılan sınıflar hakkında meta bilgi ediniyorlar.

Yaptıkları son derece ilginç ve başarılı olsa da bana daha önceki C++ çatı sunumlarında hissettiklerimi hissettirdi: Evet, hepsi çok güzel ama keşke bu sorunları dilin kendisi çözebilse... Yaptıkları, D'nin derleme zamanı kod işletme, mixin, UDA, vs. gibi olanaklarıyla son derece basit olarak yapılabiliyor.

Özet:

  • Qt yerine CopperSpice'ı deneyin. Çok daha iyiymiş.

  • C++ yerine D'yi deneyin. Çok daha iyiymiş.

:)

Ali
Avatar
Salih Dinçer #2
Üye Ock 2012 tarihinden beri · 1912 mesaj · Konum: İstanbul
Grup üyelikleri: Üyeler
Profili göster · Bu konuya bağlantı
Sadeleştirmeleri ve hızlı şeyleri severim...

QT'ye karşı önyargım vardı. Sanırım lisansı serbest olan ve çok fazla karışmamış bir yoldan (kavşak, alt/üst geçitsiz) başlamayı tercih etmişler... Sinyal mevzuları en az trafikte seyreden araçlar kadar ilgimi çekiyor.  Ben de bu konuda bir proje geliştirmek isterdim.
Bilgi paylaştıkça bir bakmışız; kar topu olmuş ve çığ gibi üzerimize geliyor...:)
Avatar
Racih (Moderatör) #3
Üye Ağu 2009 tarihinden beri · 126 mesaj · Konum: Antalya
Grup üyelikleri: Genel Moderatörler, Üyeler
Profili göster · Bu konuya bağlantı
Bu çok iyi bir haber :)
kerdemdemir #4
Üye Eyl 2013 tarihinden beri · 123 mesaj · Konum: Danimarka
Grup üyelikleri: Üyeler
Profili göster · Bu konuya bağlantı
QT ile çok tecrübem yok sayılır.
Son 2 senedir kendi açık kaynaklı projemden ve 4 aydır QT kullanarak yazdığımız iş yerindeki projelerimizden aldığım  tecrübelerimden anladığım kadarıyla fikrimi paylaşacağım.

Moc gerçekten sorunlu bir şey. Derleme süresi belki 2 kat belkide daha çok artıran bir birşey.Sırf bu bile büyük projelerde insanın canın çok sıkıyor. 10 dakika kodun derlenmesi bekliyoruz.

Qt'nin Moc zamanında gerçekleştirdiği Macro'lar var. Örneğin foreach, fakat bunlar C++11 ile birlikte gerekliliğini kaybetmiş durumdalar.

Bunun yanı sıra C++11 öncesi "container" ' ların biraz zayıf olmasından dolayı QT QList, QVector gibi containerlar eklemiş. Ben kendimce utf8,utf16 yı destekliyen QString hariç hepsini gereksiz buluyorum. İş yerinde std::vector kullandığım için sürekli eleştiriliyorum. Örneğin std::deque'yu andıran QList'in resize methodu bile yok.

Fakat QT de yeni öğrendiğim "property system" 'in Moc olmadan nasıl gerçekleştirebileceğini hayal edemiyorum. XML dosyalarıyla resmen kod yazmamızı sağlayan bu güzel özellik bizim projemizi çok hızlandırmış durumda . Ve vazgeçebileceğimiz bir şey değil gibi duruyor. Lütfen ayrıntılar için linkteki "buttonDown" örneği inceleyin; http://doc.qt.io/qt-5/properties.html.

Not: Arkadaşlar kullandığım Türkçede çalışma hayatının getirdiği yozlaşmışlık olabilir örneğin "container" gibi, kusuruma bakmayın lütfen.
Bu mesaj kerdemdemir tarafından değiştirildi; zaman: 2015-07-05, 05:02.
acehreli (Moderatör) #5
Kullanıcı başlığı: Ali Çehreli
Üye Haz 2009 tarihinden beri · 4527 mesaj
Grup üyelikleri: Genel Moderatörler, Üyeler
Profili göster · Bu konuya bağlantı
Aşağıdaki saydam QT bilenlere daha çok hitap edecektir ama sanırım reflection şöyle yapılıyormuş:

  https://docs.google.com/presentation/d/1Sxei-Em6cnYbE0Zj16…

Belki önceki saydamlar daha açıklıyordur. Başka bilmiyorum. :)

Ali
acehreli (Moderatör) #6
Kullanıcı başlığı: Ali Çehreli
Üye Haz 2009 tarihinden beri · 4527 mesaj
Grup üyelikleri: Genel Moderatörler, Üyeler
Profili göster · Bu konuya bağlantı
CopperSpice ve Qt arasında ufak çaplı rezaletli bir dedikodu... :)

CopperSpice'çı Barbara ve Ansel Qt aleyhinde sunumlar vermeye başladıklarından beri doğal olarak Qt'cilerin rahatı biraz bozulmuş. Hatta, en son Qt konferansında herkesin ağzında CopperSpice varmış.

Bu konudan en rahatsız olanların başında Qt eğitimi veren KDAB firması geliyor. Bu adamlar CopperSpice'tan yeterince rahatsız olmuş olacaklar ki CppCon 2015'e bir konuşmacı göndermişler:

  https://www.youtube.com/watch?v=RXTfC-35Nx8

CppCon'daki nitelikli konuşmalar yanında oldukça zayıf kalan bir satış konuşması... Bir kere başlığın sunum ile ilgisi yok çünkü sunum yalnızca Qt satışından oluşuyor. Neyse... Kendi ayıpları... Bununla kalmayıp, "nedense bazı insanlar kod üretiminin yararını anlamıyorlar" diyerek Barbara ve Ansel'a laf sokuşturuyorlar. Hatta, araya sıkıştırdıkları bir saydamda CopperSpice'ın Qt'den ne kadar yavaş kaldığını "gösteriyorlar". (O saydam komik derecede çünkü bulabildikleri tek şey, gömülü bir ortamdaki bir Qt programında CopperSpice'tan daha az sayıda relocation olduğu yönünde. Evet, CopperSpice'lı program başlatılması farkedilmeyecek kadar bir süre daha uzun sürebilir ama bunun programın geri kalan çalışma hızıyla hiçbir ilgisi yoktur.)

Neyse... Barbara ve Ansel salonun arka tarafında gıkları çıkmadan (bu deyim hâlâ kullanılıyor mu? :) ) saygıyla sunumu izliyorlar. Ertesi gün kendilerinin CopperSpice sunumları var...

Onların sunumuna KDAB'li Milian da geliyor. Tek amacı, Barbara ile Ansel'ın sunumlarını berbat etmek. Sık sık elini kaldırarak "doğru değil!" "hayır efendim!" filan diye laflarını bölüyor. Konuşma piç oluyor... Barbara ve Ansel laflarını unutuyorlar. Milian önde ses çıkartmadığı zamanlarda bile sürekli olarak ağzını oynatarak onların dikkatini dağıtıyor.

Konuşma bitiminde Barbara bağıra bağıra adama bu saygısızlığa hakkı olmadığını anlatıyor. Kendilerinin onun satış konuşmasını bölmediklerini söylüyor... vs...

CppCon yönetimi Barbara ve Ansel'ın durumunu düzeltmek için onlara aynı sunumu bir kere daha yapma hakkı veriyorlar. Milian o sunumu izlemekten men ediliyor ve biz de CopperSpice'ın düzgün sunumunu izleyebiliyoruz:

  https://www.youtube.com/watch?v=LIiwBNvTllk

:)

Ali
Avatar
Racih (Moderatör) #7
Üye Ağu 2009 tarihinden beri · 126 mesaj · Konum: Antalya
Grup üyelikleri: Genel Moderatörler, Üyeler
Profili göster · Bu konuya bağlantı
Vaybe ! Neler olmuş öyle :D
agora #8
Üye Tem 2013 tarihinden beri · 221 mesaj
Grup üyelikleri: Üyeler
Profili göster · Bu konuya bağlantı
Ürün geliştirmekten çok ürün gelişimine laf atan kişilerden rahatsız oluyorum. İnsanlar amerikada da olsa gayet kültürlü ve iyi eğitimli de olsalar demek ki içlerinde insanlık dışı bazı durumlar da oluyor yani.
acehreli (Moderatör) #9
Kullanıcı başlığı: Ali Çehreli
Üye Haz 2009 tarihinden beri · 4527 mesaj
Grup üyelikleri: Genel Moderatörler, Üyeler
Profili göster · Bu konuya bağlantı
Evet, insanlar aynı. :) Ama düzeltmiş olmak için, KDAB bir Avrupa firması ve konuşmacı oradan gelmişti.

Yukarıda anlattığım olay inanılır gibi değil.

Ali
acehreli (Moderatör) #10
Kullanıcı başlığı: Ali Çehreli
Üye Haz 2009 tarihinden beri · 4527 mesaj
Grup üyelikleri: Genel Moderatörler, Üyeler
Profili göster · Bu konuya bağlantı
acehreli on 2015-02-12, 11:08:
Qt'nin yeni sahibi Digia'nın yaklaşımı beğenilmiyor. Örneğin, Qt 4 desteği bu sene sona erecekmiş, kullanıcıları açık koda değil, kapalı koda itiyorlarmış

Yeni karara göre Qt hep ücretsiz ve açık kodlu olacakmış:

  https://dot.kde.org/2016/01/13/qt-guaranteed-stay-free-and…

Ali
İbrahim #11
Üye Eki 2015 tarihinden beri · 156 mesaj
Grup üyelikleri: Üyeler
Profili göster · Bu konuya bağlantı
Yeni karara göre Qt hep ücretsiz ve açık kodlu olacakmış:

  https://dot.kde.org/2016/01/13/qt-guaranteed-stay-free-and…

Ücretsiz ve açık kodlu oluyorsa statik bağlama yasal mı oluyor acaba?
Doğrulama Kodu: VeriCode Lütfen resimde gördüğünüz doğrulama kodunu girin:
İfadeler: :-) ;-) :-D :-p :blush: :cool: :rolleyes: :huh: :-/ <_< :-( :'( :#: :scared: 8-( :nuts: :-O
Özel Karakterler:
Bağlı değilsiniz. · Şifremi unuttum · ÜYELİK
This board is powered by the Unclassified NewsBoard software, 20100516-dev, © 2003-10 by Yves Goergen
Şu an: 2017-11-21, 19:42:49 (UTC -08:00)