Blog

Mobil Uygulamalarda HTML5

Aslına bakarsanız teknik olarak HTML5 şu an kullandığımız HTML(4)’den çok da farklı değil. Oran olarak, belki en fazla yüzde yirmilik bir farktan bahsedebilirsiniz. Tanımlama yapmam gerekirse, HTML5 bir web programlama dili. Sadece HTML‘nin (4.01) bir üst versiyonu değil. XHTML benzeri, web sayfalarında belirli formatlardaki kelimeleri ayrıştırmak için kullanılan dillerin özelliklerini de içeren bir teknoloji aslında.

Neden bu kadar yaygara koparılıyor derseniz, HTML5, web yazılımcılara multimedya tabanlı web uygulamalar geliştirilmesinde katkı sağlamakla kalmıyor, mobil uygulama geliştiricilerin de karşılaştıkları bazı sorunları çözebiliyor. Yani kullandığınız cihazdan bağımsız uygulamalar geliştirebiliyorsunuz.

Örneğin Apple IOS işletim sistemli cihazlar ve Android işletim sistemli cihazlar üzerinde çalışabilecek lokal (native denilen) bir uygulama geliştirmek istiyorsanız, iki farklı yazılım geliştirme ortamı kullanmak zorundasınız. HTML5 ile geliştirdiğiniz bir uygulama ise farklı cihazlar üzerinde çalışabiliyor. İsterseniz HTML5/lokal karışık uygulamalar da geliştirebiliyorsunuz. Bana sorarsanız bu iş en çok mobil yazılım geliştirmede yetersiz kalan web uygulama geliştiricilerin işine yarıyor. Ne de olsa Objective-C veya Java gibi yazılım geliştirme dillerini öğrenmeleri gerekmiyor. Javascript gerekiyor tabii. Elbette ki CSS de… Bu üçlüye HTML5/JavaScript/CSS deniyor. Bu konuya yazının devamında değineceğim.

HTML5’in yaygınlaşmasını destekleyen öncü şirketler var. Bu şirketlerden bir tanesi, Amerikan Telekom operatörlerinden AT&T. AT&T, bu yılın ocak ayında HTML5 uygulamaların kullanıcılara sunulması amacıyla bir “HTML5 Uygulama Mağazası” açacağını ilan etti.

Facebook, HTML5 sayfalarını kullanan kullanıcı sayısının IOS ve Android uygulamalarını kullananların iki katı olduğunu kamuoyuyla paylaştı. Aslında bu, Facebook için çok da iyi bir şey olmasa gerek. Neden derseniz, Apple Safari ve Google Chrome henüz yüksek performanslı animasyon veya fotoğraf yüklemeyi desteklemiyor. Facebook, internet tarayıcıların HTML5’i desteklemesini yüreklendirmek için bir “W3C” (World Wide Web Concortium) grubu kurmasına rağmen, buna desteklerine ihtiyaç duyduğu en büyük iki firma olan Apple ve Google gruba katılmayı kabul etmediler. Bunun sebebi elbette ki Apple ve Google’ın HTML5’i az da olsa kendi yerel uygulamalarına tehdit olarak görmeleri. Gerçi eninde sonunda bu teknolojiyi desteklemek zorunda kalacaklardır.

Biraz da kurumsal firmalar tarafındaki pencereden bakarsak, HTML5 ile ilgili tereddütlerin net olduğunu görebilirsiniz. Birinci sebep, tabii ki işin güvenlik kısmından kaynaklanıyor.

Soru şu aslında: SAP’dan veri indirilmesi için JavaScript kullanılmasına izin verir miydiniz?

Kurumsal uygulama geliştirirken dikkat edilmesi gereken nokta, uygulamanın senkron çalışmasıdır. Örneğin önünüze gelen bir ekrandaki bilgiler tam olarak belirmeden “Onaylıyor musunuz?” diye bir seçeneğin görünmemesi gerekir. HTML5 asenkron çalışan bir teknoloji. Javascript ise senkron tabanlı. Veri tabanınıza erişmesine izin verdiğiniz uygulamada sıralı olmayan isteklerin hatalara yol açabileceği gibi bir çıkarımda bulunmak mümkün olabilir bu durumda. Basit bir yazılım problemi gibi düşünmeyin, ciddi hatalar olabiliyor.

Kurumsal şirketler açısından ikinci problem, HTML5’in standartlarının hala oturmamış olması. Görünen o ki bu işin standartlarını belirleyen W3C konsorsiyumu, en az birkaç yıl daha bu işi sonlandıramayacak. Oturmamış bir teknoloji üzerine yazacağınız kodlar bir anda işe yaramaz hale gelebilir. Bir de sürekli patlayan kodlar için “yama(patch)” yazmaya harcayacağınız parayı ve zamanı konuşacak olursak kulağınız tırmalanabilir. Öngörülere göre, dört veya beş sene sonra 4G yerleşmiş, HTML5 oturmuş olacak. Dolayısıyla, senkronizasyon ve güvenlik problemi de ortadan kalkacak. O zaman kurumsal uygulamalar HTML5’e port edilebilecek. Ancak şu an bunu yapmak için erken görünüyor.

İşin bir de Flash-HTML5 karşılaştırması var. Flash yazılımcılar diyor ki HTML5 kesinlikle bir “Flash Killer” değil çünkü yaptığı iş farklı. Bir web uygulaması yapacaksak web uygulaması yapalım, Flash yapacaksak Flash diyorlar. Aslında Adobe’a bağlı kalmadan bu tür uygulamalar yapabilmek hiç de fena değil bence. Sonuçta bir web ekranına, ekranda hareket eden bir şey koyabiliyorsunuz ve onu fareyle veya parmağınızla yönetebiliyorsunuz. HTML5/JavaScript/CSS üçlüsüyle yazılım geliştirmeyi biliyorsanız Flash’la yapılan bir uygulamanın daha gelişmiş bir versiyonunu yapabilirsiniz. Bu durum aslında HTML5’e dikkatli yaklaşan Apple için de ilginç bir durum, çünkü Flash’ın yerine koyulabilecek her şey onları mutlu ediyor.

Benim mobil uygulama geliştiricilere söyleyeceğim şey şu: Alışık olduğunuz platformu terk edecek bir durum yok ortada, ama HTML5 öğrenmeniz size alternatif yaratır. Web yazılım geliştiricileri vakit kaybetmeden HTML5 dokümanları okumaya başlayabilirler. Hala başlamamışlarsa tabii… Kurumsal uygulamalar açısından yukarıda bahsettiğim problemler söz konusu elbette, ama giderek daha fazla firma güvenli verilere erişimi kısıtlı ama yüksek performanslı HTML5 uygulamalarını kullanmak istiyor. Benden söylemesi…

Tarih: 22.06.2012 11:10 Yazar: Kutlay Tetik

Yazar'a Soru Sorun!

eBülten Üyeliği

Tüm yeniliklerimizden haberdar olmak için eBültenimize kayıt olun!