0

I want to start developing for iPhone. I don't have mac. After reading this question which talks about android , I was wondering :

Is there any site which gives :

  • What you need to download ( for PC users)

  • How to configure it

  • sample code for beginners

There is a lot of info but I didn't find any centralized place for beginners.

Thank you.

Community
  • 1
  • 1
Royi Namir
  • 144,742
  • 138
  • 468
  • 792

5 Answers5

2

For iPhone, you will always need a Mac if you're thinking about doing Native Apps. (Apple make it clear in all Keynotes: Apple Software + Apple Hardware)

Every Android developer here knows it's a pain to test their app in all Android Devices out there cause no one has the same Operating System, they always have a changed version for each mobile company, Apple makes it clear that you need to use their, and only their equipment

Even if you're doing an HTML App and wrap it up with a wrapper framework like PhoneGap, you will need a Mac to compile the code and give you the packages to upload into AppStore.

There is other Frameworks like Titanium witch they will support Windows machines, but I don't recall how they compile the code to the AppStore, probably the same way as PhoneGap, and for that you will need a mac.

PhoneGap and Titanium, as well Sencha Touch, are Frameworks that you can use a language that you know best (HTML and Javascript) - Only Javascript in Titanium and Sencha, and outputs the code in a way that is very similiar to a Native App, and can be easily port to any other OS like Android, Windows Phone 7, Meebo, etc. Just read a little about each one.

Sencha and Titanium are paid frameworks, while PhoneGap is free.

Best approach if going Native on this is buying a used MacMini from eBay or similiar, or even run a Hackintosh (OSX for Windows Machines) in a VM... end to end, you will always need a Mac.


And there is MonoTouch as well, now from Xamarin and the amazing team of Miguel de Icaza.

Even though, you do need the Mac to convert .NET code into "Objective-C" (for the ones that know the compiling process, it's machine code, but for the OP, it's simpler to assume this).

You can use Visual Studio in a Windows machine to program, but you will never compile or even run or debug... you will always need MonoDevelop (The Visual Studio of Mono) and a free MonoTouch license to run and debug in the Mac iPhone Simulator, but you will need a paid license for going to the AppStore.

just for clarification, you can develop everything for Android using Mono for Android, as the Framework where Android runs exists for both Operating Systems (Java), and for this, you will have the ability to use Visual Studio to code, compile and run in the Android Simulator.

As said in the beginning ... you will be best with a used Mac :)

balexandre
  • 73,608
  • 45
  • 233
  • 342
  • It's the one I use as I'm a .NET developer, but **you need a Mac as well** to compile the packages. Only **[Mono Droid](http://xamarin.com/monoforandroid) (now Mono for Android)** you can compile in Windows and Mac as the Java framework exists in both Operating Systems. The CLR for **Objective C is only available in a OSX Enviroment**. And it's not free... – balexandre Sep 07 '12 at 08:05
  • But I saw an answer here on SO thats says that he can develop in his C# in his VS .... so where is the mac here ? – Royi Namir Sep 07 '12 at 08:08
  • You can develop in Visual Studio, but **not compile**. Only Mono for Android you can do all in Visual Studio, but apart of the license you need the Visual Studio plugin as well (paid plugin). – balexandre Sep 07 '12 at 08:09
  • Ok do you have a link for VM ( there's plenty) and that's the problem :) – Royi Namir Sep 07 '12 at 08:10
  • how will you program in vs for android ? its java... ( not j#) – Royi Namir Sep 07 '12 at 08:10
  • each link points to a specific chipset in your motherboard ... you need to dig up and search the best one, try and try again until you get it running... and after that, will be a pain to update. An used MacMini or MacbookPro will always be the best choice, I use a MacbookPro from 2008 (pre-unibody) and it rocks :) – balexandre Sep 07 '12 at 08:11
  • You program ALWAYS in C#, Mono for Droid will compile into native Java after, like MonoTouch will convert C# into Objective C (well, not exactly, but from my understanding as you understand the entire compilation system, it's simpler to say it like this). – balexandre Sep 07 '12 at 08:12
  • let us [continue this discussion in chat](http://chat.stackoverflow.com/rooms/16411/discussion-between-royi-namir-and-balexandre) – Royi Namir Sep 07 '12 at 10:26
  • Sorry for my stupid questions : but Does mono is both for Iphone and android ? or there is 2 versions of mono for each platform ? Also , will writing 1 code only will be running on both platforms ? – Royi Namir Sep 07 '12 at 10:29
  • 2 versions: 1 license for iOS and 1 license for Android. – balexandre Sep 07 '12 at 11:06
  • Can you move please to the chat room ? ( sorry) – Royi Namir Sep 09 '12 at 07:53
0

You can indeed develop for iOS on a PC for non-AppStore (jailbroken) purposes - you'll need Linux or Windows+MinGW and the opensource toolchain - I've written some build instructions at http://github.com/H2CO3/ios-toolchain

Also, if you have never done any C programming, I suggest you to grab a copy of K&R C and you begin Objective-C only after mastering C or else you'll be confused regarding the basics.

0

Centralised information for begginer you can get there: "CS 193P iPhone Application Development" from Stanford Univercity. This is great cource with video lectures and homeworks.

And you should have mac (or hackintosh).

EDIT: Course also available in "iTunes U"

somedev
  • 791
  • 11
  • 29
-1

The right place to start would be https://developer.apple.com/

You really need a Mac to develop for Mac. You can do Mac development using Hackintosh but it may be illegal to do so.

For developing iOS and Mac Apps, you will need the Xcode IDE which you can download from the Mac App Store.

The Dev Center has all the documentation you need.

iOS Dev Center:
https://developer.apple.com/devcenter/ios/index.action

Mac Dev Center:
https://developer.apple.com/devcenter/mac/index.action

If you like learning by examples, a good place would be
http://appsamuck.com/

You can also build HTML 5 apps for iPhone.

Bijoy Thangaraj
  • 5,434
  • 4
  • 43
  • 70
  • Incorrect. You only need a mac for official development. –  Sep 07 '12 at 07:57
  • @H2CO3 Can you not read the statement I mentioned in my answer: "You can do Mac Development using Hackintosh but it may be illegal to do so." – Bijoy Thangaraj Sep 07 '12 at 07:59
  • I can, but it's not quite relevant to what I mean. Also, unofficial != illegal, see my answer. –  Sep 07 '12 at 08:11
-1

I'm kind of a beginner too. I've started one year ago and have good information for you, where to start.

  1. xCode on Windows: Forget it! You have to work with a Mac.
  2. I don't understand what you need to know under this point..

*3.*There is lot of good stuff free available, if you know where: A good site is Ray Wenderlich Another option are Potcasts on iTunes U from the Stanford University.

Follow this along for a while and you will be ready to make your one projects! And if you need help, this site is a gold mine :-)

louis.leon
  • 114
  • 6