Haz 112016
 
2.825 views

Python için Yeni bir Çalışma Çerçevesi Kivy

Python‘un bana göre en zayıf tarafı, doğrudan desteklediği güçlü bir görsel çalışma çerçevesi (framework) olmamasıdır. TkInter bu konuda oldukça zayıf kalmaktadır. Qt tabanlı diğer çözümler ise, hem dolaylı hem de zordur.

Kivy bu boşluğu doldurmaya aday bir girişim. Henüz yeterince kullanıcı dostu olduğunu söylemek kolay değil. Ama, hiç olmazsa yeni bir seçenek sunuyor. Üstelik bu seçenek, mobil cihazlara yönelik çalışmalara da açık.

Bu yazımda size Ubuntu 14.04 LTS işletim sistemi üzerinde, Python 3.5.1 sürümü için Kivy 1.9.2 kurulumunun nasıl yapılacağını anlatacağım.

Pythonun son sürümünün bilgisayarınızda zaten kurulu olduğunu varsayıyorum. Ayrıca virtualenv de kurulu olmalıdır. (Virtualenv uygulaması, sistemden bağımsız sanal bir yapı oluşturur. Genel işleyişi etkilemeden bu ortamda istediğiniz herşeyi yapabilir. İşiniz bittiğinde de geride hiç bir çöp bırakmadan yaptıklarınızı silip temizleyebilirsiniz.)

Kurulumumuzu “sanal ortam” (virtualenv) ile yapılandıracağız.

Python için Yeni bir Çalışma Çerçevesi Kivy

Kurulumumuzu tamamladık.

Şimdi de klasik “Merhaba Dünya” kodlarımızı hazırlayalım:

Şimdi de çalıştıralım:

merhaba.py

Elbette kivy’nin tek yaptığı bu değil.

https://kivy.org anasayfasını incelerseniz, örnek kodlar ve açıklamalar bulabilirsiniz.

Bir sonraki yazımda, daha kapsamlı kivy kod örneklerine yer vereceğim.


Ahmet Aksoy

Not: Eğer kodlarınızı çalıştırdığınızda aşağıdaki gibi hata mesajları alırsanız, aldırmayın. Bu tür mesajlar sizin bilgisayarınızda mevcut (aktif) olmayan giriş-çıkış cihazlarından kaynaklanıyordur:
PermissionError: [Errno 13] Permission denied: ‘/dev/input/event5’

Not2: Yukarıdaki yazıyı, Kivy konusunda uzman olduğum için değil, kendi bilgisayarıma kurarken harcadığım deneme-yanılma sürelerini sizlerin de harcama olasılığını azaltmak amacıyla yazdım. Ne yazık ki Kivy hakkında yeterince aydınlatıcı doküman bulmak kolay değil. Ama bu şekilde deneyimlerimizi birbirimizle paylaşırsak, daha kolay ve hızlı çözümler elde edebiliriz.