I'm currently working in the Multimedia industry and although I'm better at design then development. I have knowledge of HTML, CSS, very basic jQuery, Actionscript.

What programming Languages would you need to know?

What else would you need to know to develop an application?

I am assuming you would need to know xcode and Objective-C?


Objective-C is the language of choice to develop for iOS. But you can also include plain C or C++ Code in there, so you could write large portions of your code in these languages. XCode and MacOS-X provide you with all tools needed to develop such Apps. There's (currently) no easy way to develop iOS Apps on Windows, except maybe a Virtual-Machine or trying to install OS-X on your PC.

Alternatively you can also create iOS Games/Apps using Unity3D, UDK or Flash.

As soon as you want to test your App on an actual device or sell it in the AppStore you'll also require an Apple Developer Membership.

Update: You asked about Angry Birds and there's actually a nice tutorial out there on how to create such a game using the excellent cocos2d framework.

  • \$\begingroup\$ There actually is one way I know of to develop for iOS under windows, which is the C++ based Airplay SDK. It does not use the standard SDK, but it provides ways to interact with everything you'd have access to with the iOS SDK. That said, you still need a Mac for the final upload to the app store. \$\endgroup\$ – beezir Feb 16 '11 at 4:24
  • \$\begingroup\$ I have used Unity in Windows for development and basic testing then copied the project over to a Mac for device testing and actual deployment. It was a little annoying sometimes but it worked. \$\endgroup\$ – chaosTechnician Oct 28 '11 at 16:46
  • \$\begingroup\$ Today you can develop games for iOS using libgdx \$\endgroup\$ – EdgarT Apr 29 '14 at 2:03

Angry Birds is written in C/C++ and use its own 3d engine. For the physics part, rovio use Box2D. For the iphone version, they use ObjC to initialize the application and create the OpenGL ES context; otherwise it is C/C++.

If you want to develop your own game, it is easier to use Unity3d. If you need OpenSource library, use cocos2d.

Ps: You can find interesting symbols in .so of the android version.


You say application? I'm going to asume you mean just games rather than any old application.

For games in general (excluding iOS for the time being) C++ has been the staple for a long time in the games industry, and as such there are many many tools available for it, physics, graphics etc. C# is looking good atm, and the XNA platform is easy to use, You can also use C# with Unity3D if you are looking for a pre-built solution.

I'm not sure how many games on the iOS use Obj-C, I wouldn't be surprised if alot of them are C++, All the ones I know for certain are in C++ or Unity and I dont know anybody who's made a Obj-C game for the iOS (Which is more todo with the circles I'm in than anything else). The game I've been working on for iOS is all C++.

Obj-C and C++ talk to each other quite happily the xcode compiler is smart enough to know what is what.

In short:

Xcode is almost a must. The only exception I can think off at the top of my head is if you use Unity, or Corona (which you might want to look into, I've heard flash devs talk nicely about it)

Obj-C You will need to know a little at the very least (this can just be cut and pasting)

C++ Has a big following, however you will need a little Obj-C to get your game working even if you use C++.

  • \$\begingroup\$ I think a lot of games that are using cocos2d for iPhone are actually written in Obj-C, since the framework is also written in Objective-C. \$\endgroup\$ – bummzack Feb 14 '11 at 17:41

Corona SDK is a great tool for developing 2D games like Angry Birds or Cut the Rope. cocos2D is a very awesome tool but programming in Lua is way more productive than programming in ObjC. It's a lot like using ActionScript.

They even did a sample specifically to demonstrate developing an Angry Birds clone in Corona: http://blog.anscamobile.com/2010/12/ghosts-vs-monsters-open-source-game-in-corona-sdk/


Not the answer you're looking for? Browse other questions tagged or ask your own question.