I agree with half the answer above. You must use the REST architecture - this is the easiest way. I use Ruby on Rails for my mobile projects. Quickly start building server code and see how it works somewhere like heroku.com almost instantly.
So, I would choose the following:
- ruby on rails - worth the time.
- heroku.com for deployment / or EC2 if you selected Stone Rubber
- Google App Engine is another great option if you know some kind of python / java
- REST Architecture
- save all your heavy images etc. using Amazon S3. They have great SDKs to work with.
- get some JSON libraries to communicate with your server.
on iOS:
- use MKNetwokKit (this will save you a lot of trouble along the way, this will help you cache and have a nice architecture).
- If the application is small, try using an NSArchiver-based data model instead of CoreData (SLOWWW). Mogenerator - a good start (this is not server related ..)
If you hate writing backend, I would advise you to check out Parse.com. Completely mobile development using all server code. For large projects, you really need to write your own server.
Some additional things I would think:
- How will the security service work? just a session token in the HTTP header?
- your application level - network / MVC
- What happens when you are offline? - this is currently what we are dealing with without thinking early - pain.
source share