.net – Best resource to learn application programming? (.Net/Cocoa/etc)

cocoacoding-stylenet

I'm an embedded programmer – primarily very small systems where I deal with data as bits, not objects.

I'd like to learn how to program for Mac and PC using their native libraries (Cocoa and .Net). I've hacked a few things together in Xcode and Visual Studio, but I feel like I'm hacking, not programming. I put things in AwakeFromNib without knowing if that is inviting a bug or bad style or just fine. There are fundamental concepts of programming for desktop applications that I need to learn, I think.

Can you recommend resources or books on the subject? I'm especially interested in how to write good code for this scale of program – collections of best practices, coding standards, etc.

Edit: There are lots of resources available on good code in general. Those are definitely must-reads, but I am looking here for resources that are specific to writing desktop applications. Resources that would say, for instance, what typically belongs in AwakeFromNib, not just when this callback is triggered.

Best Answer

A good book on design patterns will take you a long way in getting a feel for how to work with some of the built in structures in cocoa, like awakwFromNib, windowDidLoad, etc.

Here's one recommendation:

http://www.amazon.com/dp/0201633612/

After you've read a couple of chapters in that book, you might want to pick up a good book that goes specifically into the framework and development environment you want to start learning about.