Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

.Net guy needs some info on Cocoa

I want to do a little development in OSX and the iPhone. I've been a .Net/C# developer for years. I was wondering if there was anybody that had experience in both platforms that could tell me how they compare and contrast. I'd like to get an idea of what sort of learning curve I've got ahead of me.

Thanks,

Geoff

like image 240
TheGeoff Avatar asked Nov 16 '08 02:11

TheGeoff


2 Answers

First the bad:
I have done some Cocoa development in XCode. The first thing you will notice is that the IDE (XCode) isn't anywhere as intuitive, or nice in general, as Visual Studio. I really miss intellisense when working in XCode. The Apple developers will probably down-vote me for that statement. But coming from a .Net environment, that is what I really miss. So don't set your expectations too high and you won't be too disappointed. I am not trying to run XCode down, it just isn't as nice as Visual Studio.

Now the good:
The general architecture of a Cocoa project is very nice. I do wish .Net Winforms and WPF used MVC out of the box like Cocoa projects do. As long as you follow the MVC pattern you should do OK with your project. Everything I have done is in Objective C. You might pick up a book on that. I purchased Cocoa Programming for Mac OS X and thought it was pretty good. If you have any C in your background, it will look very familiar. From a C# prospective, the dot notation for classes is replaced with a message-sending notation similar to Tcl.

Get iTunes loaded on your machine and download the iPhone dev videos under iTunes U. You will also need to sign-up for the developer program at Apple and download the extra bits for XCode for the iPhone.

Hope that helps. I am by no means a pro Cocoa developer.

like image 113
Jason Jackson Avatar answered Sep 23 '22 07:09

Jason Jackson


I've been developing professionally with C# and .NET since beta 1. The XCode IDE is a completely different animal than Visual Studio. Initially you will feel very confused and lost. I'm still not totally satisifed with the UI (dear god give me a Solution Manager window and kill this split screen crap), however in no time you'll be just as productive and fast as in Studio. Documentation is comparable although i prefer the layout in MSDN.

As for Cocoa its generally easier to work with as a GUI toolkit than .NET. As stated above its a different mindset, however once you wrap your head around it you'll dig it.

While its not iPhone related, there are MANY similarities between Mac and iPhone development. You'd be doing yourself a favor to pickup the latest version of the Aaron Hillegass OSX book. Its pretty much the de-facto guide for writing any Cocoa software.

In summary... your going to be VERY lost and confused initially, but tough it out its worth it.

like image 23
Lounges Avatar answered Sep 21 '22 07:09

Lounges