-
Aralarında teknik olarak neredeyse hiç fark yok, ikiside Qt Api’yı sunuyor. Kütüphaneleri import ederken sadece PyQt5 yerine PySide2 yazmanız yeterli (PySide2 kurulu ise).
-
PyQt, RiverBank isimli bir firma tarafından geliştirilirken, PySide, Qt’nin sahibi olan Qt Company tarafından geliştiriliyor.
-
PyQt, GPL v3 ve RiverBank ticari lisansı ile dağıtılırken, PySide LGPL v3 ve Qt ticari lisansı ile dağıtılıyor. Not: Qt’nin kendisi LGPL ve Qt ticari lisansı ile dağıtılıyor.
-
RiverBank, PyQt’nin 5.7 ve sonrasındaki sürümleri için Qt araçlarını wheel dosyası içerisinde yayınlamayı bıraktılar. Yani PyQt’nin 5.6 sürümünden sonraki sürümlerde Qt araçlarını kullanamazsınız. Bunun aksine, Qt Company PySide2 için hala resmi olarak Qt araçlarını (designer, linguist) yayınlıyor (wheel dosyası içerisinde). Not: PyQt’nin 5. sürümü için yayınlanan Qt araçlarını iki hayırsever geliştirici arkadaş Sourceforge’da ve Pypi’da paylaştılar. Ancak 5.7 ve sonrasındaki sürümler için sorun çıkarabilir, çünkü doğrudan Qt Company, RiverBank veya Qt Company ile anlaşmalı başka bir şirket tarafından yayınlanmıyorlar.
-
PyQt’nin daha büyük bir topluluk tarafından kullanılmasının sebebi, PySide’dan önce geliştirilmeye başlanması. PyQt5’in ilk kararlı sürümü 2016’da yayınlandı. PySide ise 2018 yılında Qt Company tarafından, Qt for Python projesi altında 2. versiyon olarak yayınlandı.
-
2009’da Nokia (o zamanlar Qt’nin sahibi idi), PyQt’ye karşılık kendi Python binding ini (ciltlemesini) oluşturmaya karar verdi ve PySide’ı geliştirmeye başladı.
-
Nokia, Microsoft’a satıldıktan sonra Qt, özellikle Symbian OS için GUI geliştirmek için kullanıldı. Daha sonra da Digia’ya satıldı. Bu olaylardan sonra PySide sadece açık kaynak topluluğu tarafından geliştiriliyordu.
-
2016’da Qt Company, PySide’i kendi bünyesine aldı. 2018’de ise resmi olarak PySide’i Qt for Python projesi olarak (PySide2) duyurdu. Kısa sürede büyük bir topluluğa erişebilmek için de LGPL lisansı ile dağıtıldı.
-
Qt for Python projesi için PySide2 ismi kullanılsa da aslında PySide2’nin şuan ki son sürümü 5.15.1 .
Bu tamamen sizin elinizde. Qt, CSS’i desteklemiyor ama temel işlevleri CSS’e çok benzeyen kendi stil sayfası dili olan QSS’i kullanıyor. setStyleSheet() metodu bu iş için yardımcı olabilir.
QSS yetersiz kalırsa QML modelleme dilini kullanabilirsiniz. QML’i kullanabilmek için QtQuick kütüphanesini import etmeniz gerekir. Qml kodlarını, .qml uzantılı dosyalar içerisine yazmalısınız. Daha sonra Python dosyanıza şu örnekteki gibi kullanabilirsiniz. Ek olarak qml kodları içerisinde JavaScript fonksiyonları yazarak da daha efektif, dinamik tasarımlar oluşturulabilir.
Videonun ilk 1 dakikasını izledim, responsive tasarım olması layouts (yerleşim alanları) sayesinde. Onun dışında tasarımda hoş, ama zor değil.
Sonuç olarak, PySide2 kullanın. Çünkü doğrudan resmi geliştiricisi olan Qt Company tarafından geliştiriliyor. Ücretsiz Qt araçlarını kolaylıkla temin edersiniz.