Şimdi Ara

Cep platrorumlari esasen (Android) yazilim gelistirmek icin Java ve ya Kotlin sartmi?

Daha Fazla
Bu Konudaki Kullanıcılar: Daha Az
2 Misafir - 2 Masaüstü
5 sn
13
Cevap
0
Favori
684
Tıklama
Daha Fazla
İstatistik
  • Konu İstatistikleri Yükleniyor
0 oy
Öne Çıkar
Sayfa: 1
Giriş
Mesaj
  • Selamlar. Cep platforumlari esasen (Android) yazilim gelistirmek icin Java ve ya Kotlin ogrenmek sartmi?

    Ben suanda Python ogreniyorum daha onceden amacim Android platforumlarina yazilim gelistirmekti. Arastirma yaptim yazilim gelistirmeye baslamak icin ilk Python ogrenmeyi tavsiye ediyorlar. Python Kivy frameworku ile yapilabiliyor ama pek verimli olmadigini ogrendim.

    Siz ne tavsiye edersiniz? Android icin java veya kotlin sartmi? Daha kolay olan baska bir dille yapilamazmi?



  • Evet android programlama için java ya da kotlin bilmek şarttır. Bir android uygulaması ancak bu dillerle yapılır. Bunun dışında yapacağın uygulamalar ise android'in web browser'ında çalışacak olan html5 uygulamalarıdır. Ancak veritabanını ve cep telefonunun donanımlarını kullanamazsın.

    < Bu ileti mobil sürüm kullanılarak atıldı >
  • Android 'te JVM uyumlu her dil kullanılabilir. O yüzden örneğin Python'un JVM versiyonu kullanılarak Python ile dahi Android app yapılabilir. Tabi ki Java kadar kolay olmaz ve oluşan app o kadar verimli de çalışmayabilir fakat sonuçta yapılabilir.https://duckduckgo.com/?q=python+android



    Scala kullanan bir grup geliştirici, Android'in varsayılan inşa sistemi Gradle yerine SBT ve bir iki ek paket kullanarak Scala ile Android app geliştiriyor bu konuda tutorial ve makaleler var:https://duckduckgo.com/?q=scala+android

    < Bu ileti mobil sürüm kullanılarak atıldı >




  • Elbette android'in c++ desteği de var. Ancak androide yazılım yapmak bu kadar basit değil. Windows için program yazdığında tek bir exe çıktısı alıp çalıştırabiliyosun. Android işletim sistemi daha karmaşık. Mesela bir intent (niyet) belirtmeden bir uygulamayı çalıştıramazsın. Programını işletim sistemine manifest dosyasında tanıtman gerekli. Bildirimler, servisler, broadcast alıcılar, broadcast yayıncılar, yani yazdığın program işletim sistemiyle bilgi alışverişi içerisinde çalışmalı. Windows'daki gibi exe yap çalıştır durumu yok.



    Bu nedenle android programlamada uzmanlaşmak için kaynak önemli. En çok kaynak da java ve kotlin üzerinden bulmak mümkün. Esas sorun dil değil, bir android programının yapısını anlamak. Dil ikinci planda kalıyo. Önce bir program yapmayı öğrenip, sonra istersen farklı dillere yönelebilirsin. Tabi kaynak bulabilirsen. Daha android programlamaya başlamadan farklı dil arayışına girmek çok saçma. Zaten java'da yapamıyorsan, diğer dillerde hiç yapamazsın.

    < Bu ileti mobil sürüm kullanılarak atıldı >




  • Hepinize çok teşekkür ederim.
  • Şart değil, react native'i araştırmanı tavsiye ederim. Ancak Java bilmek çok büyük artı katar sana.



    < Bu mesaj bu kişi tarafından değiştirildi Meteormta -- 5 Kasım 2018; 6:27:15 >
    < Bu ileti mobil sürüm kullanılarak atıldı >
  • React ile android uygulaması yazmak, php ile Windows altında web sitesi yazmaya benzer. Web browser'da çalışan web uygulaması başkadır, işletim sistemi uygulaması başkadır. Windows için uygulama yazarken nasıl ki c#, c++, vb.. işletim sistemine özel diller kullanıyorsak, android işletim sistemi için de java veya kotlin kullanmak zorundayız. React ile yapılacak android uygulaması, android işletim sistemi üzerindeki browser üzerinde çalışan, aslında bir web uygulaması olan, çakma android uygulamasıdır.



    Gerçek bir android uygulaması, android cihazının işletim sistemiyle, donanımlarıyla, GPS ile, sensörler ile, saatiyle, broadcast yayınlarıyla, gpu'suyla, bildirimlerle etkileşim halindedir.



    Gerçek android uygulaması, android'in resmi uygulama geliştirme aracı olan Android Studio ile yazılır. Bu uygulamalar da java, kotlin ve sayfa düzeni için xml kullanır. Android Studio'nun C++, phyton desteği olsa da esas temel yazılım dili, resmi olarak desteklediği diller Java ve Kotlin'dir.

    < Bu ileti mobil sürüm kullanılarak atıldı >




  • Iqtam I kullanıcısına yanıt
    Java ve Kotlin Android için şart değil. Scala da kullanılabiliyor. Temmuz 2017 tarihli şu makaleye bakmanızı öneririm.https://www.lucidchart.com/techblog/2017/07/05/why-i-dont-regret-moving-our-android-app-to-scala/ Android'in varsayılan inşa sistemi Gradle yerine Scala'nın inşa sistemi sbt-android ile nasıl yapıldığını gösteriyor. sbt-android README dosyasında ayrıca Android Studio kullanmadan bir proje nasıl oluşturulduğu da gösteriliyor. Yani Android projesi geliştirmek için Java ve Kotlin değil, Android Studio dahi şart değil :)

    < Bu ileti mini sürüm kullanılarak atıldı >




  • Üstat elbette scala ile de yapılır, ama vatandaş cep telefonu kamerasından fotoğraf çekip veritabanına atacak uygulamayı scala ile nasıl yapacak? Hangi kaynaktan öğrenecek? Ama yazsın google'a, java veya kotlin'le yapılmış binlerce örnek çıkacak karşısına.



    Adamın biri çıkmış, directx kullanmadan, java ile Windows'a minecraft diye bi oyun yazmış. Bütün dünya ayağa kalktı. Dünyanın en iyi oyunları arasına girdi. Ama bu örnek bizim directx'ten vazgeçeceğimiz anlamına mı geliyo? Bütün oyun yapımcıları directx'ten devam ediyo.



    Java ile Windows masaüstü uygulaması da yapabilirsin ama biz neden c# ile yapıyoruz? Aykırılığın gereği yok. Sayısız kaynağa c# ile ulaşabiliyoruz. Birçok kolaylık mevcut. Sen daha android uygulaması yapmamış kişiye scala ile yap dersen, kafalar olur bi milyon.



    React ile, galerideki resimlere erişen bir uygulama yapılamaz. Veritabanı kullanılamaz. Php ile Windows formları kullanılarak bir masaüstü program yapılabilir mi? İlk önce browser üzerinde çalışan web uygulaması ile android uygulamasının farkını anlamak lazım.



    Adam scala'yı android Studio'ya entegre etmiş ama kaynak nerde? Scala ile android uygulaması geliştirme diye bi tane tutorial var mı youtube'da. Ama java ve kotlin ile aklına gelmicek uygulama örneklerinden binlercesi var. Daha android'de bi tane uygulama yapmamış insana scala ile yap denir mi? Elimiz mahkum java veya kotlin le yapçaz. Maceraya gerek yok.



    < Bu mesaj bu kişi tarafından değiştirildi Iqtam -- 5 Kasım 2018; 15:41:14 >
    < Bu ileti mobil sürüm kullanılarak atıldı >




  • Hepinize cok tesekkur ederim.
  • Bu sorunun cevabı çok basit:
    Eğer sadece Android’de kalacağın diyorsan, java veya ikinci seçenek olarak kotlin

    Eğer ileride ikisi için de uygulama yazacağım diyorsan:
    React Native, ionic, NativeScript

    Birde Google yeni bir teknoloji daha sundu: Flutter(iki platform içinde, sadece bir kere yazarak native kod oluşturabiliyorsun)

    < Bu ileti tablet sürüm kullanılarak atıldı >
  • Şart değil. Bir çok franework native veya hybrit bir cikti veriyor. Bunların artı ve eksileri var. Kariyerini Mobil geliştirme üzerine kuracaksın native dillerini öğrenmen lazım yok bir fikir var yapıp geçeceğim diyorsan bildiğin dile en uygun mobil franework seç. Hatta belki pwa bile isini görüyor olabilir

    < Bu ileti mobil sürüm kullanılarak atıldı >
  • 
Sayfa: 1
- x
Bildirim
mesajınız kopyalandı (ctrl+v) yapıştırmak istediğiniz yere yapıştırabilirsiniz.