tags:

views:

1012

answers:

10

I'm a C# development. Mainly web services, ASP.NET, ADO.NET.

A guy wants to me to work build an iPhone app for him, from scratch.

What do I need to know/do to get setup to start developing? I hear objective C is the language?

+5  A: 

you need to buy a mac first :)

Ali Shafai
lol, I shouldn't upvote this.
GONeale
this is the first step I had to take. haven't had a chance to go to step two. too much silverlight to move to [cowboy smalltalk] ;)
Ali Shafai
or create a hackint0sh for yourself with your PC see http://wiki.osx86project.org/wiki/index.phpbut this is not even close to owning a mac ;)
AB Kolan
I have to admit, I love my MAC, it's the best **PC** I'd ever had...
Ali Shafai
+1  A: 

Take a look at iUi on google code. Its a set of css and javascript that gives you the look of an iPhone app which you can use in .net. Test in Safari and you have a similar setup as the iPhone itself.

Actually this wont let you make an iPhone app; instead it will allow you to make a web application.

Pat
A: 

also take a look at this

Ali Shafai
+1  A: 

With an account at developer.apple.com, you can apparently download an IDE. You need a mac to run those tools. The tools probably have an iphone emulator. So, all you need is

  1. A mac
  2. An account with apple developer.

I have the account, not the mac. Very curious to here if someone has found tools / emulation for PC / *nix.

Precipitous
It would be illegal if I told you google "OSX86", so I'm not gonna tell...
Ali Shafai
XCode come with every Mac and is great for doing iPhone development. the newest version (downloadable for free) includes an iPhone emulator and project templates for iPhone apps. Makes the learning curve a little less steep.
Eric
A: 

Here is an interesting talk about a java to objective-c compiler for the iPhone.

There is a demo-applet of their iPhone-simulator on that page. The xmlvm can also compile C# to objective-c, but as far a I know the simulator only has java versions of the UI elements (this may have changed since I saw the talk). Also this toolchain is in early development and I do not know if it works well with the official iPhone SDK (and its license agreement) so this should be checked.

Anyway, I think it could at least be used for learning/demoing.

FeatureCreep
A: 

I would probably either borrow or buy a copy of Cocoa Programming for Mac OS X by Aaron Hillegass. It is arguably the best book out there for learning how to write Cocoa code from scratch.

After that, I would do a couple of minor sample apps on the Mac. Then naturally, you will need an iPhone developer account to get the sample code from Apple. Coding for the Mac and Coding for the iPhone aren't that different, the knowledge is totally transferable.

To push code to the device, you will need to pay the $99 and get accepted into the developer program. But you don't need that to get started, the free account will get you into the developer area and allow you to download the SDK that comes with XCode and the iPhone Simulator. The getting started videos and documents will make sense once you have thumbed through the book.

It isn't all that different than C#, except no garbage collection, it uses reference counting like the Mac, and the use of the "[ ]" tokens everywhere takes a little getting used to.

Heat Miser
A: 

If you're a web services guy, you may suffer more from the culture shock due to the differences in APIs than the C#/Objective-C differences. What did you do before the .NET stuff?

I'm doing iPhone. I use Objective-C. I like it in theory, but in practice I find it very hard to read and debug compared to other C derivatives. But the iPhone is appealing enough to work on even with Objective-C as the native language.

Nosredna
dude I love Arcade Volleybal!
zvolkov
Haha! There's my past coming back to haunt me again. Thanks. Maybe I should do Arcade Volleyball for iPhone!
Nosredna
A: 

I was in the same boat several months ago. In my case I read through the Hillegass book as Miser stated. The approach I took was to wrap my head around ObjectiveC first. Instead of starting with an iPhone app I started with a Mac App. I bascially took an application I had written in C# for work and rewrote it from scratch in ObjectiveC. This was a great exercise and something I would recommend to anyone.

Along the way I hit the Apple Developer site and spent a lot of time going through sample code.

The other kicker for me was making the transition from Visual Studio to XCode. This is something else you want to consider, especially when deailing with Interface Builder.

OhioDude
A: 

You might find this helpful

http://www.componentone.com/SuperProducts/StudioiPhone/

Keith