Tanışma ve çalışmaya nereden başlamalıyım

Arkadaşlar merhaba,
Aranıza yeni katıldım. Amatörüm, gurubu, sürekli takip etmekte olduğum bir forumda gördüm. Python sintaksını hiç bilmiyorum. Biraz araştırdım çok geniş kapsamlı olduğunu gördüm. elektronik alt yapım var. MCU’ ları assembly ile PC’ yi de VB:Net 2010 express edition ile programlayıp ara yüz yazabiliyorum. Python öğrenmek istememin nedeni Projelerimde Windows yüklü tablet yerine diğer android, yüklü ortamlara da ara yüz yazabilmek içindir. Yani android platformlara Py ile arayüz yazmaya çalışacağım. Bu konuda nereden başlayıp neleri öğrenmeliyim. Teşekkür eder sağlıklı günler dilerim.

Abi hoşgeldin.

Alttaki linkteki belgeler başlangıç olacaktır.

Kitap olarak da bulunmakta. Kitap fiyatları uçmuş tabi…

Merhaba,
Teşekkür ederim.

bu konuda çalışanlar yazarlar diye ben ses etmemiştim; ama anahtar kelime: “kivy”. şuraya bakabilirsiniz.

ayrıca forumda android ve python daha önce nasıl konuşulmuş diye bakabilirsiniz.

https://forum.yazbel.com/search?q=python%20android%20order%3Alatest

Merhaba, yanıt için teşekkür ederim.

Android için ilk tercih edilecek dilin python olduğunu düşünmüyorum. Hele ki arayüz tasarlamak için ilk tercih edilecek dilin python olduğunu hiç düşünmüyorum.

Python kötü dediğimi düşünmeyin, her dilde her iş yapılır ama, tereyağ bıçağı ile yapılacak iş, ekmek bıçağı veya motorlu terstere ile yapılmaz.

Neden kullanacağınız işletim sisteminin desteklediği ve dokümante ettiği dili kullanmak ve onunla arayüz oluşturmak yerine python tercih edersiniz bilemem.

Ama ısrarcı iseniz somut örnekler üzerinde soru sorarsanız destekleyebiliriz.

Diğer taraftan, linux ve interface dersem, qt derim.

Android özelinde ise kendi dil paketlerini düşünün derim.

Detaylandırırız kolay gelsin.

2 Beğeni

Merhabalar,

Ben çok mobil tarafından anlamamakla beraber flutter nedense benim gözüme hoş görünüyor. Üstelik embedded linux ile uğraşıyorsanız yocto ile üretilmiş embedded linux üzerinde de koşabilirsiniz. Flutter’ın benim için en çok hoşuma giden tarafı buydu. Tabi eğer cross platform çözüm arıyorsanız.

1 Beğeni

Kivy ile uygulama geliştirmeye devam ediyorum. Laptobum bayağı eski, Android Studio ve emulator çalıştırmak zor. VS Code ile Kivy kullanmak şimdilik benim için en uygun seçenek. Derleme kısmına geçince gerçekten karın ağrısı yaşatabiliyor.

Python/Kivy ile Android uygulama geliştirme hakkında;

Olumlu eleştirilerim

  • Öğrenme eğrisinin hızlı yükseldiğini düşünüyorum.
  • Gayet okunaklı kod yapısına sahip olduğunu düşünüyorum.
  • Geliştirdiğiniz arayüzde Kivy widget’larının ön tanımlı (varsayılan) görünümü çok güzel görünmese de Kivy dili çok pratik ve öğrenmesi kolay olduğu için biraz uğraş ile güzel birşeyler çıkarabiliyorsunuz.
  • Python’a aşinaysanız geliştirdiğiniz arayüz eventlerini fonksiyonlara bağlayıp iş ve işlemler yapmak gerçekten pratik oluyor.
  • Buildozer’in .spec dosyasındaki parametreler yardımıyla uygulamanız için bazı önemli ayarlamaları sizin yerinize yapıyor olması başlangıç açısından güzel

