tags:

views:

267

answers:

4

Hey, i am done with .NET and web dev. and want to start writing applications for iPhone.

Where do i need to start like - any SDK or something i need to get - what language\s need to learn - i use windows, will i have to switch to mac for iPhone development - is there any iPhone device simulator or will i have to buy iPhone as well

+7  A: 

In summary:

  • You can download the SDK from Apple for free
  • You will need to learn some Objective-C, even if you plan to develop with C or C++
  • You can run OSX in a virtual machine with a bit of effort - but a Mac is recommended
  • There is a simulator but:

    • It's capabilites and performance are different to that of a real device so you will benefit from having at least one iPhone/iPod touch to test for real.

    • In addition to this, performance and capabilities vary between different models so it can be helpful to have a range of devices.

  • You will need to enroll with an Apple iPhone development program if you intend to test your apps on an actual device and/or release any of your apps to the App Store ($99)
teabot
You also need to enroll ($99) to test your apps on the iPhone or iPod touch. Testing on the simulator needs no enrollment.
rein
Not necessarily, look at my answer.
Mk12
A: 

Visit Apple's iPhone site for more information, including

a. How to become a licensed developer
b. How to use XCode, the simulator, etc.
c. Lots and lots of documentation about the iPhone SDKs

Amagrammer
A: 

The programming for IPhone is done in Objective-C, using the Cocoa Platform. Where I work, we have one or two people exploring IPhone dev for a project - they program on IMacs (I think any Mac will do) using XCode, which comes with OSX.

You have to buy a developer license ($99) from Apple only if you want to publish your programs to the App Store. Otherwise you can just join the developer program (free registration, I think) and download the SDK, which has all the tools you'll need (if you're on a mac). For real-world testing, you can substitute an IPod touch for the IPhone, unless you're using GPS.

Dave M
+1  A: 

If you don't want to buy the 99$ program, but still want to make your own apps and put them on your own iPhone/iPod Touch, you can jailbreak your iPhone to do it. This link shows you how to do that once you've jailbroken your iPhone, which you can figure out how to do here. You could just makes apps for yourself that way, or distribute them for free or for money on Cydia. You don't need a really good mac for development, just get a MacBook or a Mac Mini.

Note: Jailbreaking is not illegal, you can do what you want with your iPhone, its yours (as long as you don't pirate illegal cracked apps).

Mk12
Jailbreaking is not an officially supported development method.
Jasarien
I never said it was official.. Thats no reason not to do it. Apple puts way too many limitations on the iPhone because they assume everyone is a typical user who doesn't know anything, and they don't want them messing things up. People who actually know what they're doing jailbreak to get the most out of the product. They also don't care about their developers -- they need apple, but apple doesn't need them (as individuals). And even if you do plan to distribute on the App Store, you can use this method before you buy the program so that you don't waste paid days.
Mk12