mobile development
Out of context: Reply #11
- Started
- Last post
- 18 Responses
- Boz0
well with Appcelerator you have some issues accessing certain APIs.. i mean some will work but some won't.. also.. only with Obj-C and Apple's SDK you will be able to use all native controls.. Appcelerator stuff is actually made.. it looks like native control but it's made.. I mean nothing wrong with it, it works but it's not native native..
Appcelerator is not such a visual tool.. you are right.. they just bought Aptana editor which is basically Eclipse..
The good thing about this is that your Android/Java development with Eclipse with ADT plugin or Aptana/Appcelerator or Flash Builder/Flex Hero you are basically working with Eclipse and that's good cause jumping from one dev tool to another is going to be super easy.
The only real rich visual tool would be Flash CS 5.5 with combination of Flesh Builder 4.5 as code editor or XCode with Interface Builder.
I have to say that Xcode and Interface Builder are truly fantastic to build stuff in.. it's so beautiful once you get a hang of it... and it's MVC architecture in every sense of the word. The downside is awful and scary objective-c which is very very difficult to get into if you never coded anything on OSX and never worked with C or C++.
If you want to go down that road let me know and i"ll post a few useful links for you and what books to get to get you started.
Here's the problem with AIR/Flash.. while it will be truly great, it's still not fully ready.. why? Because you have to write everything yourself.. while it's great to build some simple games and some totally creative applications, if you want to build native looking apps and controls for Android or iOS or Blackberry you have to do it manually.. from that side it's not ideal at all..If you need a fully custom UI now that's where those flaws are not so much a problem.
Now.. Flex Hero (4.5) should bring some templates and skins and stuff you can play with but native looking UI elements are definitely something that doesn't exist in AIR.. that's a big lack for now.
I'm actually building in free time the same thing as Appcelerator does.. I'm building controls and UI elements as components for Flash CS5.5 so people can just drag and drop all kinds of native controls for iOS.. once I do that I'll make the Android ones and then Blackberry.. but this will take time as with AIR I do have to make sure everything where applicable i have to use OpenGL acceleration for UI so it doesn't get bogged down.
The good thing with AIR is that in the 2.6 we will see a lot of native APIs for devices implemented (web view, camera, sqllite, microphone access, accelerometer, GPS, contacts and stuff like that)..
The problem with Objective-C is that you are really nailing yourself to iOS as it is exclusive to that platform. That's really never a good thing from business perspective. So for now, the most mature tool would be Appcelerator for you to play with.
Corona for example, was riding the train of allowing experienced Actionscript coders to switch to Corona and code in LUA for iPhone and iPad and Android.. Corona is solid but to be honest with you LUA is not that important and you'd be better of working with something that's wide spread like Javascript if you are going to use a framework like that and not LUA.
Unity 3D is not really good for apps.. it's ok for games and only games.. I've been constantly impressed with Unity.. their editor is just awesome and you can write whatever you want and make it do whatever.. it's really creative and visually appealing to develop in but I never saw people make applications in it. Always games.
Appcelerator cannot do games.. its' purely app framework (I mean it can but is dog slow). Consider it a website that acts fully as a native app and you compile it into .ipa file.
You have to make a decision.. if you are going to make apps you should start with the widest and most mature tool out there for making cross-platform mobile apps.. that's Appcelerator hands down at the moment. Corona is ok for games, so keep that in mind, I've seen some games done with it.. not bad. Not mind blowing but not bad.
Adobe AIR will come.. it's growing, it's a mammoth, it will have massive following and it will work everywhere but there's still stuff to be done..so you can wait on that..you could read up on it and see how stuff is progressing so you are in the loop.. The best part in what Adobe is doing is their Open Screen Project and the fact that Blackberry will be using AS3 to write apps with their SDK, the AIR will work on TVs, on Google TV, on iOS, on Android .. there's some good stuff going on ..but it's still raw.
If you primary concern is to be marketable you will learn Obj-C.. iOS is the hottest thing for many businesses and you could make money there by finding a job or doing projects with it.. if you are going for making apps and games to make money and as your startup, I would say Java is not bad start because Android market is ACHING for good stuff.. so there's a lot more exposure and profit potential especially now when Honeycomb comes out and those gajillion tablets come out. That market will quickly get saturated.
I know it's a tough decision..but it really boils down to whether or not you want to do it with complete freedom and control on every platfom or you want to make multiplatform apps and are willing to make some compromises.. if not, then Objective-C, Java is the way to go.. spiced with HTML5 you will go fully native on both platforms.
- OK, great....confirms what I was thinking with Appcelerator as well as Flash stuff********
- OK, great....confirms what I was thinking with Appcelerator as well as Flash stuff