y now, you should already know that Apple has lifted the non-disclosure agreement (NDA) that bound developers to confidentiality regarding their work with the iPhone SDK. Developers are now free to discuss the SDK and share their experiences with fellow developers. As a mobile developer focusing on Windows Mobile and more lately the Android platform, the iPhone is definitely one of the most important platforms on which I am focusing.
Unlike the Windows Mobile and the Android platforms, which use object-oriented languages (VB.NET and C# for Windows Mobile and Java for Android) very similar in syntax, the iPhone SDK requires the Objective-C language, which is an extension to the C language with Smalltalk-style messaging added. While Objective-C is object-oriented, its syntax is far from being similar to languages like Java and C#. This poses a huge learning barrier, especially for developers new to the Mac OS X platform.
If you are coming from another platform (which I am), a lot of concepts used in iPhone development may be new and can be totally frustrating (trust me, I have been through this) for a beginner. The best way to learn iPhone programming is to get your hands dirty and start coding. Hence, this new series on iPhone programming is meant to guide you as you enter this brand new world of iPhone application programming! For this inaugural article, you'll learn how to use the SDK, create a simple iPhone application, and deploy it to the simulator includedall without needing to understand much of the underlying framework that makes all the magic happen. Subsequent articles will then delve into the framework in more detail.
Alright, fasten your seatbelts and let the fun begin!
What You Need for iPhone Development
To get started with iPhone programming, you'll need the following:
- An Intel Mac running Mac OS X Leopard v10.5.4
- The iPhone SDK for iPhone OS 2.1, which you can download here. The iPhone SDK contains all the tools and utilities you need to develop iPhone applications. In particular, it comes with Xcode 3.1(the development IDE) and the iPhone Simulator that allows you to test your application without needing a real device.
- Lots of patience and perseverance!