Yazılım

Phonegap: ne iyi ve ne kötü

PhoneGap yedi mobil platformlar için HTML/JavaScript, çapraz platform geliştirme için bir çerçevedir. Bugün bir önemli sayıda çapraz platform programlama dışarı çalıştı, yerel geliştiriciler, ya da mobil geliştirme çalışan ön uç geliştiriciler tarafından yazılmış PhoneGap, adanmış makaleler okuyabilirsiniz. Ne kadar iyi ya da kötü PhoneGap onların değerlendirmesi olduğunu, faaliyetleri; onların özgün alan tarafından etkilenir Bu nedenle PhoneGap 'cool' ya da 'kusurlu' denir.

Ama faaliyetlerini sadece PhoneGap geliştirmeye adanmış geliştiriciler vardır ve bunlar bu platformlar arası framework inceliklerini çalışma. Yerel Kalkınmada de çapraz platform geliştirme evrensel hiçbir çözüm yoktur. Her şey yazılım projesi üzerinde bağlıdır; ve bu inceliklerini PhoneGap proje için platform olarak seçilmiş olup olmadığını karar vermenize yardımcı.

PhoneGap çapraz platform özelliklerini şu şekilde elde edilir: yerli proje oluşturulan, farklı bir tarayıcı (yerel webView bileşeni) ana bileşeni olarak içerir her platform için. Bu tarayıcı HTML/JavaScript kodunu olağan web sayfası olarak görüntülemek yapabiliyor. Bu projenin dosya sistemi sayfasına erişim veren bir dosya sunucusunun parçası davranır. Ek bir avantaj olarak PhoneGap standartlaştırmak için mobil cihazlar desteklenen işletim sistemleri, kamera, Pusula, ivme, rehber vb gibi çalışan yerel özelliklere erişimi sağlayan nesne vardır.

Varsayılan API yeterli değildir, PhoeGap Plugin API eksik işlevselliğini uygulayan bir kod yazmak için izin verir. Bu kodu, kendine özgü her platforma özgü yerel programlama dili yazılır.

Temelde, bir PhoneGap proje uygulama HTML/JavaScript kodu olmasını dört fonksiyonel parçalar içerir:

1) bir yerli tarayıcı (webView), projede gömülü;

2) yapılandırılmış API JavaScript kodu Yerel işlevselliğini taşınabilir bir aygıta erişmek için;

3) API yerli eklentileri yazmak için;

4) dosya depolama, HTML, JavaScript ve diğer web kaynakları uygulama içerir.

Böylece PhoneGap bir servis odaklı, tek sayfa HTML-5 uygulama oluşturmanıza olanak verir.

PhoneGap kalkınma % 99'u dikkate alınarak çevre özellikleri (bir mobil cihaz, sınırlı işlem gücü, bellek, dokunmatik ekran vb) ve tarayıcıları layouting ve JS-kodlama olduğunu. PhoneGap sırasında geliştirme bir özgüllüğü her platformun (webView üzerine dayalı olan) kendi varsayılan tarayıcı düşünmeye ihtiyacı var. Mimari ve en iyi duruma getirme konusunda PhoneGap talep ediyor. Her platform için optimize kullanıcı arabirimi vardır; Bu yüzden hedef platformlar proje üzerinde harcanan süreyi etkileyecek belirtme.

Biz daha önce PhoneGap sorunu dokundu ve dört büyük sorunlar üzerinde PhoneGap duyarlı bir app inşa ederken sıraladı: 300 milisaniyelik gecikme, problem dokunaklı, DOM yapısını en iyi duruma getirme ve uzun listeler. Ve bu sorunlar için çözümler tavsiye ettiler. Böylece PhoneGap 'zayıf noktaları' gibi tedavi edilmelidir temelde teknik özelliklerine, vardır bir sonuca ulaştık.

Sonuç olarak, burada zaman kazanmak ve hayal kırıklığı önlemek için PhoneGap geliştirme - birkaç yararlı ipuçları verilmiştir.

1) Daha az dış kitaplıkları kullanılır, daha iyi. Bu bir mobil aygıtın sınırlı kaynakları ilgilendiriyor. Bu bir tek kutusu (uygulama iş eğer) yürütmek için bir donanma olması yakın birşey. Yakıt tüm filo tarafından tüketilen olacaktır. Kütüphaneler düşünceli ve tamamen yeteneklerini yararlanmak çalışın;

2) App tüm platformlar ve işletim sistemi sürümleri aynı bakmak zorunda değil. Bir ticaret-off hız ve işlevselliği korumak için stil ve bir app görünümünü yapmak daha iyidir;

3) CSS arka plan resimleri görüntülemek için kullanın. yalnızca listedeki bir öğeye ekranda görüntülendiğinde, bu nedenle bir görüntü yüklenir;

4) En iyi duruma getirme yöntemleri, istemci-sunucu mimarisi, web sayfaları için geçerli her bir PhoneGap uygulama için en iyi çözüm değildir. Bu nedenle gerek yok bir JavaScript dosyası boyutunu göz önünde bulundurarak, veya, örneğin, görünmez bir görüntü piksellerindeki indirilmesi CSS/HTML/JS dosyaları, yükleme için hiçbir uzun ağ istekleri vardır. Bir dosyasını yüklemeden önce kaçınılmaz 250 milisaniyelik gecikme ile başa çıkmak için bir yol seçin; bizim seçim tembel preloading ve fayans vardı;

5) Yer alanlar ekranın üst tarafındaki giriş - böylece klavye görüntülerken sayfa düzeninin davranış farklılıkları kaçınmak gerekir;

6) Bir çözüm yoksa uzun listeleri kaçınılmalıdır - bir sorun vardır;

7) Gölgeler, gradyanlar ve kalınlığı, mümkün olduğunca kaçının. Bu şıklık yalnızca gerektiğinde neden kullanan var ekstra güç gerektirir;

8) CSS ile grafik işlem birimi güç kullanımı.