6 ms·
You guys should just switch to JavaScript and use Titanium. Same end result and shared codebase. You can use the Titanium Studio IDE, but it's completely option
by vlucas 12y ago
You guys should just switch to JavaScript and use Titanium. Same end result and shared codebase. You can use the Titanium Studio IDE, but it's completely optional. I personally use it with vim and the command line, and it works beautifully. There are some minor issues like certain native APIs not being supported in Titanium (more of a problem on Android), but nothing like the problems listed here.
- evincarofautumn 12y agoPart of the reason to use Xamarin is in order to take advantage of C# and F#. Using JavaScript throws away or inhibits a lot of useful stuff like static type checking, automatic completion and refactoring, and code browsing. Besides, they’re invested now; switching to another language may be too costly at this point.
- an0nymousse 12y agoTypeScript?
- eropple 12y agoOver time I've become convinced that the two really viable options are dynamic typing or really good static typing; TypeScript occupies a middling and very rudimentary spot compared to F# (or Scala, which I have more personal experience with; ScalaJS is interesting but I have some pretty huge reservations about that).
- skrebbel 12y agoTypeScript's types are way less powerful and expressive than F#'s. The comparison really doesn't fly. It's even less powerful than C#'s, and it doesn't even come close to adequately supporting a whole range of JavaScript patterns (such as generating "classes" - constructor functions - at runtime). My experience has become that TypeScript is really only suitable for classic OO domain programming, with many nice little classes and mutable state. I work on a project where our model layer (MVC) is made like that, and it works like a charm. Interfacing with other libraries tends to work ok, but you'll have to forget about using --noImplicitAny (and hand in a whole bunch of safety guarantees with that). Doing non-classical-OO stuff quickly becomes a pain. I recently spent many days making a nice Om-style immutable model layer with TypeScript and Immutable.js, and it just doesn't work. The generics simply aren't powerful enough, and I spent days (and many worthless lines of code) fighting it. This saddens me.
- deleted 12y ago[deleted]
- pan69 12y agoI tried Titanium. Its horribly slow. You can't really build native UI's unless you mimic them. Using Javascript is super simple but you trade off in power, big time. General rule of thumb; if you're building "content" apps you can get away with Titanium. If you're trying to build awesome experiences you'd have to go native and Xamarin is currently the best cross-platform suite out there.
- mercurial 12y agoWhat's your take on Phonegap?
- pan69 12y agoI haven't really used it but I guess I would classify it the same as Titanium. If you're building content apps then it might be really good. I guess it all depends on what you're trying to achieve.
- anirudhrata 12y agoAlso can you tell anything about Kivy?
- vlucas 12y agoI have built multiple apps in Titanium, and I have never experienced anything even remotely "horribly slow". The performance penalty is very, very small - undetectable to the average user. I am not sure the apps you were building, but, you do have to use common sense: you can't expect to build a highly interactive game with lots of complex calculations and animations in a dynamic language without a noticeable performance penalty. For 90%+ of the apps out there though, there is no reason not to use something like Titanium if cross-platform is your priority.
- davidfischer 12y agoTitanium isn't horribly slow, but it isn't some cross-platform panacea either. Building an app that supports iOS and Android well is still a big task. You don't just build one app and get the second platform for free. Lots of the APIs, methods and properties are platform specific or function quite differently platform to platform. Most of this is documented but some of it isn't. I don't want to be overly critical of Titanium as I think it has its place but I think your post was a bit optimistic. BTW, the OP's original rant reminds me of a similar rant for Titanium: http://usingimho.wordpress.com/2011/06/14/why-you-should-stay-away-from-appcelerators-titanium/ http://usingimho.wordpress.com/2011/06/14/why-you-should-sta... That rant is a few years old and Titanium has made a lot of progress since then. However, some of the points still hold true.