Comparatif des outils de développement multi-plateforme mobile 2 - AppceleratorTitanium

Titanium est une API et une plate-forme JavaScript éditées par "Appcelerator". Il permet de créer des applications natives et offre une API supportant une grande quantité de ressources matérielles. Appcelerator fournit également un IDE basé sur Eclipse, "Titanium studio", qui permet de compiler et tester son code à la volée. Le codage est rapide et il suffit de peu de code pour développer une application.

Cependant, Titanium souffre de deux inconvénients majeurs. Le premier est qu'il faut une connexion Internet permanente pour pouvoir utiliser Titanium Studio, cela signifie que si on perd sa connexion ou si le site de Titanium est en maintenance, alors on ne peut plus travailler. Le second inconvénient est la documentation : il y a beaucoup d'outils mais l'information y est divisée et aucun d'eux n'est vraiment exhaustif, on peut passer de précieuses minutes (voire heures) à chercher une information.

A noter également que quelques incohérences graphiques se produisent parfois, l'équipe d'Appcelerator travaille actuellement dessus. Dans l'ensemble, le plus gros problème reste la documentation, car on gagne vraiment du temps à développer avec Titanium, malheureusement on perd ce temps à chercher comment résoudre tel ou tel problème.

Avantages :
 application native : aspect natif & performances ;
 accès aux ressources matérielles ;
 vitesse de développement ;
 extensibilité.

Inconvénients :
 mauvaise documentation, manque de ressources d'apprentissage ;
 IDE réclamant une connexion Internet permanente ;
 pas de solution d'encapsulation du modèle de données ;
  parfois de nombreuses fuites de mémoire apparaissent.


CARACTÉRISTIQUES DE LA SOLUTION
CRITÈREDESCRIPTIONCOMMENTAIRE
Source : Ideo Mobilis
Type de solutionRuntime, Framework.
Type de DéploiementNatif
Gestion de L'IHMOui
Type de mise en pageCoordonnées
LangageJavaScript
Vitesse de développementRapide, moyenne.
Courbe d'apprentissageMoyenne, longue.Malgré l'utilisation du langage JavaScripttrès répandu, la courbe d'apprentissage s'allonge considérablement à cause d'une mauvaise documentation. L'application de référence “KitchenSink” par exemple est construite sur un design non recommandé. Alors que Tweetanium, également écrit par l'équipe de Titanium, propose de bien meilleures pratiques mais n'est pas mis en avant.
IDETitanium Studio (basé sur Eclipse).C'est une bonne intégration qui contient les simulateurs, la coloration des éléments de l'API et un débogueur. Cependant l'IDE a besoin d'une connexion permanente avec le serveur d'Appcelerator pour fonctionner
Outil graphique pour l'IHMAucun.
DébogueurTitanium StudioLa couche d'abstraction entre l'API JavaScript et le code natif final étant très grande, il est difficile à la vue des informations délivrées par le débogueur de corriger de manière productive les exceptions générées par ce code (Objective C par exemple). Le JavaScript par contre se débogue très bien.
DocumentationQ&A, référence de l'API, wiki, blog et screencasts.Trop d'outils incomplets. Certaines fonctionnalités sont dé-finies dans certains outils et pas d'autres ce qui rend difficiles les recherches : il faut chercher à travers chaque outil pour avoir une information, quand elle existe.
Outils de supportQ&A, devlinks et blog.Le système de question/réponse basé sur un modèle similaire à "Stackoverflow" est intéressant et performant. La mise en relation avec d'autres développeurs Titanium est une excellente chose.
PopularitéTrès grande.
Outils de formationClasses en anglais, par exemple : "Building Native Mobile Apps" dure deux jours et coute £1,250.00 (1424€). En Europe il y a deux endroits ou les classes sont données en anglais : Londres et Malmö (Suède).
PrixLe plan “Community” est gratuit, 9/dev/y (364€) pour “Indie”, 88/dev/y (1744€) pour “Professionel”, et à débattre pour “Entreprise”.Les différences concernent la disponibilité des modules (Paypal, SMS, Gamekit, etc.) et le degré de support disponible.
LicenceApache public license v2.
Open sourceOui
Support des tablettesOui
Outils de déploiementAucun
ExtensibilitéOui, on peut écrire des modules pour iOS et Android pour étendre Titanium.
Produits associés