Açık Kaynak Kodlu 5 Python GUI Framework’ü

Çoğu programcının yazılım yolculuğunda, temel örnekleri geçip programlarına grafiksel bir arayüz oluşturmaya karar verdikler bir zaman gelir. Python’da, GUI programlamaya başlamak çok karmaşık değildir, ancak kullanıcının başlamak için bazı seçimler yapmasını gerektirir. Neyse ki, kullanıcıların programlarıyla etkileşime girmesi için kolay bir yol oluşturmak isteyen programcılara birçok seçenek vardır. Linux, Windows ve Mac’e özgü veya her üçünde de çalışanlar dahil olmak üzere birçok GUI paketleri mevcuttur. Bu yazımızda, açık kaynak kodlu 5 Python GUI Framework’ü listeleyeceğiz.

PyQt

pq-qt

PyQt, popüler Qt kütüphanesini uygular. Bu nedenle eğer KDE veya başka bir Qt tabanlı masaüstü ortamı için uygulamalar geliştirdiyseniz, zaten Qt’ye oldukça kolay bir şekilde alışacaksınız. Qt topluluğunun araçlarından ve bilgisinden yararlanırken, birçok platformda tanıdık bir görünüme sahip Python dilinde uygulama geliştirme şansını da elde edersiniz.

Python uygulamalarını Qt frameworkünde yazmak, uygulamanızın düzeni için tasarımcı modu içeren QtCreator’a erişiminiz olduğu anlamına gelir.

PyQt, Qt projesinin kendisinden farklı olarak hem ticari hem de GPL lisansı altında çift lisanslıdır ve PyQt’u destekleyen birincil şirket, bunun uygulamanız için ne anlama geldiğini anlamanıza yardımcı olacak bir lisans SSS (Sıkça Sorulan Sorular) sunar.

Tkinter

tkinter-gui

Python için “standart” GUI araç seti olarak adlandırabilecek tek bir paket olsaydı, bu kesinlikle Tkinter olurdu. Tkinter, ilk olarak 90’lı yılların başında popüler hale gelen bir grafik arayüz ve dil geliştirme paketidir. Tkinter’ı kullanmanın en büyük avantajı, kitap ve kod örnekleri de dahil olmak üzere çok sayıda kaynak olması ve size yardımcı olacak geniş bir kullanıcı topluluğunun olmasıdır. Başlangıç düzeyinde basit örnekler vardır ve insanlar tarafından oldukça rahat okunabilir.

Tkinter, Python lisansı altında, Tcl / Tk’nin BSD lisansının üstünde bulunur.

WxPython

wxpython

WxPython, platformlar arası GUI kütüphanesini C++’dan Python’a getirir. WxPython, farklı işletim sistemlerinde Tkinter’a göre biraz daha doğal görünür, çünkü bir GUI oluşturmak için ana bilgisayar sisteminin widget’larını kullanır. Başlangıç için oldukça uygun bir kütüphanedir ve geliştirici topluluğu sürekli büyümektedir.

WxPython, üst projesi ve OSI onaylı olan wxWindows Kütüphane Lisansını kullanır.

Python GTK+ 3

5-acik-kaynak-kodlu-python-gui-frameworku-gtk

Eski adıyla PyGTK olarak bilinen Python GTK+ 3 projesi, GTK nesnelerine Python bağlamaları sağlar. GTK+ en çok GNOME masaüstünün temeli olarak kullanılırken Linux, Windows ve Mac’teki uygulamalar için de kullanılabilir.

Python GTK + 3 kullandığınızda, GTK + için oluşturulan geliştirme araçlarının çoğunu kullanabilirsiniz. En önemlisi, GTK + uygulamaları için bir arayüz tasarımcısı olan Glade’dir. Glade’de tasarlanan arayüzler XML olarak kaydedilir ve GtkBuilder nesnesi tarafından uygulama kodunuzda kullanılır, ancak kullandığınız arayüz sürükle ve bırak özelliğiyle, gördüğünüz şeyi çevirmek zorunda kalmadan dinamik ve duyarlı bir kullanıcı arayüzü oluşturmayı kolaylaştırır.

Kivy

5-acik-kaynak-kodlu-python-gui-frameworku-kivy

Hızlı geliştirme ve modern cihazlar için oluşturulan Kivy, Linux, Windows, Mac ve Android için bir araç setidir. Proje “yenilikçi kullanıcı arayüzleri”ne odaklanmıştır ve multimedya uygulamaları için kullanılmıştır.

Kivy, QtCreator ve Glade gibi görsel bir düzen programına sahip değildir, ancak UI düzenini kod nesneleriyle ilişkilendirmenize yardımcı olmak için kendi tasarım dilini kullanır. Bu uygulamanızda ki sınıfları ve işlevleri bölümlendirmenizi kolaylaştırır.

Bu yazımızda Python için açık kaynak kodlu 5 GUI framework’ü listeledik. Listelediğimiz bu Python GUI Framework’leri kullanabileceğiniz tek seçenekler değildir. Daha fazla seçenek için resmi Python Software Foundation wiki’deki “Python için GUI Programlama” sayfasını kontrol edebilirsiniz.

Teknoloji'den geri kalmamak için e-posta listemize abone olun!

Muğla Sıtkı Koçman Üniversitesi Bilgisayar Mühendisliği 3.sınıf öğrencisi.