Cross Platform Mobil Uygulama Geliştirme :MobileCoder I MobileCoder.NET I Mobil Programlama I Android Programlama I Mobil Geliştiricilerin Buluşma Noktası I www.MobileCoder.Net

Cross Platform Mobil Uygulama Geliştirme

17.11.2015 tarihinde Diğer kategorisine eklenmiş, 164 views Kişi Okumuş ve 0 Yorum Yapılmış.

Mobil ve mobil uygulama geliştirme hiç şüphesiz günümüzün en popüler konularından biri. Özellikle Android ve iPhone/iPad geliştirme bu konuda tam bir motor görevi üstleniyor. Her iki işletim sistemi içinde uygulama geliştirmek istiyorsanız ya iki konuda da uzmanlaşmanız ya da ortaya hibrid bir uygulama çıkarmanız gerekiyor.

Bu yazı da mümkün olduğunca native, hibrid ve web uygulama geliştirme arasındaki farklılıklar, üstünlükleri, özellikleri gibi pek çok konuya değinmeye çalışacağım.

Konumuza cross platform mobil geliştirme ortamlarındaki teknoloji yaklaşımlarına bir göz atarak başlayalım..

Cross Platform Araçlarının Teknoloji Yaklaşımları

1. JavaScript Frameworks

Tarayıcı uyumluluğuna sahip, dokunmatik ara yüzler oluşturabileceğiniz fonksiyonlar sunar.

Örnekler: jQuery Mobile, Sencha Touch, Cocos2D, DHTMLX Touch, Zepto JS, ImpactJS, LimeJS

2. App Factories (Uygulama Fabrikaları)

“Create your own app” – Kendi uygulamanı kendin yarat tarzındaki ürünlerdir. Görsel tasarım araçları ile mobil uygulama geliştirmeyi sağlarlar.

Örnekler: AppMkr, Wix Mobile, Tiggzi, Mobile Nation HQ, Mobjectify, Spot Specific, Red Foundry, Games Salad

3. Web-to-native wrappers (Web’ten yerli uygulama oluşturma)

Web uygulamalarının HTML, CSS ve Javascript’ten oluşan web kodunun paketlenebilir bir yerli uygulama haline getirilerek kullanılmasını sağlar. Böylelikle yerli uygulamaları yapabildiği pek çok özelliğe sahip olması sağlanır. Ayrıca bu işlem uygulamaların Uygulama dükkanlarında yayınlamasını da sağlar.

Örnekler: Adobe (PhoneGap),Uxebu (Aparrat.io), Sencha (Touch v2), MoSync (Wormhole)

4. Runtimes (Çalışma zamanı uygulamaları)

Örnekler: J2ME, Adobe Air, Ansca Mobile (Corona), AppMobi, Antix, Unity, Appcelerator, Xamarin

5. Source code translators (Kaynak kod çeviricileri)

Bu çözümde kaynak kodun bytecode, yerel dil veya direkt olarak makine düzeyi koduna çevrilmesi ile hazırlanır.

Örnekler: MoSync, Eqela, Marmalade, Bedrock, XMLVM

Uygulamanın Web ya da Native olmasının avantajları neler?

İki uygulama şekli arasındaki en önemli fark native uygulamaların aygıtın yerel işlevlerine yüzde yüz erişim sağlaması ve daha performanslı olmasıdır. Ancak PhoneGap gibi Web-to-native wrappers uygulamaları burada olduğu gibi pek çok farklı işletim sisteminde, aygıt yerel işlevlerinin pek çoğuna ulaşabilmektedir.

Buna karşın web tabanlı geliştirmenin de aynen İnternet uygulamalarının geliştirilmesinde olduğu gibi tarayıcı farklılıklarından ötürü sıkıntıları bulunmakta. Örneğin; HTML5test.com üzerinden 20.02.2012 tarihli yapılan mobil tarayıcılar HTML5 desteği testinde aşağıdaki sonuç ortaya çıkmıştır.

brow

Bu test sonuçlarının daha güncel halini siz de aynı site üzerinden gerçekleştirebilirsiniz.

Gerçekleşecek uyum sıkıntıları için en önemli case, Ocak 2012’de Financial Times tarafından satın alınan ve yoluna FT Labs olarak devam eden Assanka’nın Financial Times uygulamasıdır. Financial Times’ın HTML5 ile yapılmış olan haber okuma uygulaması iPad için 12, Andorid için 12 olmak üzere toplam 24 aylık bir zaman içerisinde tamamlanabilmiştir.

Web ve Hibrit uygulamaların mimarisi

arc

Mimarinin bu şekilde kurulmuş olması, hibrit uygulamalarının her ne kadar web çalıştırsa da, cihaz üzerine native uygulamalar gibi marketten indirilme, widget ve uygulama olarak kullanabilme gibi özelliklere sahip olmuş olur. Bu özelliği ile hibrid uygulamalar, tam da ismine yakışacak şekilde web ve native uygulamalar arasında gerçek bir ara yapıdadır.

Ne yapmak istiyorsunuz? Ne kullanmalısınız?

