web-dev-qa-db-fra.com

Sencha Touch ou jQuery Mobile?

Je me demande si je devrais développer une application Web mobile (maintenant, dans deux semaines ou dans un mois), laquelle devrais-je choisir? Lequel choisiriez-vous les développeurs Web mobiles?

Si jQM 1.0 était officiellement publié aujourd'hui, je l'aurais sans doute adopté (à condition que cela produise ce qu'il promet). Maintenant qu'il est en alpha, je me demande s'il vaut la peine de s'y lancer pour un projet de niveau commercial? Sencha Touch serait-il une meilleure alternative?

68
William Niu

J'utilise jQuery Mobile depuis un moment. Cela fonctionne bien sous Blackberry 6, iPhone et Android. 

J'ai écrit un article à ce sujet ici: jQuery mobile alpha

Bien que ce soit l'alpha, ils montrent de bons progrès. Je me suis penché sur leur développement dans github, il semble y avoir des trucs cool d’ici début 2011.

UPDATE 2011-12-01 jQuery Mobile a publié la version 1.0, enfin en alpha. Plus d'informations à ce sujet ici: http://jquerymobile.com/blog/2011/11/16/announcing-jquery-mobile-1-0/

23
tpae

Sencha Touch est un cadre d’application (vous créez votre interface par programmation via Javascript), tandis que jQuery Mobile est plutôt une bibliothèque d’améliorations mobiles (vous écrivez du code HTML normal pour votre contenu, puis ajoutez jQuery mobile pour des transitions/animations). jQuery Mobile a une courbe d'apprentissage plus facile, mais Sencha Touch peut mieux simuler des applications "natives".

65
endemic

La première question que vous devez vous poser est de savoir quel est le but de l'application. Si vous souhaitez commercialiser une application sur l'un des points de vente (iTunes, Andoid App store) ou si vous avez besoin d'accéder à des fonctions spécifiques à l'appareil qui ne sont pas encore accessibles via les API locales (accéléromètre, appareil photo, contacts, etc.), vous devez penser normalement ou l’une des solutions hybrides (Appcelerator, PhoneGap, etc.). 

Si votre public cible sera plus présent dans l'espace "Web mobile", tel qu'une version mobile d'un site de bureau Web d'entreprise ou un port d'application Web intranet, vous devriez consulter Sencha Touch et jQuery Mobile. La décision entre ces deux va vraiment être basée sur votre expérience de développement et ce avec quoi vous vous sentez plus à l'aise. Sencha Touch est une plate-forme TRÈS robuste qui possède un ordinateur de bureau (ExtJS) et un mobile (Sencha Touch) qui se reflètent mutuellement, ce qui vous permet de bien vous connaître et de vous familiariser avec l'autre. En outre, Sencha a adopté un modèle MVC sur le client, ce qui aide vraiment à organiser le code côté client et à le rendre beaucoup plus congruent avec les plates-formes de développement côté serveur.

La publication ci-dessus est en fait incorrecte. L'utilisation du modèle MVC sur le client, associée à historyUrl dans vos commandes d'expédition, vous permet d'utiliser les boutons de navigation Précédent et Suivant du navigateur, ce qui évite l'utilisation exclusive de jQuery Mobile. En outre, la gamme de produits de la Sencha Team comprend une application Designer qui fournit Designer, qui est un éditeur WYSIWYG permettant la création par glisser/déposer d’interfaces utilisateur. La feuille de route de cette société les a en cours de mise à jour de l'application Designer pour permettre la conception par glisser-déposer des écrans tactiles mobiles et des applications qui fonctionneront avec le motif MVC. Ils s'apprêtent également à publier une nouvelle version de l'outil Sencha Command qui générera automatiquement pour vous quelques structures d'application MVC complètes, que vous pourrez ensuite ajouter au code personnalisé nécessaire pour compléter votre application. Enfin, les nouvelles fonctionnalités de thématisation SASS permettent aux concepteurs d’utiliser des fichiers de configuration CSS3 et SASS ainsi que des variables et Mixins pour générer des feuilles de style CSS interserveurs pour votre application.

La décision concernant la question du développement Web mobile dépend donc du niveau de confort du javascript orienté objet. Si vous êtes très à l'aise avec cela, alors Sencha Touch est la solution, car il s'agit d'un système de classe très extensible, intégré au moteur principal, qui peut être personnalisé à votre guise ... mais si vous avez une expérience minimale de JS et souhaitez le jQueryMobile est le chemin à parcourir pour que votre serveur puisse afficher votre interface utilisateur et que la barre d’adresse déroulante vous permette de naviguer entre les pages (moins que le Web 2.0), jQueryMobile est la solution.

Il est assez évident que je suis partisan de Sencha Touch en raison de sa structure de classe bien pensée, de son extensibilité, de sa communauté d'utilisateurs très active, de sa continuité Web/mobile, de l'amélioration constante du cadre de base et de nouveaux outils simplifiant les efforts de développement. Sans oublier que la plate-forme Touch est plus mature que jQM n’a pas encore atteint le mode de production. 

41
user576929

Si vous voulez créer une version mobile d'un site Web, je vais utiliser jQuery Mobile. Si vous envisagez de créer une application mobile «native», je ferai plus probablement appel à Sencha Touch.

http://tysonlloydcadenhead.com/blog/jquery-mobile-vs-sencha-touch

11
Tarek El-Mallah

Sencha Touch a vécu plus longtemps que jquerymobile, mais j’ai constaté que jquerymobile gère le bouton de retour de l’appareil bien mieux que SenchaTouch . Je suis un programmeur JavaScript, mais j'aime bien le fait que jquerymobile . jquerymobile design soit génial, à mon humble avis.

5
Aldian

Je suis également favorable au sencha, JQM est très lent et n'a pas réussi à donner l'impression d'une application native.

  • Praveen
3
Praveen

Je pense que jQuery mobile est plus facile à apprendre et semble être très prometteur. La version 1.0 n'est pas encore disponible, mais ça va être un bon produit. Je le trouve très attrayant car il est basé sur jQuery - la devise est la devise

2
eric mabo

N'oubliez pas qu'il existe également Dojo Toolkit Mobile. Il a l'air sympa, du moins au premier abord, et il repose sur le noyau solide et éprouvé du Dojo Toolkit. http://dojotoolkit.org/features/mobile . La boîte à outils Dojo n’a pas beaucoup d’audience récemment, mais il semble qu’ils aient beaucoup progressé depuis le temps où elle était un peu lourde.

2
Lukasz Korzybski

pourquoi vous limiter ...

Regardez dans PhoneGap et Titanium Appcelerator

faites la comparaison en fonction de ce que vous essayez d'accomplir. Je sais que Sencha Touch a des droits de licence et, comme vous l'avez dit, jQM n'est pas encore officiellement publié.

C’est le moment idéal pour être dans l’espace mobile car il existe de nombreuses options viables

2
Aaron Saunders

J'ai essayé l'architecte sencha et, pour être honnête, c'était un cauchemar de courir. 

Mes antécédents sont DotNet, html, javascript, VB, Java et j'utilise Eclipse, etc. depuis un certain temps, donc je ne suis pas un grand débutant avec la détermination des dépendances, etc.

Voici ce que j'ai frappé:

Je suis allé sur le site Sench, téléchargé Architect. Cela m’a ensuite amené à télécharger le toolkit et sencha touch. J'ai téléchargé exactement ce qui était recommandé/demandé par les fichiers d'aide/site . J'ai Sencha Architect V2.1.0 Build 584., sencha-touch-2.0.1.1-commercial.Zip, SenchaSDKTools-2.0.0-beta3-windows .EXE

J'ai également téléchargé et installé un nouveau sdk/runtime Java, etc. L'installation a été effectuée sur une boîte morte XP (vmware). Le serveur Web est xampp.

Sencha ne reconnaît pas le SenchaSDKTools-2.0.0-beta3. Vous devez le pirater en utilisant des instructions difficiles à trouver. Même après le piratage, l’architecte ne parvient pas à utiliser le SDK approprié et donne des messages d’erreur lors du déploiement. 

De nombreuses erreurs ont également été détectées tout au long du processus et des problèmes se posent lorsque les données ne se chargent pas, même après avoir suivi les instructions à la lettre. 

J'ai passé 11 heures à arriver au point où l'application fonctionnera correctement sans se plaindre mais ne se déploiera pas. C’est déjà assez mauvais d’apprendre un nouvel outil/cadre, etc. sans que l’ide ne cause de deuil et que les «démonstrations pédagogiques» ne vous mènent pas. 

Il y a beaucoup de gens qui ont les mêmes erreurs partout. 

Après 15 heures d’efforts, j’abandonne mon travail et retourne à IBM XPages/PHP et Blueprint CSS avec des applications html5/CSS3 et jquery/Ajax/JSon codées à la main. 

Ma raison pour cela: Application Architect continue de vous repousser vers la ligne de commande. J'aime la ligne de commande, donnez-moi une bash Shell et vi et je suis prêt à partir. Toutefois, pour les éléments multi-fichiers complexes tels que les applications mobiles, un bon IDE vaut son pesant d'or. L'architecte n'est pas encore là. Je continue à avoir besoin de soulever le capot et de pirater pour que les choses fonctionnent. 

Au départ, je me suis tourné vers Sencha pour un jeune de 12 ans qui s’intéresse aux applications mobiles et qui cherche un moyen d’utilisation. Je l'ai essayé - cela ne convient pas - même obtenir une application de type hello world en cours d'exécution sera trop pour un débutant et la première application dans les fichiers d'aide ne s'explique pas d'elle-même, mais vous a demandé de copier le code permettant d'extraire des données d'un site Web. vous devez vous inscrire pour. (application ccitybars).

Une grande amélioration pour sencha sera lorsque Architect travaillera immédiatement (éventuellement un installateur avec sdk, outils, touchers et architecte tout-en-un) et que la première application -walk est un simple monde de salut qui permet ensuite de saisir des données, de les sauvegarder. données, puis affichage des données avant de passer au multi formulaire.

2
Shane

L’équipe MoSync a récemment réalisé une comparaison intéressante:

Quel framework JavaScript mobile est le meilleur: jQuery Mobile, Sencha Touch, jQtouch ou Kendo UI?

http://www.codefessions.com/2012/04/mobile-javascript-frameworks-evaluation.html http://www.codefessions.com/2012/04/which-mobile-javascript- framework-is.html http://www.codefessions.com/2012/05/which-mobile-javascript-framework-is.html

jQueryMobile gagne, mais le gain de licence est énorme. Je préfère jQueryMobile parce que je ne veux pas que quelqu'un d'autre écrive mon balisage, le piratage devenant de plus en plus difficile (du moins pour moi), cependant, j'ai quelques applications HTML5 à mon actif maintenant, une en jQM et Sencha Touch. Sencha Touch le rend plus lisse, très difficile à apprendre même si jQM vous permet de démarrer en un jour, il y a un bogue, mais vous les contournez généralement à cause de l'incroyable communauté Web autour de ce cadre.

1
Hammad Tariq

J’ai été confronté au même choix il ya environ un an et demi, puis jQTouch au lieu de Sencha Touch, que j’ai trouvé extrêmement centré sur Javascript. Je travaille actuellement sur un port du même projet que jQuery Mobile et je pense que la transition sera beaucoup plus douce qu’elle ne l’aurait été avec un projet Sencha Touch.

1

Si vous connaissez les bases PHP, je vous recommande fortement jqmphp.com. Mise en place en moins de 3 jours de tout un site mobile en ligne pour commander de la nourriture!

1
Vishnoo Rath

En quelques jours, j'ai construit une application de production Nice à l'aide de Sencha Touch 2.0 et elle est livrée telle que documentée. Et c'est RAPIDE. Il y a peut-être des bugs, mais lorsque j'en ai rencontré un (ce qui est rarement le cas), il semblait y avoir plusieurs façons d'aborder une solution de manière à ce qu'elle ne soit vraiment pas pertinente. 

1
David

Sencha touch sera la meilleure option si vous venez tout juste de commencer car elle est bien documentée et bénéficie du soutien de la communauté. En outre, avec Phonegap, vous consacrez plus de temps au développement et moins aux tâches relatives aux autres plates-formes mobiles. Phonegap construira l'application pour vous, une fois que vous l'avez téléchargée dans le constructeur.

0
hudson2010

Les applications basées sur Sencha Touch ne peuvent fonctionner que sur les navigateurs basés sur WebKit. Les applications basées sur JQueryMobile peuvent fonctionner sur tous les navigateurs Web mobiles.

Je pense que vous pouvez utiliser JQueryMobile pour les 2 à 3 prochaines années. Je pense que dans 2-3 ans, tous les navigateurs mobiles seront basés sur le moteur WebKit. Une fois que tous les navigateurs mobiles commencent à prendre en charge WebKit, passez à Sench Touch principalement en raison de la très bonne qualité de l'interface utilisateur.

0
mobile

Comparer les deux, c'est comme comparer des pommes et des raisins ... bien que vous souhaitiez développer des applications mobiles avec les deux, le niveau de confort avec l'un ou l'autre dépend entièrement de vous. 

Ce tableau peut être utile si vous souhaitez comparer les fonctionnalités: http://www.markus-falk.com/mobile-frameworks-comparison-chart/

0
Tarun

J'ai utilisé les deux et ils ont chacun des conditions où l'un est mieux adapté que l'autre.

À mon avis, vous utiliseriez JQueryMobile lorsque 1. Vous avez besoin d’une implémentation mobile rapide et légère d’une application Web . 2. Vous avez des contraintes de temps (certainement plus rapide à apprendre et à mettre en œuvre que Sencha Touch) . 3. L'aspect et la convivialité autochtones ne sont pas une exigence. 

Lors de l'extension d'une application Web existante pour laquelle des fonctionnalités relativement simples devaient être étendues et étendues au mobile (très rapide et facile), j'ai trouvé que JQM était extrêmement utile et simple.

À mon avis, vous utiliseriez sencha quand 1. Vous voulez une apparence et une sensation d’indigène 2. Vous souhaitez un niveau de fonctionnalité plus élevé du côté mobile (accès possible aux api natives par le biais d'une interruption téléphonique) 3. Cibler les derniers smartphones (les performances sont impressionnantes)

0
Donovan Thomson

Sencha Touch a fière allure, mais il est difficile à utiliser. Les forums de support Sencha offrent un support minimal. Sencha Touch 2.x est toujours en alpha est assez buggy

0
user1007721

Je suggère KendoUI

C'est une performance imbattable et rapide en quelques jours d'entraînement. Sans oublier la mise à jour rapide, les nouvelles fonctionnalités et la prise en charge des wrappers côté serveur (asp.net, php, jsp). C'est unique!

0
kamil