3 ms·
Learning PhoneGap versus iOS development with Objective C
I've wanted to learn mobile app development for a long time. There is a specific project I had in mind and I was wondering what tools I should use. PhoneGap seems interesting, it'd allow me to make an iPhone app while harnessing my HTML/js skills.
Are there significant limitations to iPhone app deve in PhoneGap? Would it be more useful to learn iOS dev with objective c?
- st3fan 15y agoIt very much depends on your project. Give more details and you will get a much better answer.
- capkutay 15y agoSure: I wanted to make an application that has some GIS capabilities. It should be able to get a user's current location, create waypoints on a map (say for nearest burrito restaurant locations), then return a list of the waypoints ranked by distance from the user.
- coryl 15y agoSounds like you'll need Objective C!
- gte910h 15y agoThis can be done in phonegap and objective-c The map is one of the hairier object models in the CocoaTouch SDK. http://docs.phonegap.com/en/1.2.0/phonegap_geolocation_geolocation.md.html#Geolocation http://docs.phonegap.com/en/1.2.0/phonegap_geolocation_geolo...
- pdenya 15y agoPhonegap is a framework and can be extended fairly easily to patch in missing functionality. The real limitation is the speed. Everything is slower including loading, screen transitions, responses from button presses, etc. If you're making something very simple that won't suffer from being a slower then Phonegap is a great option. If you need performance you should learn Objective C.
- glimcat 15y agoPhonegap optimizes for development time. Where that's a limiting factor, it's a good option to consider.
- kls 15y agoI am generally not a fan of common run-times for clients, it took the JDK years to iron out the bugs and they are still not competitive on the client side. Generalization is the antithesis to customization, which is what you want when we are talking about usability. A better solution is to implement as much logic as you can get away with behind REST services, and then make each platform a client to the services. This makes implementing new clients less burdensome, as it just becomes a different customized, for the platform, workflow to the overall system.