Mobil uygulamalar deyince aklımıza iOS, Android ve WP uygulamaları gelmektedir. Bir yazılım geliştirici olarak geçen ay mobil platformlardan bahsetmiştil. Bilmemiz gereken programlama dilleri listesi uzadıkça uzamaktadır. Bunun için mobil web arayüzü yapıp her platformda derlemek e kolay yollardan biridir. Fakat natve kodun gücü kesinlikle tartışılamaz. Uygulama geliştrimete geçmeden önce ortak kullanılabilecek araçlardan bahsetmek istiyorum. Bu sayede hem web mobil uygulamları hem de native uygulamaları gerçekleştirirken daha kolay  kodlama ypmanıza yarayaca sevisler ve araçlar bulabilirsiniz. Bunlardan biri bir türk firmasının ürünü olan Netmera backend servisleridir. Bu servisler iOS, Android, Windows Phone ve HTML 5 için destek vermektedir. Yeni olarak eklenen özelliklere bakarsak Windows 8’de bunlar arasına katılmış durumdadır. Push notification, Geo Location, Kullanıcı Yönetimi, Cloud veritabanı, medya içerikleri, full text arama gibi özellikleri öne çıkmaktadır. Tek kullanıcı kaydı ile katdettiğiniz verileri isterseniz tüm platformlarda aynen kullanabilirsiniz.

 

Aynı işi yapan ve  aynı içeriği ekleyen kodların dil yapısı farklılığı dışında aynı olduğudur. Sisteme kayıt olduktan sonra verilen api key ile bu işlemlerin hepsini yapabilir duruma gelmektesiniz. Cloud’da verilerinizi ve medyalarınızı saklayarakta büyük bir zahmetten kurtulmaktasınız. Netmera backend servisleri için www.netmera com adresini ziyaret edebilirsiniz. Bu özelliklerin sadece developerlar tarafından değil, aynı zamanda aplikasyon sahipleri tarafından kolay kullanılmasını sağlayacak web panelleri, hızla aksiyon almanızı kolaylaştırıyor. Böylece farklı çeşitteki aplikasyonların , içeriğin özgürce belirlendiği, alıcıların istedikleri gibi hedeflendiği notifikasyonlar göndermesi sağlanıyor. Berlin’de gerçekleştirilen Droidcon konferansındaki Hackatho esnasında Netmera’yı kullanan gruplar sadece 5 saat gibi kısa bir sürede çalışan app’ler üretebildirler.

 

Benzer işleri yapan birden fazla araç ve backend sevis sunan firma bulabilirsiniz. Microsoft’un Azure servisleri de bunlardan biridir. Artık her veriyi cloud’da saklamak en verimli ve güvenli yol olarak görünmektedir. Lokalde tutamayacağınız büyük miktardaki veriler için sunucu kiralamaktansa bir cloud servisi ile çalışmak daha ekonomik bir seçenek olmaktadır.

 

Artık cihazların işlemci güçleri ve ramleri ile ilgili neredeyse çoğu sorun çözülmektedir. Geriye bunları etkin kullanmak için yapacağımız çalışmalar kalmaktadır.

 

Kullanacağımız programlama dillerini iyi bilmek ve buna göre bir platformdan başlamaksa olaylara geniş perspektiften bakmamızı sağlar. Peki programlama idli ne demektir; Programlama dili, yazılımcının bilgisayara bir işlemi yaptırmak için kullandığı belli söz dizimine sahip kodlardır. Yaptırmak istenen her işlem bir algoritmayı sağlamaktadır. 100’den fazla programlama dili bulunmaktadır. Bunlar C,C++, Java,VB,Delphi,Cobol,Ada,BASIC gibi dillerdir.

 

İsterseniz öncelikle mobile platformlarda kullanabileceğimiz programlama dillerini tanıyalım.

 

Java programlama dili; Sun Microsystem tarafından geliştirilmiş olup şu anda Oracle ile ortak durumdadırlar. Java Virtual Machine ile platform bağımsız uygulamalar sloganı ile yola çıkmıştır. Javan’nın ilk sürümü 1995 yılında çıkmıştır. Sözdizimi olarak C/C++ dili ailesine benzer. En popüler geliştirme araçları Eclipse ve Netbeans’dir.  Java dili GPL lisansı ile açık kodlu olarak sunulmaktadır. Android geliştirme için gereklidir.

 

C# programlama dili; Microsoft tarafından .NET platformu için geliştirilmiş bir dildir. dotNET’in resmi dili olup mobil, web ve desktop uygulamlarında da aynı dili kullanabilirsiniz. Sözdizimi olarak C/C++ dili ailesine benzer. Resmi geliştirme aracı Visual Studio’dur. Şu anda en son sürümü Visual Studio 2013’tür. Windows Phone 8 geliştirme ve Windows 8 geliştirme için gereklidir.

 

Objective C programlama dili; 1980’lerde Brad Cox tarafından geliştirilmiştir. Günümüzde Mac OS X ve GNUstep sistemlerinde kullanılmaktadır. Cocoa çatısının üzerine kurulmuştur. C diline takındır. Aslında C programlama diline Smalltalk tarzı mesajlaşma ekler. iOS uygulamaları geliştirmek için kullanacağımız dildir.

 

Gördüğünüz gibi bu tarz programlama dillerini bilmek mobil uygulama eliştirme açısından önemlidir. Bu ay köşemizde mobil uygulama geliştirme konusunda kullanılabilecek bazı araçları ve dilleri tanımladık. Bu dillerden birine odaklanmak yeni başlayan bir mobil uygulama geliştirici veya amatör geliştirici açısından çok daha verimli olacaktır. Gelecek ay yeni bir konuyla görüşmek üzere.