• Apfeltalk ändert einen Teil seiner Allgemeinen Geschäftsbedingungen (AGB), das Löschen von Useraccounts betreffend.
    Näheres könnt Ihr hier nachlesen: AGB-Änderung
  • Einige Blicke in fremde Welten dürft Ihr nun bestaunen und darüber abstimmen, welche davon Euch am meisten gefällt: hier geht es lang für Euer Voting --> Klick

Appcelerator Titanium - hat jemand schon Erfahrungen damit...?

OldCaligula

deaktivierter Benutzer
Registriert
05.04.10
Beiträge
13.859
Salve!

Ich bin auf das "neue" Appcelerator Titanium Studio / SDK aufmerksam gemacht worden und ziehe mir gerade eben diese IDE herunter:
http://www.appcelerator.com/platform

Bin aber auch erst gerade am Einlesen ob ich da überhaupt was machen soll in der Richtung. Zur Zeit entwickle ich klassisch - sprich iOS mit XCODE, Android Apps unter Eclipse und Phone 7 Apps mit Visual Studio.... ich habe noch keine genaue Definition für mich, was ich mit dem Titanium alles machen kann und welche Vorteile sich ergeben.

Mir wurde auch dieses eBook vorgeschlagen:
http://itunes.apple.com/de/book/entwicklung-mit-titanium-mobile/id511876249?mt=11

Nein - ich arbeite weder bei Appcelerator noch bin ich der Author des Buches. Mich interessiert nur, hat jemand mit der IDE, dem System schon erste Erfahrungen machen können? Setzt jemand die IDE ein? Und wenn ja wo? Welche Vorteile können mich erwarten? Ist da eine "Zukunft" drinn? Kennt jemand das Buch? Leseprobe habe ich mir mal auf iBooks schicken lassen...
 
So, die IDE ist installiert.

1. Beim Start muss man sich einloggen mit seinem vorher angelegtem Usernamen und Passwort. Während der Entwicklung ist man "online"...? Loggen "die" was ich da programmiere?

2. Ist ja gar keine "eigene" IDE.... wieder nur so eine IDE, welche auf Eclipse aufbaut. Oder auf Aptana, das auf Eclipse aufbaut? Ich habe Aptana Elemente in der Titanium IDE... aha.
 
1. Beim Start muss man sich einloggen mit seinem vorher angelegtem Usernamen und Passwort. Während der Entwicklung ist man "online"...? Loggen "die" was ich da programmiere?






Ja, die IDE ist auf Aptana aufgebaut und Aptana wiederum auf Eclipse. Die haben Aptana irgendwann mal geschluckt.




Ich habe mir Titanium an einigen Wochenenden etwas intensiver angeschaut und versucht einfache Apps testweise zu entwickeln. Habe auch das Buch "Appcelerator Titanium Smartphone App Development Cookbook" von Boydlee Pollentine gelesen. Ich entwickle sonst nativ in Objective C und bin auch sehr fit was Webanwendungen angeht, es lag also nahe das JavaScript Know-How auch für die App-Entwicklung zu nutzen. Ich war am Anfang schon begeistert von der Idee einmal was zu programmieren und dann für mehrere Plattformen auszuliefern, ganz so leicht wie der Hersteller das verspricht ist es leider nicht.


Ich habe zunächst eine einfache Anwendung gebaut, die JSON-Daten von einem Server lädt und in einer Tabelle anzeigt. Dann kann man wie man das von tausend apps kennt die Detailansicht von dem Datensatz anzeigen usw, trivial also. Habe das ganze zuerst für das iPhone gebaut, hat recht gut geklappt. Dann auf dem Android-Simulator gestartet, weißer Bildschirm. Ewig nach der Ursache gesucht, Workarounds für Android eingebaut, ist dann gelaufen aber Darstellungsfehler....usw. Und so war das an allen Ecken, macht einfach keinen Spaß. Die Fehlersuche um das ganze auf dem Android zum laufen zu bekommen hat länger gedauert als die eigentliche Entwicklung. Ist schon ziemlich frustrierend. Ist jetzt paar Monate her, vielleicht hat sich ja was verbessert. Wird mit der Zeit bestimmt besser, wenn man die Stolperfallen kennt.


