Mobil Programlama İçin Hangi Dili Seçmelisiniz ?

Mobil Programlama İçin Hangi Dili Seçmelisiniz ?

Kodlamayı seven ve mobil uygulama geliştirme merakı olan okurlarımız için oldukça yararlı bir karşılaştırma yazısı yazmaya karar verdik. Mobil programlama konusuna giriş yaparken, sizlere en çok tercih edilen ve en popüler olan mobil programlama dillerini anlatacağız. Geliştirme zorlukları, dilin yapısı ve sadeliği, dilin ve geliştirilen programın piyasadaki yeri ve değeri gibi değişkenleri sizler için irdeledik. Hadi Başlayalım !

sanalkasif-mobil-programlama3

Android

Android programlama için kesinlikle bilmeniz gereken şey Java dilidir. Java konusunda biraz da olsa tecrübe edinmeden Android programlama konusuna doğrudan giriş yapmak hata olur. En azından giriş seviyesinde Java temelleri edinmiş olmanız sizin yararınıza olacaktır. Android geliştirmek geçmiş yıllarda daha zor olsada(SDK kurulumu, Emulator kurulumu, Kütüphanelerin kurulumu gibi…) günümüzde daha kolaylaştırılmış hale geldi. Android native bir dil olup cihazın performansına bağlı çalışır ve hybrid olan dillere karşı daha etkin ve hızlı çalışır. Android Studio platformunda kodlanır ve derlenebilir.

Geliştirme Zorlukları ve Gereklilikler

  • Java diline hakim olmak ve OOP kavramını iyi anlamış olmak.
  •  Emulator performansı için orta dereceden biraz daha iyi bir bilgisayara sahip olmak.
  • Ortama ve cihaza bağlı olarak çalışması(Platforma bağlı ve cihaz sürümüne bağlı).
  • Geliştirdiğiniz uygulamayı yayınlamak için cüzi miktarda para ödenmesi gerekir.

Dilin Yapısı ve Sadeliği

  • Java dili acemi geliştiriciler için biraz zorlayıcı olsa da OOP mantığını kavramış olan geliştiriciler için biraz zorlayıcı olabilir.
  • Kütüphane yapısı biraz karmaşık gelebilir ancak zamanla alışacaksınız.

Piyasadaki Yeri ve Değeri

  • Android eski bir mobil programlama dili olsa da piyasadaki değeri ve yeri hala geçerlilik sağlıyor.
  • Oyun ve diğer program türleri konusunda oldukça yaygın kullanıma sahip.
  • Google tarafından hala destekleniyor ve geliştiriliyor.

sanalkasif-mobil-programlama3

Swift

Swift, Apple tarafından iOS ve OS X platformlarına iOS ve Mac uygulamaları geliştirmek için oluşturulmuş, öğrenilmesi kolay, nesne yönelimli ve güçlü bir dildir. Swift programlama dilide Objective C gibi Xcode programı kullanılarak yazılabilir.

Geliştirme Zorlukları ve Gereklilikler

  • Daha önce Objective C ya da C ++ gibi OOP nin başlangıcı sayılabilecek uygulamalar ile aşina olmayanlar için yeni bir yapı olacaktır. Bu yüzden biraz alışma süreci gerekebilir.
  • Swift geliştirmek için bir MacOS bilgisayara sahip olmanız gerekmektedir. Çünkü geliştirilebildiği tek ortam MacOs cihazlardır. X Code ile hızlı bir şekilde kodlama ve derleme yapabilirsiniz ancak bunları edinmek ilk başta biraz masraflı olabilir.
  • Geliştirdiğiniz uygulamayı yayınlamak için cüzi miktarda para ödenmesi gerekir.(Android için olandan bir miktar daha fazla)
  • Ayrıca geliştirmiş olduğunuz kodu yayınlamak(Kodun içeriğine ve programın içeriğine göre değişkenlik gösterse de) Android’e göre daha uzun vakit alır.

Dilin Yapısı ve Sadeliği

  • Swift dili de tıpkı Android gibi native bir dildir ve platforma bağlı çalışır. Dil olarak ilk başlarda yabancılık verse de sade ve kullanışlı bir yapıya sahiptir. Geliştiriciler yine nesne mantığını kavrayarak kodlama yapmalı ve geliştirirken cihazın sürümüne dikkat etmeleri gerekir.

Piyasadaki Yeri ve Değeri

  • Swift 2014 yılından beri aramızda olan bir dil olsa da popülerliği gittikçe arttı ve hem geliştiricilerin hem de geliştirilen ürünün oldukça değerlendiği bir döneme girdik. Swift geliştiricisi olmak her ne kadar başlarda maliyet gerektirse de meslek olarak yaptığınızda oldukça iyi getirisi olacaktır.
  • Swift uygulamalar IOS cihazlarda hızla yerini alırken cihazın performansından ve hızından yararlandıkları için etkin ve hızlıdır. Günümüzde en önemli konulardan biri olan hız kullanıcılardan daima iyi geri dönüş alır. Bu da uygulamanın değerini arttırır. Yani geliştirici ne kadar iyi ve hızlı dönüş verebilen kod yazarsa uygulaması da o derecede değer kazanmaya devam edecektir.

sanalkasif-mobil-programlama

React-Native