VisionMobile’ın Cross Platform Developer’lar arasında yapmış olduğu araştırma da ortaya aşağıdaki gibi oldukça pratik bir tablo ortaya çıkmış.

nek

Örneğin; Eğer siz XXX iseniz ve XXX yapmak istiyorsanız XXX kullanın. Boşlukları kendi ihtiyacınıza göre doldurarak, kullanmanız için en uygun cross platform mobil uygulama geliştirme araçları hakkında bu şekilde bilgi sahibi olabilirsiniz.

Umarım buraya kadar cross platform mobil uygulama geliştirme araçlarının teknoloji yaklaşımları, özellik, farklılıkları, mimarisi ve size uygun mu? sorusunun cevabı hakkında fikir sahibi olmuşsunuzdur.

Şimdi gelin en popüler cross platform mobil uygulama geliştirme araçlarının başında gelen Apache Cordova ya da nam-ı diğer PhoneGap‘i yakından tanıyalım.

Apache Cordova ya da PhoneGap Nedir?

Cordova‘yı basitçe HTML5, CSS3 ve Javascript ile farklı platformlarda mobil uygulamalar hazırlamanızı sağlayan Javascript SDK’sına verilen isim olarak tanımlayabiliriz. Daha genel olarak ise günümüz web teknolojilerini kullanarak farklı mobil platformlar için uygulama geliştirmenizi sağlayacak geliştirme kiti olarak söz edebiliriz.

Apache Cordova ne amaçla geliştirildi? Dünü ve bugünü nedir?

Mobil ile ilgilenenler için Apache Cordova ismi yerine PhoneGap çok daha tanıdık gelecektir. Bu yüzden yazının bu bölümünde PhoneGap ismini kullanacağım.

En popüler cross platform development araçlarından biri olan PhoneGap, yaklaşık 20 çalışanı ile Kanada, Vancouer merkezli bir web ve uygulama geliştirme firması olan Nitobi tarafından geliştirilmiştir.

PhoneGap, native uygulamalar sunmak için web geliştirme becerilerini kullanmak amacıyla 2008 yılında düzenlenen iPhoneDevCamp etkinliğinde doğdu. Hemen akabinde 2009 yılında Web 2.0 Expo LaunchPad yarışmasını kazandı ve open source (MIT) lisansı altında yayınlandı.

Son olarak Ekim 2011 yılında Nitobi‘nin Adobe tarafından satın alınmasından sonra Apache Yazılım Vakfı’na (Apache Software Foundation) bağışlandı ve “Apache Cordova” ismini aldı. Bu yüzden başta da belirttiğim gibi daha önce ilgilenenler Apache Cordova’yı PhoneGap olarak hatırlayacaklardır.

Bu projenin partnerleri ve önemli katkı sağlayanları arasında IBM, Sony Ericsson, Symbian, Palm, RIM ve Sencha’da yer alır.

Ünal UYSAL

İlgili Terimler :
Yazar Hakkında

Yazar : Anıl Yıldırım

Yazar Hakkında :

Yazarın Tüm Yazıları İçin Tıklayınız

Yorumlar

Sitemizde En Çok Okunan İçerikler

ANDROİD TELEFONLARA ROOT ATMA
ANDROİD TELEFONLARA ROOT ATMARoot Ne demek ? Bir android cihazı root etmek telefonun
fragment
ANDROİD FRAGMENT YAPISI VE KULLANIMIFragmentler Activity içerisinde yer alan kullanıcı ara yüzleridir. Fragment
Asp.NET’de web servis hazırlama ve Android de kullanimi  Web Servis Nedir ? Web üzerinden HTTP protokolü ile hizmet
ANDROİD TELEFONLARDA KONFERANS GÖRÜŞME
ANDROİD TELEFONLARDA KONFERANS GÖRÜŞMEANDROİD TELEFONLARDA KONFERANS GÖRÜŞME   Konferans görüşme çok fazla bilinmeyen androidin

Sitemizde En Çok Yorumlanan İçerikler

Rating Bar Kullanımı
Rating Bar KullanımıAndroid’de yıldız şeklinde derecelendirme çubuğu olarak kullanılır. Kullanıcı sürükleme
Android Wear Emülatör Kurulumu
Android Wear Emülatör Kurulumu   Android studio da geliştireceğimiz uygulamaların kontrolunü yapmak için emülatör
Resim Galerisi Oluşturma
Resim Galerisi OluşturmaAndroid Programlama – Resim Galerisi Oluşturma Bu yazıda, bir galeri
SQLite Database Browser Kullanımı
SQLite Database Browser KullanımıSQLite Database Browser Kullanımı Merhaba arkadaşlar, Android uygulamaları geliştirirken uygulama üzerindeki

Son Yapılan Yorumlar

  • Kategoriler

  • Son Yazılar

  • Takvim

    Eylül 2017
    P S Ç P C C P
    « Kas    
     123
    45678910
    11121314151617
    18192021222324
    252627282930  
  • Etiketler

  • Son Yorumlar

    • Arşivler

    • Meta