İki dev mobil yazılım dili arasındaki farklar: Android & IOS (Swift)

         Günümüzde hemen hemen herkesin yanına almadan dışarı çıkamadığı smartphone (akıllı telefon), tablet gibi cihazlara özel olarak kodlanmış ve tasarlanmış yazılımlara “Mobil Uygulama” denmektedir.
Mobil uygulamalar kullanılacak olan cihaza göre tasarlanmakta ve kodlanmaktadır. Mesela yaptırdığınız uygulamanın iphone, ipad gibi cihazlarda çalışması isteniyorsa uygulama IOS tabanlı olarak geliştirilmek zorundadır; eğer Samsung, HTC gibi Android işletim sistemi kullanan tablet veya akıllı telefonlarda çalışması istiyorsa uygulama Android tabanlı olarak geliştirilmek zorundadır.
Android işletim sistemine uygulama geliştirmek için iyi seviyede Java programlama dili bilgisi gerekirken, iOS işletim sistemine yönelik bir yazılım geliştirmek için Swift dilinin bilinmesi gerekmektedir. Her bir işletim sistemi için geliştirme ortamı ve programlama dili farklılık göstermektedir.

Android Programlama Nedir?
Samsung, HTC, Xaomi, Vestel gibi birçok Apple ürünü olmayan mobil cihazların kullandığı işletim sistemidir. Java tabanlı bir dil olup, açık kaynak kodlu olsa da bir kısmı kapalıdır. Programlama açısından baktığımız zaman geliştiriciliğini yapmak için Android Studio veya farklı bir Android destekli derleyici yüklü bir bilgisayara sahip olmak yeterlidir. Bu derleyiciler üzerinde uygulama geliştirip sanal bir mobil cihaz üzerinde de denemeler yapılabilir. Programlanan uygulamayı yayınlamak için de bir yayıncı hesabı almak (Google Play Store) ve uygulamanın bir Android cihaz üzerinde çalışıyor olması yeterlidir. Bunun için Google sizden makul bir ücret talep etmektedir. Google asıl kazanç kaynağı reklamlar olduğu için uygulamanız içerisinde otomatik olarak Google reklamları yayınlanacaktır.

IOS Programlama Nedir?
iOS işletim sistemiyle uyumlu mobil uygulamalar geliştirebilmek için açık kaynak kodlu Swift dilini bilmek gerekir. Swift, Apple tarafından oluşturulan, güçlü ve kullanıcı dostu mobil uygulama dillerinden biridir. Açık kaynaklı bir dil olan Swift’in kullanımı oldukça kolaydır, fakat IOS kapalı bir sisteme sahiptir. Swift ile uygulama yazabilmek için XCode derleyicisine ihtiyaç duyulmaktadır. XCode yükleyebilmek için Apple cihazlarından macOS yüklü bilgisayara sahip olmak gerekir ya da Windows işletim sistemi yüklü bilgisayara bir sanal makine içerisinde macOS yükleyerek sanal bir mac bilgisayar varmış gibi XCode yüklenebilmektedir. XCode içerisinde uygulamanızı yazdıktan sonra burada da sanal bir mobil cihaz varmış gibi programlanan uygulama test edilebilir. Bunun dışında uygulamanın yazılmış olduğu sürüm önemlidir. Yüksek bir versiyonda programlama yapılırsa eğer düşük versiyona sahip cihazlarda uygulama çalışmayacaktır. Ayrıca uygulamayı yayınlamadan önce Apple’ın buna izin veriyor olması gerekmektedir. Bunun için de yayıncı hesabının (AppStore) yüksek bir ücret ödenerek alınması ve bazı şartların yerine getiriliyor olmak gerekir. Ayrıca uygulama yayınlamak için beklenilen bir hafta gibi bir süre ile birlikte güncellemelerde de uygulama yine bir incelemeden geçmektedir.

Android ve IOS Farkları;

  • İkisi de açık kaynaklı dillerdir. Fakat işletim sistemi olarak baktığımızda IOS kapalı bir kutudur ve erişim zordur. Android ise açık kaynak kodlu geliştirilebilirliği yüksektir.
  • Derleyici açışından bakınca Android Studio, Eclipse, NetBeans gibi birçok tercih edebileceğimiz derleyici bulunurken IOS da sadece XCode vardır.
  • Bu derleyicilerden XCode sadece macOS işletim sistemine sahip cihazlarda çalışmaktadır. Android de ise böyle bir kısıtlama yoktur. Mac bilgisayara sahip birisi ikisi ile de geliştirici olabilecekken Windows bilgisayara sahip bir kişinin iOS programlama için daha farklı yöntemleri denemesi gerekmektedir, sanal makine oluşturmak gibi.
  • Android Google Play Store geliştirici hesabı için 25 dolar ödemeniz yeterli olacakken IOS AppStore geliştirici hesabı için 100 dolar ödemeniz gerekmektedir. Aradaki fark çok yüksektir.
  • Uygulamanızı yayınlamak için Android’de çalışıyor olması yeterlidir, iOS’da ise bir takım standartları karşılamış olmanız gerekmektedir. Bunun denetlenmesi için de bir hafta kadar bir süre beklemeniz gerekir. Üstelik bu her güncelleme yapıldığında tekrarlanmaktadır.
  • Nesne yönelimli programlamaya hakim olan biri öğrenme açısından ikisinde de çok sıkıntı yaşamayacaktır.
  • Hız bakımından iOS kapalı bir sistem olduğu için hata çözümü konusunda çok daha hızlı çalışmaktadır.
  • Android ile çalışırken nerede, ne zaman bir sıkıntı ile karşılaşılacağı belli olmaz.
  • iOS doküman olarak çok daha gelişmiş bir yapıya sahiptir (yeterli İngilizce bilgisi ile), geliştiricilerin karşılaşmış oldukları hataları, çözümleri paylaştıkları birçok site bulunmaktadır. Android’te ise doküman kısmında biraz kısıtlı olduğu bilinmektedir.

Yorum bırakın