React Native Facebook tarafından sunulan bir mobil uygulama geliştirme çatısıdır. React ile geliştirdiğiniz kod derlenme aşamasında IOS ve Android tarafında native kodlara çevrilir. Böylece tek kod ile birden çok platforma mobil uygulama geliştirebilirsiniz. Bunun gibi tek bir kod yazıp birden fazla platformda çalışabilen kod yapısına hybrid uygulamalar denir. Web geliştirme ile uğraşmış olan ve mobil programlamaya geçecek olan arkadaşlar için iyi bir tercih olabilir diyebiliriz. Native uygulamalara göre daha az kod yazılarak uygulama geliştirilir.

Geliştirme Zorlukları ve Gereklilikler

  • Bilgisayarınızda kodlamaya başlamadan önce kurmanız gereken birkaç yapı vardır. Node JS, Android Studio(Emulator için), NPM üzerinden CLI yapısı ve Visual Studio Code benzeri bir derleyici.
  • Bilgisayarınız emulator performansı açısından iyi bir cihaz olmalı. Ne kadar iyi bilgisayar o kadar hızlı derleme…
  • Yine uygulamanızı yayınlamak için gerekli bir ücret var tabi. Hem Android hem IOS için.

Dilin Yapısı ve Sadeliği

  • React, Javascript ve XML dil yapılarını harmanladığı JSX adında bir format kullanır. JSX Tıpkı XML’de ki gibi tagler kullarak component’lerin yaratıldığı, Javascript’de ki temel işlemlerin yapılabildiği React’a özel bir dil formatıdır. Öğrenimi ise oldukça kolay. Temel işlemleri öğrenip kendiniz bir iki örnek çalıştıktan sonra rahatça mantığını kavrayabilirsiniz.

 

Piyasadaki Yeri ve Değeri

  • Bu konu hakkında çok fazla konuşmaya gerek var mı bilmiyorum. Çünkü React-Native Facebook tarafından geliştirilen ve bu firma tarafından oldukça fazla uygulama ve modülde kullanılan bir yapı. Piyasadaki yeri oldukça fazla. Gittikçe artmaya da devam ediyor.

 

sanalkasif-mobil-programlama4

sanalkasif-mobil-programlama2

Flutter

Flutter, içinde framework, widget ve diğer araçları barındıran, geliştiricilere Android ve iOS platformu için uygulama geliştirmeler imkanı sunan bir mobil uygulama SDK’sıdır. Google tarafından geliştirilen Flutter, açık kaynak kodlu olup, tüm geliştirici ve tasarımcılar tarafından ücretsiz olarak kullanılabilir.

Flutter’ı kullanarak geliştiriciler, her iki platformu da hedefleyen uygulamalar geliştirip, cross platformlu mobil uygulamalar sunmanın maliyet ve zamanından tasarruf edebilirler. Arayüz tasarımcıları ise Flutter’ı kullanarak Android ve iOS dünyasına uyum sağlayan, daha başarılı uygulama tasarımları geliştirebilirler. Anlayacağınız Flutter az önce bahsetmiş olduğumuz ve Google tarafından desteklenen diğer dillere göre biraz daha yeni olan bir native uygulama yapısıdır.

Geliştirme Zorlukları ve Gereklilikler

  • Flutter kurmak için Android Studio, Powershell ve GIT gibi araçlara ihtiyaç duyacaksınız. Bunları edindikten sonra geriye sadece kod yapısını anlamak ve geliştirmek kalıyor.
  • Derleyici performansı için ne kadar iyi donanıma sahip bir cihazınız varsa o kadar iyi performans alırsınız.
  • Çok bilinmeyen bir dil yapısı var.

 

Dilin Yapısı ve Sadeliği

  • Flutter, Dart dilini kullanır ve Dart çok fazla popülerleşmemiş olsa da sade ve anlaşılır bir dildir.
  • Dilin yapısı kolayca anlaşılabilir, kodlama ve programlama geçmişiniz olmasa dahi zamanla iyi bir Flutter geliştiricisi olabilirsiniz.

 

Piyasadaki Yeri ve Değeri

  • Flutter piyasada henüz yeni yer edinmeye başlayan ancak sade yapısı ve kısa zamanda geliştirebilen uygulamaları ile piyasada yakın zamanda adından sıkça söz ettirebilecek olan bir yapıdır. Geliştiricilerin tek bir  platforma bağlı kalmaması adına ve yeni mecralara atılması adına da oldukça iyi bir alternatif olabilecek bir yenilik.

 

 

Mobil programlamanın temel taşları olan kodlama yapılarını incelerken yeni ve gelişmekte olan programlama yapılarını da incelemeye çalıştık. En çok kullanılan ve popülerliğini kaybetmeyen yapıları ele aldık. Geliştirmeye yeni başlayacaksanız umuyoruz ki konumuz size ilham kaynağı olacaktır. Mobil programlamaya yeni başlıyor ve Java konusunda bilgi edinmek istiyorsanız buraya tıklayarak sizler için yazdığımız Java Programlama Nedir ? konumuzu okuyabilirsiniz. Yeni konularda görüşmek üzere 🙂

 

 

 

ZİYARETÇİ YORUMLARI - 3 YORUM
  1. Yunus dedi ki:

    Teşekkürler. Bu kadar iyi açıklayan ne site ne de bi video bulabilmiştim

  2. selimyaver dedi ki:

    xanarin i unutmuşsun

  3. napim dedi ki:

    Flutter’da Powershell zorunlu değil.