44 votes

Passer de Jquery Mobile à AppFramework

J'ai construit un projet en utilisant Jquery Mobile. JQM semble parfait pour le prototypage rapide mais le résultat final sur un iPhone 3GS/IOS 5.1 est loin d'être fluide. J'ai essayé beaucoup d'astuces pour le rendre plus rapide et j'ai supprimé les transitions mais je n'arrive toujours pas à obtenir un résultat satisfaisant.

J'ai cherché autour de moi. Ce dont j'ai besoin est une solution légère avec une UI décente (JQM est parfait pour ce dont j'ai besoin dans ce domaine).

trigger.io et AppFramework semblent être les 2 solutions disponibles (peut-être en manque-je d'autres).

Je voudrais essayer AppFramework mais j'aimerais avoir des retours de personnes qui ont effectué le changement.

Merci.

79voto

Gajotres Points 46468

Introduction

Une version plus grande de cette réponse peut également être trouvée ICI.

jQuery Mobile n'a jamais été conçu pour être utilisé uniquement comme un framework d'application mobile hybride HTML5/CSS3. Sur une voie similaire à son grand frère jQuery et jQuery UI, il était destiné à être utilisé comme une solution robuste et responsive sur le marché des applications web mobiles en pleine croissance. Ce qu'il a pris de son grand frère, c'est un support du navigateur complet. Lancez-le sur toutes les plateformes majeures possibles et il devrait fonctionner de la même manière.

Ce support étendu des navigateurs a également posé un autre problème, à savoir l'optimisation de la plateforme. Parce que jQM ne peut pas favoriser des plateformes spécifiques, cela signifie également qu'il n'est pas optimisé pour être utilisé au maximum sur l'une d'entre elles.

Parlons aussi un peu de Phonegap. Bien que ce soit un excellent système d'emballage d'applications, cela devient un enfer lorsqu'il est utilisé avec une application plus grande de jQuery Mobile. C'est comme si deux grands parents avaient fait un enfant déformé ou que deux grands avantages ont donné un encore plus grand inconvénient.

Solutions

Comme c'est toujours le cas dans l'histoire de l'humanité, un autre groupe de développeurs est venu pour combler ce vide évident. Et c'est ainsi que sont apparus jqMobi (maintenant AppFramework), jqTouch, Zepto, Sencha Touch, Trigger.io et autres.

Avantages vs ...

Avant d'aller plus loin que jQuery Mobile, une chose doit être comprise : quoi que vous gagniez en vitesse (et croyez-moi, vous l'obtiendrez), vous perdrez en support de la communauté. Alors que chaque framework mentionné précédemment a une communauté de développeurs considérable derrière lui, tous combinés ne peuvent même pas se rapprocher de jQM.

Cela dit, plongeons dans les spécificités. De mon expérience, actuellement les deux meilleures solutions en tant que frameworks d'applications hybrides HTML5/CSS3 pour Android et iOS sont AppFramework et Sencha Touch. Premièrement, laissez-moi dire qu'ils sont rapides, plus rapides que jQuery Mobile ne le sera jamais (si les développeurs de jQ continuent sur cette voie). Le support UI est similaire, voire même meilleur dans le cas de Sencha Touch, sans parler du fait que l'UI a un aspect plus natif qu'avec jQuery Mobile. Les listes sont plus rapides, le défilement est meilleur, les transitions ne bégayent pas.

... inconvénients

Avant que quelqu'un ne demande pourquoi les gens choisissent alors d'utiliser jQuery Mobile à la place ? La raison évidente serait le support de la communauté et dans une certaine mesure, c'est la vérité. Mais il y a d'autres problèmes pressants ici. Alors que jQMoby se vend comme une alternative jQuery plus fidèle à jQuery Mobile, c'est un grand mensonge. Bien que ce soit toujours un excellent framework, ils utilisent cette déclaration comme un tour de marketing. Ils ont en effet cloné (refait) beaucoup de fonctionnalités de jQuery, mais il ne s'agit que d'un travail partiel, et les développeurs chevronnés de jQuery vont se retrouver confrontés à un problème. Ils ne pourront pas tirer pleinement parti de leurs connaissances antérieures, passant ainsi plus de temps à essayer de trouver comment faire quelque chose qui était censé fonctionner plutôt que de travailler sur une application.

D'un autre côté, Sencha Touch ne souffre pas de ce problème car il a une syntaxe différente, presque alien. Comme avec jqMoby, vous aurez besoin de beaucoup de temps pour comprendre sa syntaxe. Mais n'ayez crainte, le résultat sera satisfaisant à la fin.

Une autre chose, contrairement à jQuery Mobile et Phonegap, AppFramework et Sencha Touch ont leur propre système d'emballage d'applications natif. À mon humble avis, ce système est meilleu.

2 votes

Merci beaucoup pour cette réponse. J'ai regardé votre profil et j'ai vu que vous avez donné de nombreux conseils pour améliorer l'utilisation de JQM. Je vais essayer chaque point que vous avez soulevé pour une dernière tentative de JQM.

1 votes

J'avais essayé sencha touch sur mac. Tout d'abord : l'installation de la console sencha a rendu mon dossier "sale". Test de vitesse sur Android, lent et buggy. Pour la vitesse et les petites applications, je préfère utiliser jQuery Mobile.

0 votes

Mieux vaut tard que jamais: Très bonne réponse! Un petit conseil de plus : Si vous travaillez avec Appmobi sur un projet assez complexe (comme je l'ai fait), utilisez définitivement celui avec jQuery. Il est légèrement plus lent (vraiment pas perceptible) mais vous aurez accès à toutes les fonctions jQuery. Je le regrette encore de ne pas avoir utilisé la version avec jQuery (elle n'était pas disponible quand j'ai commencé).

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X