Olumsuz eleştirilerim ve karşılaştığım zorluklar

  • Derleme süreci. İlk derlemenin uzun sürmesi. Bu sürece bağlı olarak çıkabilen çeşitli paket, modül ve bağımlılık problemleri. Derleme sırasına oluşabilen hataları tespit zorluğu (çok kalabalık bir çıktı veriyor, samanlıkta iğne aradığınızı hissettiriyor)
  • Hot reload gibi bir özelliğin olmaması (aslında github’da bu konuda yapılmış ve çalışan bir uygulama var)
  • Background ve Foreground servisler
  • BroadcastReceiver kısmında Java/Kotlin kullanmak zorunda kalınması
  • AndroidManifest dosyasını düzenlemede zorluklar, bu konuda buildozer’in.spec dosyasındaki parametrelerin izin verdiği ölçüde düzenleyebilme kısıtlılığı
  • Python/Kivy kodlarınızı android için p4a’yı kullanarak derleyen buildozer ile ilgili yetersiz olduğunu düşündüğüm dokümantasyon. Ayrıca bazı github düzeltmelerinin sistemime depodan yüklediğim buildozer paketine yansımamış olması (elle düzeltmek zorunda kaldım)
  • Kivy widget’ları ile Google Material Design ilkelerine bağlı arayüz oluşturmak zor, KivyMD gibi seçenekler var lakin uygulama açılış süresini artırdığını, dokunma eylemlerine daha gecikmeli tepki verdiğini tecrübe ettim.
  • Uygulama açılış, tepki verme gibi performans sorunları
  • Uygulama ekran arayüzlerini tasarlarken widget’ı tut sürükle-bırak gibi bir kolaylık yok, tamamen Kivy dili ile vs code editöründe arayüzü kodlayıp çalıştırıp nasıl göründüğüne bakmanız gerek.

Olumlu ya da olumsuz olarak aklıma gelmeyen başka şeyler de olabilir.

Aramıza yeni katılan arkadaşa yardımcı olmak gerekirse daha önce de bu konuda konuştuğumuz gibi Android üzerinde profesyonel olarak ilerlenecekse Kotlin, Dart/Flutter seçenekleri doğru tercih olacaktır. Bunlara zaman ayıracak genç arkadaşlar native dil kullanmanın avantajını yaşarken bir yandan da görsel olarak modern material design konseptini de rahatlıkla uygulama arayüzlerine yansıtabilirler. Dart/Flutter ile birçok farklı platforma (android, Apple, Windows, linux, web vs) çıktı alabilirler.

Benim sistemim ve donanım kaynaklarım Android Stüdyo için şu an yetersiz, hobi olarak da şimdilik Kivy ile iyi anlaşıyorum. :grinning_face:

Şimdilik mağazada olmasa da webden yayınlandığım bir Kivy projemi aşağıdan paylaşayım. Yakında bir projemi daha bitirip paylaşacam inşallah.

2 Beğeni

Merhaba,
Arkadaşlar çok açıklayıcı bilgiler paylaştınız teşekkür ederim. Bana, çok farklı bir dünya gibi geldi. Şimdilik windows üstünden çalışmaya devam edeceğim. Ama pyhton 3 ile ilgili kitap almıştım boş zamanlarımda genel kültür olarak bakmaya çalışacağım. En azından Phyton gurubuna danışabileceğim bu gurupta olmam beni mutlu etti. Sağlıklı günler dilerim.

2 Beğeni

Detaylı güzel bir karşılaştırma yapmışsınız. Burada ekleme yapmak isterim sadece,koşullar tabi ki değişir ve kararları etkiler.

Google Dart dilini desteklediği için ve konu android ise dart ı da görmezden gelmemeliyiz. Kolay gelsin.

2 Beğeni