Skip to main content

Mobil Browserlar ve Mobil Uygulamalar

Günümüz de web uygulama geliştiricilerin en büyük sorunlarından bir taneside geliştirilen uygulamaların mobil uyumluluğudur. Bu bağlamda genellikle sorunun çözümü için tercih edilen 3 yöntem vardır. Bunları size kısaca avantajlarıyla ve dezavantajlarıyla açıklamaya çalışacağım.

  1. Hiçbirşey Yapma
  2. Sorunu Clientta Çöz
  3. Sorunun Serverda Çöz

1. Hiçbirşey Yapma

Bu yaklaşımda geliştirici normal bir masa üstü browserını baz alarak uygulamasını geliştirir ve bu uygulamanın mobil uyumluluğu için hiçbirşey yapmaz ve tüm işi mobil cihazda bulunan browserın yeteneklerine bırakır.

Avantajları

Bu yöntem uygulama geliştirmede kullanılan en kolay ve maliyetsiz yöntemdir.

Dezavantajları

Geliştirilen uygulama masa üstü browserlar için tasarlandığı için mobil cihaz kullanan kullanıcılar için ekranlar kullanışsız olacaktır. Html5 desteği, javascript desteği, css 3 desteği olmayan cihazlarda sorun daha da ciddi olacaktır.

2. Sorunu Clientta Çöz

Bu yaklaşımda geliştirici kullanacağı cssler ve scriptler ile kullanıcının browserına göre web sayfasının dizaynını değiştirir. Örnek vermek gerekirse normalde 3 kolonlu bir web sayfası browsera göre yeri geldiğinde tek klonlu bir görünüme kavuşabilmelidir.

Avantajları

Uygulama browsera gore kendini optimize edebilir. Tüm farklılık client tarafında olduğu için geliştirici açısından server side da yapılan işlemler aynı kalacağı için kod tekrarı engellenmiş olur. Böylelikle kod geliştirici daha az efor harcamış olur.

Dezavantajları

Müşterinin mobil cihazlarda gösterilen veri, verinin şekli ile ilgili farklı tasarufları olabilir. Çözümü csslere bırakma yöntemi de eski cihazlarda(yeni teknolojileri desteklemeyen browserlar) sorun teşkil edebilir. Son olarak yetersiz bandwidh ile mobil cihazlarda verilerin sunumunda(load olmasında) sorun olabilir.

3. Sorunu Serverda Çöz

Diğer bir yaklaşımda sorunun server da çözümü üzerinedir.Burda mantık şu şekildedir: eğer server kendisine istekte bulunan browser hakkında karakteristlik bilgilere sahipse server bu cihaza uyumlu bilgileri ve web sayfasını geri döner.

Avantajları

Diğer yaklaşımlara göre daha esnektir. Mobil ile ilgili herşey serverda olacağı için limit yoktur herşey mobil cihazlara göre uyumlu yapılabilir. Veri ilgili cihaza özel gideceği için bandwidh diğer yaklaşımlara göre daha etkindir.

Dezavantajları

Uygulama geliştirici için daha zahmetlidir. Kod tekrarı olabilir. Burda cihazın ne olduğu konusu da ciddi bir sorundur. Tüm cihaz bilgilerinin yer aldığı bir veritabanı gereksinimi doğar. Ayrıca bu veritabanın sürekli güncel tutulmasıda bir sorun teşkil edebilir.

Sonuç olarak en iyi çözüm 2 ve 3 numaralı yaklaşımları ortak kullanmak gibi gözükmektedir. Bu da web uygulaması geliştiricinin yetenekleri doğrultusundadır.

Kolay gelsin.
Kaynak

Comments

Popular posts from this blog

En basit şekliyle Sql Join

WCF Json Web Servisi Oluşturma

Wcf json web servisinin nasıl oluşturacağımızı basit bir şekilde adım adım görsellerler anlatmaya çalışacağım. Visual Studio üzerinden yeni bir boş web application oluşturalım. Oluşturduğumuz web applicationımıza bir adet wcf service ekleyelim. Oluşturduğumuz wcf servisinin çalıştığından emin olmak için projemizi run edelim.(açılan url'inin sonuna web servisinin adını eklemeyi unutmayalım. Örneğin http://localhost:49264/service.svc Projemizin referenslarına System.ServiceModel.Web.dll ekleyelim. Web servisimizin interfacine aşağıdaki görselde ki gibi sayhi metodu ekleyelim. Metodun taglari burda çok önemli. Son olarak interfacede tanımladığımız metodumuzu implement edelim. Web servisimiz artık kullanıma hazır. Aşağıdaki url'den web servisimizin metodunu kullanabiliriz. http://localhost:49264/service.svc/json/sayhi

ASP.NET uygulamalarında WebResource kullanımı (WebResource.axd)

          Web uygulamalarında genellikle resourcelar uygulama içerisine eklenerek sayfalarda path'lari ile çağırılırlar. Bu kullanım açısıdan çok kullanışlı bir yöntem değildir. Şöyleki bazı resourcelarımız her uygulamada olması gereken resourcelardır. Bu resourceları her uygulamaya eklemek etkili bir kullanım değildir. Bunun yerine webresource yöntemiyle istediğimiz resoruceları bir class libary(dll) içerisine koyup, uygulamalarımıza bu dll'i eklememiz daha kullanışlı bir yöntem olacaktır. Bu yazıda da bir image libary dll oluşturmayı ve uygulama içerisinden bu dll içerisinde yer alan resimler çağırmayı adım adım anlatmaya çalışacağım. 1)Solution'ımız 2 adet proje oluşturalım.   - WebApplication(WebApp)   -Class Libary(ResourceLibary) 2)Image libary olarak kullanacağımız dll içerisine image'larımızı ekleyelim. 3)Her bir image'ın üzerine sağ click ile açılan window üzerinden Build Action özelliğini Embedded Resource olarak değiştirelim. ...