Ich finde mit solchen Frameworks gibt es ein grundsätzliches Problem. Die Macher müssen den kleinsten gemeinsamen Nenner finden und das ist selten die optimale Lösung. Z.B. unter iOS gibt es Core Data, man kann super leicht damit sich sein Datenmodell zusammenklicken und mit wenig Aufwand die Daten lokal auf dem Gerät in der Datenbank speichern. Wenn man sich noch mehr Arbeit sparen will, nimmt man das fantastische RestKit, dann ist auch das Mapping von JSON/XML nach CoreData in wenigen Zeilen code erledigt. Für Android gibt es auch schöne ORM libs. Setzt man aber auf Titanium muss man alles so richtig low level in sqlite speichern. Klar, ist nicht tragisch, dauert aber länger und es schleichen sich mehr Bugs ein. Die Zeitersparnis, die man angeblich hat schmilz nach und nach dahin.


Zweitens, Cocoa Touch ist fantastisch! Es war für mich einfach so schwer von einem super designten und ausgereiften Framework auf so etwas wie Titanium umzusteigen. Ist definitiv noch nicht reif. Z.B. es gibt natürlich APIs um die gängigen UI-Elemente wie Buttons, Tabellen, Tabs usw. zu erzeugen aber es gibt KEIN in das Framework eingebautes MVC! Man muss also selbst irgendwas zurecht basteln oder auf irgendwelche fremde Lösungen zurückgreifen, die auch nicht sonderlich ausgereift sind. Allein wenn man sich das von mir oben erwähnte Buch anschaut, es besteht praktisch nur aus Code-Snippets. Ich weiß nicht, wie sich jemand, der noch nicht so fit ist mit Design Patterns irgendwas hochwertiges damit bauen soll. So etwas ist für mich schon ein extrem gravierender Mangel. Ist natürlich auch ein lösbares Problem, aber kostet aber auch wieder Zeit.


Und drittens verschiedene Plattformen haben verschiedene Usability Guidelines. Ich habe ein Galaxy S2 und ein iPhone und manche Android Apps verhalten sich wie iPhone Apps, das nervt. Das Zeigt, dass die Macher sich nicht mit der Plattform befasst haben. Und es wird der Usability sicherlich nicht besonders gut tun, wenn man gleichzeitig für mehrere Plattformen zu entwickeln versucht.


Das alles ist meine persönliche Meinung. Ich rate keinem davon ab diese Software auch mal zu testen. Ich persönlich würde es aber nicht freiwillig einsetzen. Selbst als ich damals von Null mit Objectiv C angefangen habe, habe ich nicht so viele frustrierende Stolpersteine gefunden wie bei Titanium und das trotz den 10 Jahren JavaScript-Erfahrung auf dem Buckel. Kann man damit für mehrere Plattformen gleichzeitig entwickeln, Ja. Ist man dann viel schneller am Ziel? Da bin ich mir nicht so sicher. Sind die Apps dann genau so gut? Wahrscheinlich nicht.


Sucht doch einfach bei Google nach anderen Erfahrungsberichten, man findet leider schnell einige negative.
 
Wow... das schreit nach einem dicken Karma Lob... Danke für Deine mühevolle Zusammenfassung, die mir sehr viel gebracht hat. Ich war skeptisch - gerade wegen den von Dir angesprochenen Punkten - das hat sich nun bestätigt. Klar werde ich die IDE / das SDK noch bisschen ausprobieren - aber dann doch etwas verhaltener, wenn ich bisschen Leerlauf habe....

Danke. Hat mir extrem geholfen!