Let’s face it, developing applications for the iPhone isn’t exactly a walk in the park. Objective-c has a much steeper learning curve than say, C# or Java. And learning how to use Xcode and Interface Builder can be quite an exercise if you’re more used to an IDE like Visual Studio or Eclipse.
The iPhone Developer Center is a decent resource for budding iPhone developers, but I’ve found that many of the sample applications are far too trivial to be good examples for best practices when it comes to developing on the iPhone. Heck, some of Apple’s example applications are downright contradictory to each other in terms of how they implement the MVC pattern.
This may not be true for other programmers, but at least for me, one of the best ways for me to learn a new language is not to run through a bunch of tutorials or to read a book on the language, but to just start reading through some well written source code. If you’re already fairly well versed in another programming language, chances are the language you’re trying to learn won’t be that different, and you’ll be able to figure things out pretty quickly just by looking at some source code.
So, the question of the day then becomes, where might you find some good iPhone source code to look at? Following is a list of open source iPhone applications that can serve as good examples for a new developer trying to learn the ropes of objective-c and iPhone development.
- WordPress – a WordPress client on your iPhone that lets you write posts, upload photos, and edit your WordPress blog
- Freshbooks – an excellent companion to the already fabulous Freshbooks site – an application that’s great for freelancers to do time tracking and billing
- wikiHow – brings wikiHow’s content directly to your iPhone.
- Twitterfon – a Twitter client
- Gorillas – the classic game from the good ‘ole DOS days
- Tris – a Tetris clone