x

Platform sahipleri ve fragmantasyon mobil uygulama geliştirmeyi zorlaştırıyor

osman celik mobinex mobil 13Webrazzi Mobil’13 toplantımızın özellikle mobil uygulama geliştirmek isteyenlere hitap eden konuşması Mobinex CTO’su Osman Çelik tarafından yapıldı. Osman Çelik “mobil uygulama geliştirmenin zorlukları ve çözüm yolları” başlıklı konuşmasıyla aramızdaydı.

Osman Çelik, sunumuna mobil platformların yönlendirmesinden bahsederek başladı. Platform sahipleri uygulamaların her zaman bir adım önde olması için çalışıyor ve tarayıcı üzerinden çalışan uygulamaların kullanılmasını istemiyor. Android’i bu platformların dışında bırakabiliriz ve iOS tarafında işlerin daha da baskın olduğunu kabul edebiliriz.

Tek uygulama için 10 farklı kod

Osman Çelik’e göre bir diğer sorun da platfomların fragmantasyonu. Aynı platform içindeki mobil işletim sistemi sürümlerinin ve cihazlarının farklılıkları uygulama geliştirmeyi hem nakit hem de zaman açısından külfetli bir hale getiriyor.

mobinex mobil uygulama gelistirme

Bu durumda 10 liraya geliştirilen bir uygulamaya yıl içinde bir 10 lira daha harcayacağınızı göz önünde bulundurmanız gerekiyor. Yapılan 1 adam/günlük iş 10 katı masrafı beraberinde getiriyor.

Mobil uygulamaların ömrü en fazla 3 yıl zira hem ihtiyaçlar hem teknoloji hem de moda uygulamaların baştan yazılmasına neden oluyor ve bu tür operasyonel sorunları çözmek için de çeşitli ara platformlar pazarda kendine yer buluyor (Mobinex de bunlardan biri).

Osman Çelik’in paylaştığına göre uygulamayı geliştirmek bir sıradağlar dizisinin başlangıcı. Test süreci, dağıtım/pazarlama, kullanıcı izlemesi, risklerin göz önüne alınması ve bunların değerlendirmesi gibi süreçler birbirini izliyor. Bu noktada devreye giren ara çözümler de bu süreci sistematik şekilde yürüyecek bir hizmet sunuyor.

Osman Çelik’in sunumu paylaşacağız ama isterseniz Mobinex.biz adresinden daha detaylı bir inceleme yapabilirsiniz. Mobil uygulama geliştirme konusundaki tercihlerinizi de yorum bölümünde paylaşabilirsiniz.

