Aşağıdaki iki varsayımın doğru olduğunu varsayalım.
- Tüm kullanıcı tabanınızın her yerde geniş bant erişimi var
- HTML5 ve WHATWG gruplarının taslak şartnamesinin tamamını uygulayan hayali bir tarayıcı X vardır, sürekli olarak ve tüm kullanıcılar X tarayıcısını kullanır.
Ticari genel masaüstü uygulamalarına ihtiyaç duyduğumuz ticari bir genel HTML5 web uygulamasının temel kısıtlamaları nelerdir ?
Ekstra özellikler için Flash / Java / SilverLight / etc köprülerine veya ekstra özellikler için tarayıcı eklentilerine güvenmeyen eklentisiz web uygulamalarının sınırlamalarıyla ilgileniyorum.
Geçerli Olmayan Olası Sınırlamalar:
- Veritabanları? WebSQL ve indexedDB var.
- ES dosyası? Hem okuma hem de yazma yapan HTML5 Dosya API'miz var.
- Hız? Son JavaScript motor yarışında, tarayıcı artık yavaş değil. Yerel C ++, kromun V8 motorundan sadece 3 kat daha hızlıdır.
- Geliştirme araçları? Web olgunlaştı ve listelenemeyecek kadar çok sayıda araç mevcut.
- Kapalı Kaynak? Evet, tüm kod açık kaynak. Bu iki ucu keskin bir kılıçtır ve kapalı kaynak veya açık kaynak kodunun kullanımı hakkında çok sayıda görüş vardır. Ben şahsen açık kaynak kodunun avantajlarının dezavantajlardan daha ağır bastığına inanıyorum.
- JavaScript / HTML5? "Ben şahsen HTML5 ve EcmaScript'in korkunç geliştirme platformları olduğunu düşünüyorum" gibi argümanlar sayılmaz.
Bilinen Sınırlamalar:
- Gerçek zamanlı / güvenlik (çok gizli) kritik kodu web'e ait değildir veya olamaz. C veya C ++ gibi düşük düzeyde, yüksek kontrol edilebilir bir dilde yazılması gerekir.
- Bilgisayarınıza takılı üçüncü bir yabancı donanım parçasıyla etkileşime girmesi gereken herhangi bir araç, web uygulamanızla konuşmakta zorlanır.
Web'e ait olmayan bir dizi program da vardır. İşletim sistemleri, sürücüler, sunucu yazılımı, düşük seviyeli API'ler. Bunun farkındayım ama bunları "ticari genel" uygulamalar olarak sınıflandırmıyorum, bunlar bilgisayarlara önceden yüklenebilen yazılım türüdür.
Bir yana, iki varsayımın korkunç bir şekilde gerçekçi olmadığını biliyorum, ancak bunları 5/10/20/30 yıl içinde başarabiliriz. Uygulamaların türü ve uygulamaların web ile tamamen uyumlu olmayan özellikleriyle ilgileniyorum .
Motivasyon:
Nokta:
Bir masaüstü uygulamasının geçerli bir çözüm olduğu sorunlar kümesi göz önüne alındığında.
- Bir web uygulaması neden geçerli bir çözüm değil?
- Bir web uygulamasını çözüm olarak kullanıp kullanamayacağımı nasıl belirlerim?
Web uygulamaları (internet bağlantısı ve tarayıcı desteği) ile ilgili ana zorlukları, var olduklarını iddia ederek gidermeye çalıştım.
Dahası, HTML5 çevrimdışı uygulamaları ve Modernizr her iki sorunu da çözme yolunda ilerliyor.
Web uygulaması geliştirmeyle ilgili diğer zorluklar nelerdir?