2010-09-08 7 views
1

Je crois que beaucoup de gens ont entendu parler et même utilisé la bibliothèque three20 pour construire leurs applications. Quels sont les avantages et les inconvénients de l'utiliser? Quelle est votre expérience jusqu'à présent - à partir de la montée en puissance, la conception de l'application, la construction, l'approbation, et l'avenir maintient ...Trois20 pour et contre

Je suis intéressé à le ramasser, attiré par les éléments de l'interface utilisateur qui ne sont pas facilement à partir du SDK officiel .

Répondre

5

J'ai commencé à développer une nouvelle application avec Three20. Petite remarque: j'ai commencé le développement iPhone il y a environ un an. J'ai été attiré par les éléments de l'interface utilisateur, alors j'ai pensé que je vais essayer.

Téléchargement est la source détroit vers l'avant, mais en ce qui concerne l'intégration Three20 à une application, il devient difficile. Je pense que j'ai besoin d'environ une demi-journée pour le faire fonctionner. Le gros problème était que j'utilise XCode 3.2.3 avec iOS SDK 4.0 et que la source que j'ai téléchargée était prête à fonctionner sur iOS 3.2. Après avoir lu beaucoup de blogs et d'autres choses comme ça, j'ai finalement réussi à lancer mon application sur le simulateur et sur le périphérique.

Les prochaines étapes ont été plutôt faciles. Vous pouvez facilement utiliser les UI-Elements et Core-Functions of Three20. Construisez votre application en utilisant la navigation par URL est super. Donc, Three20 fait beaucoup de choses que vous devez normalement prendre soin de vous. Par exemple. Normalement, vous devez allouer et initialiser votre ViewController, le pousser sur votre NavigationController et le relâcher. Dans Three20 vous devez seulement "appeler une URL" et le reste est fait par la bibliothèque.

De ce point de vue, Three20 est vraiment génial. Les problèmes suivants ont été rencontrés lorsque vous avez voulu personnaliser ou modifier les composants standard. J'ai passé beaucoup de temps à lire la documentation de classe sur Three20.info jusqu'à ce que j'ai réussi à construire ma propre TableCell. J'ai fait face au même problème, quand je veux charger mes données d'une manière différente à un tableauView.

Jusqu'à présent, je n'ai pas de problèmes avec d'autres bibliothèques dans le même projet.

Je pense que Three20 est génial et facile. D'un autre côté, cela peut être assez difficile. Si vous aimez les éléments de l'interface utilisateur, vous devriez essayer.

0

Je l'ai utilisé pendant quelques temps. Le principal inconvénient est que vous devez développer le projet entier avec la librairie three20, sinon des bugs apparaîtront.

3

Le principal problème avec Three20 est que vous devez prendre tous ou rien de tout cela - vous ne pouvez pas facilement choisir juste une partie que vous souhaitez utiliser.

Il vaut la peine de chercher d'autres projets qui font des choses que vous pourriez vouloir pour Three20 - comme la navigation photo.

+1

J'ai utilisé Three20 dans un projet pour obtenir la fonction de navigation photo. Comme le dit Kendall, c'est tout ou rien. Même si je n'ai rien utilisé d'autre en trois heures, j'ai dû inclure tout ce qu'il contenait. Il a gonflé le paquet de l'application d'environ 4 Mo. – Jasarien

0

Je hérité d'un projet qui avait Three20 intégré seulement pour la mise en réseau et le contrôleur de message. Je ne l'aime pas. Si vous utilisez simplement la fonctionnalité qu'il fournit, cela fonctionne, mais quand vous voulez modifier quelque chose, vous vous retrouvez noyé dans du code spaghetti. Vous découvrirez également beaucoup de mauvaises pratiques de codage - mon préféré était une valeur BOOL étant castée à un pointeur d'objet. Certains d'entre eux semblent avoir été portés depuis Javascript. J'ai mis un stagiaire au travail pour trouver toutes les parties que nous n'avons jamais appelées et pour commenter autant de code que possible, et au moins je ne me noie plus dans les avertissements du compilateur. Maintenant, nous passons le temps d'écrire notre propre contrôleur de message, et je suis à la recherche d'une pile réseau différente.

Questions connexes