Downsides of using Appcelerator Titanium (or equivalent)?

前端 未结 4 930
攒了一身酷
攒了一身酷 2021-02-10 08:46

At our company there is a huge push for cross-platform (iOS and Android) development. Appcelerator Titanium is being considered (and seems to be the only thing that\'s being con

4条回答
  •  醉话见心
    2021-02-10 09:21

    Titanium/iOS specific answer, my 2c.

    Native iOS vs Titanium

    PROS

    • It's nearly as fast as native for most things.
    • The time needed to write a working prototype it's way shorter.
    • If you need to integrate javascript legacy code or libraries it will work provided that it doesn't use the dom.
    • Your javascript code needs to be well spaced and to include semicolumns where needed or the compiler will complain and eventually abort the build.
    • You can use Coffeescript or any other language that compiles to js
    • Automatic memory management is top notch, getting the same results in objc is always time consuming and sometimes debugging intensive.
    • You can write your own modules in native code to extend Titanium's capabilities.
    • It's open source.
    • They recently changed their support offering removing the 5 app limit, much more affordable.
    • You can change a view js code while running the app in the simulator, you will see the results when you reload the view you're editing. That's a boon :) (exception: there's no way I know of to reload the code in app.js)

    CONS

    • Debugging is a pain. Haven't tried out Titanium Studio yet, it might be a big improvement.
    • Adding too many views tends to degrade performance faster than using native code.
    • The Titanium Developer app on Mac has plenty of interface glitches and you might find yourself restarting it pretty often.
    • In some versions the print to console debug statements are broken.
    • You will often stumble into cross-platform abstraction leakage.
    • Support on the forums is a bit light, many issues you will encounter are not big but still annoying.
    • Need to pay attention to JSON correctness, the included parser tends to be picky. Using eval is always an option.
    • Compile times and loading in the simulator are not that fast, titanium objc is pretty big.

提交回复
热议问题