Gooey: Neredeyse Her Python Komut Satırı Programını Tam Teşekküllü Bir GUI Uygulamasına Dönüştürme
(github.com/chriskiehl)Gooey kullanarak Python konsol programlarını GUI uygulamalarına dönüştürme
- Gooey, Python 3 konsol programlarını kullanıcı dostu GUI uygulamalarına dönüştüren bir araçtır.
- Komut istemi yerine GUI sunarak programları daha kolay ve daha estetik hale getirebilir.
- Programcı olmayanlara yönelik betikler veya veri taşıma gibi işler için yardımcı araçlar oluştururken kullanışlıdır.
Gooey nasıl çalışır
- Gooey,
argparsebildirimi bulunan metoda bir dekoratör eklenerek koda bağlanır. - Çalışma anında Python betiğini ayrıştırır,
ArgumentParserreferansını çıkarır ve GUI'yi oluşturur. - GUI'de gösterilen bileşenleri daha ayrıntılı kontrol etmek için
GooeyParserkullanılabilir.
Gooey'nin uluslararasılaştırması
- Gooey kolayca çeşitli dillere çevrilebilir ve şu anda 18'den fazla çeviri içerir.
- Yeni bir dil desteği eklemek,
gooey/languages/dizinine anahtar/değer çiftleri eklemek kadar basittir.
Gooey'nin genel ayarları
- Gooey'nin genel görünümü ve hissi, dekoratöre argümanlar verilerek özelleştirilebilir.
- Kodlama, dil, başlangıç boyutu, yazı tipi ayarları gibi çeşitli yapılandırma bileşenleri özelleştirilebilir.
Gooey'nin düzen özelleştirmesi
- Gooey, birkaç basit özelleştirmeyle esnek düzenler sunar.
- Kenar çubuğunu gösterme, sekme grubu kullanma gibi seçeneklerle çeşitli düzen alternatifleri sağlar.
Gooey'nin çalışma modları
- Gooey, içerik türüne ve kullanıcının deneyim düzeyine göre düzeni ayarlayabilen çeşitli görüntüleme modları sunar.
- Gelişmiş, temel ve ayarsız modlar sayesinde farklı kullanıcı ihtiyaçlarına uygun özelleştirilmiş GUI'ler sağlanabilir.
Gooey'nin menüleri
- Özel menü grupları ve öğeleri Gooey'nin menü çubuğuna eklenebilir.
- Program bilgisi, mesaj iletişim kutuları, bağlantılar gibi öğeler sunmak için çeşitli menü seçeneklerini destekler.
Gooey'nin dinamik doğrulaması
- Kullanıcı girdileri programa iletilmeden önce Gooey, isteğe bağlı olarak ön doğrulama çalıştırarak tüm argümanların doğrulamadan geçtiğini kontrol edebilir.
Gooey'nin yaşam döngüsü olayları ve UI kontrolü
- Gooey, programın başarılı çalışması veya başarısızlığı sonrasında ek işlemler yapabilen ve UI'nin mevcut durumunu kontrol edebilen yaşam döngüsü kancaları sunar.
Gooey'nin ilerleme durumu gösterimi
- Gooey, metin tabanlı ilerleme güncellemelerine göre ilerleme çubuğunun durumunu güncelleyebilir.
- Düzenli ifadeler ve özelleştirilmiş değerlendirme ifadeleri aracılığıyla ilerleme durumu Gooey'ye bildirilebilir.
Gooey'nin simge özelleştirmesi
- Gooey, varsayılan simgeleri özel görseller/simgelerle değiştirme imkanı sunar.
image_dirargümanı üzerinden özel görsel dizini belirtilebilir.
Gooey'nin paketlenmesi
- Gooey'yi çalıştırılabilir dosya olarak paketlemek oldukça kolaydır ve pyinstaller kullanılarak uygulama dağıtıma hazır bir çalıştırılabilir dosya halinde paketlenebilir.
GN⁺ görüşü
Bu yazıdaki en önemli nokta, Gooey'nin Python konsol programlarını kolayca GUI uygulamalarına dönüştürebilmesidir. Bu, programları programcı olmayan kullanıcılar için daha tanıdık ve erişilebilir hale getirebilir; böylece geliştiriciler de kullanıcı arayüzü konusunda endişelenmeden iş mantığına odaklanabilir. Gooey'nin sunduğu çeşitli ayarlar ve özelleştirme seçenekleri, geliştiriciler için çekici bir tercih oluşturur ve GUI geliştirmeye giriş bariyerini düşürmeye önemli katkı sağlayabilir.
1 yorum
Hacker News yorumları
Geliştiricinin Gooey projesi hakkında açıklaması
argparsesağlam bir seçimdi.argparse'dan ayrılmış durumda.argparsehâlâ ana arayüz olarak kalıyor, ancak onun yerini alacak belirgin bir alternatif yok.Gooey ile
argparsearasındaki ilişki üzerine tartışmaargparsebasit işler için uygun, ancakClicktabanlı çok sayıda CLI var veClicküzerine kurulu popüler CLI kütüphaneleri de mevcut.Clickile uyumlu olup olmadığı doğrulanmamış; eğer yalnızcaargparseile sınırlıysa, "neredeyse tüm" ifadesi tam doğru olmayabilir.Gooey ile ilgili önceki tartışma bağlantılarının paylaşılması
İşletim sistemi ve shell'in programları daha iyi çalıştırabilmesine dair bir görüş
Textual framework'ünün tanıtılması
Textualframework'ü tanıtılıyor.ffmpeg için bir GUI sürümüne dair soru
Kullanıcı girdisi bekleyen CLI araçları ile Gooey'in nasıl entegre edileceğine dair soru
GUI'den CLI'ye dönüştüren araçlara ilgi
Naked Objects kavramına değinilmesi
Gooey'in web uygulaması üretip üretemeyeceğine dair merak