Yorumlar (11)

  1. Mobil cihaz fragmantasyonu olduğu gerçek ama 10 farklı codebase gerektiği çok yanlış bir ifade. iOS ve Android için uygulamayı yazarken farklı ekran çözünürlikleri ve versyionlarına göre ayarlamanın yöntemi var.
    Ayrıca Apple eski versyionlara desteği kaldırıyor, Apple’ın destek vermediği 4.3’ın altına zaten uygulama geliştirmezsin artık, App Store’a gönderemezsin bile. Mayıstan itibaren de 5.0 minimum desteklenecek.
    Kendi uygulama içine Responsive Web Sayfası Gömerek yaptıkları native olmayan plaformlarına müşteri çekme ve talep yaratma amacıyla çok yanlış ifadeler kullanmışlar. Müşteriler Native Uygulama yazan firmalar ile görüşmeden ve fiyat almadan böyle 3. parti aracılar kullanmasınlar. Apple ve Android platformları aracıya ihtiyaç bırakmayan platformlar.

    Cevapla
    • Yaptığınız banka uygulamaları mobil websitelerin birebir aynısı. Websayfaları uygulamaya bundle edilince ne yazık ki native olmuyor.
      Garanti Cep Şubesi Uygulamasının içine koyduğunuz GarantiMobile.js dosyası içindeki touch eventler herşeyi açıklıyor. Ne kadar native olduğu açık. Örneği de yapıştırayım.

      function addTouchEventHandlers() {
      var myLinks = document.getElementsByTagName(‘a’);
      var classNameForBackButton = “backButtonActive”;
      var classNameForOkButton = “okButtonActive”;
      for(var i = 0; i < myLinks.length; i++) {
      if (hasClass(myLinks[i],"ui-btn-small-first")) {
      myLinks[i].addEventListener('touchstart', function(){addClass(this,classNameForBackButton);}, false);
      myLinks[i].addEventListener('touchend', function(){removeClass(this,classNameForBackButton);}, false);
      } else {
      myLinks[i].addEventListener('touchstart', function(){addClass(this,classNameForOkButton);}, false);
      myLinks[i].addEventListener('touchend', function(){removeClass(this,classNameForOkButton);}, false);
      }

      İşin teknik tarafı bir yana, 10 Farklı kodbase gerekiyor, maliyet 10 katına çıkıyor gibi real olmayan sözler iş etiğine yakışmıyor. Emek etmişsiniz ürün satacaksanız ama ürün pazarlamak için yanlış bilgi vermeyin.

      Cevapla
      • Merhaba Can, Garanti Bankasının Cep Şubesini Mobinex geliştirmedi. Garanti Bankası kendi ekibi ile geliştiriyor ve gayet güvenli. Sanırım yanlış bir bilgi edinmişiz. Daha pozitif bir üslup kullanabilirseniz, size Smartface App Studio hakkında daha fazla bilgi sağlamaktan memnuniyet duyarım.

    • Yaptığınız banka uygulamaları mobil web sitelerinin birebir aynısı, web sitelerini mobil uygulamanın içine bundle edince maalesef native uygulama olmuyor. Garanti iPhone uygulamasının içindeki Javascript dosyası, touch eventler ve button css’i herşeyi açıklıyor.
      İşin teknolojik boyutu bir yana, öyle yada böyle emek edip haklı olarak satmak istediğiniz ürünüze sırf talep yaratmak için, 10 ayrı kodbase gerekiyor, maliyet 10 katına çıkıyor gibi gerçek dışı tanımlar söylemeniz ve native geliştiricileri zan altında bırakıcı açıklamalar yapmanızı etik bulmuyorum.

      Cevapla
  2. Mobinex kurguladigi bir seneryodan rant saglamaya calisiyor gibi geldi bana?

    Cevapla
    • Metin Bey, bu mobil development konusunda zorluk çeken firmalar görülüp analiz edilerek bir çözüm (Smartface App Studio) üretildi. Eminim gelecekte daha iyi daha optimum çözümler üretilebilir. Çözüm zaten kullanıcıya optimum gelmezse bu yoldan gitmez. Bunu nasıl bir rant sağlama aracı olarak yorumladığınızı anlayamadım. Bu tip yorumları ürünü denemeden söylemek yanlış diye düşünüyorum.

      Cevapla
  3. “Söylediklerinize katılmıyorum. Cross Platform ve Cross-Compiling çok eski bir olgudur, bu gün Mobinex in icat ettiği bir şey değildir. Cross-Compile işlemi, herhangi bir dil ile yazılmış code un, diğer hedef dillere dönüştürülmesi işlemidir. Smartface App Studio nun yaptığı da tasarlanan ekranların ve JavaScript ile yazılmış code`un native iOS ve native Android code una (html5 değil) dönüştürülmesi işlemidir. Bu konuda Dünyada başka native cross compiler ürünler vardır. Bu yaklaşım native bir çıktı üretirken geliştirme maliyetini (zaman, kaynak vs..) yüksek oranda düşürmektedir.
    Bu konuyla ilgili daha fazla teknik bilgi araştırarak yorum yapılması daha doğru olacaktır.
    Kaynaklar : http://en.wikipedia.org/wiki/Cross_compiler,
    http://oguzkoroglu.net/post/2013/04/18/Webrazzi-Mobil13-ve-Cross-Compiling.aspx“

    Cevapla
    • Hali Hazırda global bir cross platform mobil uygulama platformu için ticari pluginler geliştiriyorum ve Amerikadan Avustralyaya kadar corss platformlar için geliştirdiğim pluginler kullanılıyor. Sitenizde Garanti Bankası uygulamalarını referans gösteriyorsunuz ve aşağıda belirttiğim durumu paylaşınca onu biz geliştirmedik deniyor, ne farkeder, sizin ürün ile geliştirilmiş sonuçta.
      Şimdi .plist lerinizin içindeki HTML’leri de gördüm, onuda mı inkar edeceksiniz?
      Jquery Mobile’ın css’ine eklediğiniz /* Disable selection/Copy of UIWebView */ -webkit-touch-callout: none;
      -webkit-user-select: none; kodları da evlere şenlik.
      Ürünün background teknolojisinden ziyade, pazarlama amaçlı yaptığınız yanıltıcı üslubu eleştiriyorum. Konuyu başka yere çekmenin bir anlamı yok. Teknik olarak Hopper Disassembler ile açarım ARM binaryinizi daha detaylı da bulduklarımı paylaşırım zor birşey değil benim için.

      Cevapla
      • Umut Demirtaş |

        Merhabalar,
        Can bey yorumlarınızı okuduğum zaman amacınızı anlamakta güçlük çekiyorum.
        Öncelikli olarak teknolojik olarak cross-compiling ile html5 cross-platform’ları karıştırdığınızı gördüm.

        Ayrıca bir mühendis olarak “.plist” lerin içinde gördüklerinizle cross-compiler bir ide’nin binary’sini nasıl bağdaştırdığınızı hiç anlayamadım.

        Sizden ricam lütfen smartface’i eleştirmeden önce biraz daha bilgi edinin. Keşke bu konuda yorum yapmadan önce dün webrazzi de smartface standını bir görmeyi deneseydiniz.

        Son olarak üslup açısından biraz daha yapıcı olmakta fayda var diye düşünüyorum. Sonuçta dün gördük ki bir çok inovatif özelliği ile dünyadaki rakipleriyle yarışabilecek bir mühendislik örneği var. Bu ürünü yanlış bilgilerle yermektense doğru bilgiyle yararlı eleştirilerin daha iyi olacağını düşünüyorum.

      • “Sitenizde Garanti Bankası uygulamalarını referans gösteriyorsunuz ve aşağıda belirttiğim durumu paylaşınca onu biz geliştirmedik deniyor, ne farkeder, sizin ürün ile geliştirilmiş sonuçta.” demişsiniz. Bu ürünü ne biz geliştirdik ne de bizim ürün kullanarak geliştirildi. Bu söylediğiniz ürün tamamen garanti teknoloji tarafından geliştirildi.

Bir Cevap Yazın