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.
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
- Hiçbirşey Yapma
- Sorunu Clientta Çöz
- 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