Programming Language for Iphone/Android apps

TurnX

Senior member
Jan 19, 2006
677
0
76
Been mulling around the idea lately of playing around with creating some simple apps for the Iphone/Android communities. I have been out of the loop for a bit so I am not sure what language(s) are used to create these apps. So any help, suggestions, or whatever would be greatly appreciated.
 

Markbnj

Elite Member <br>Moderator Emeritus
Moderator
Sep 16, 2005
15,682
13
81
www.markbetz.net
iPhone/iPod/iPad apps are written in Objective-C using the Cocoa Touch application framework. Android apps are written in Java primarily. Not sure if there are other alternatives because I have only done a little messing around in Android so far.

For Apple development you will need at least a Macbook or other system running OS/X, the dev environment XCode, the SDK, an account on the Apple Developer Network, and several provisioning certificates that you can create and download from the developer network site. It's more than a little bit of a pain. You should also have a device. There is an emulator included with the SDK and integrated with XCode, but not everything works on it.

Android is much more open, and I think you can basically download the SDK from Google and have at it.
 
Last edited:

purbeast0

No Lifer
Sep 13, 2001
52,930
5,802
126
I actually wrote the same app for both platforms.

I created it on iPhone first, then ported it over to Android afterwards. I own an iPod Touch so I could test it out on hardware, however for android I don't own an android phone so I could only use it on the emulator. I actually played with it on an android phone for the first time last week at my brother in laws. It was kind of cool seeing it in action.

One thing i noticed was that when I tried to port it to Android, I tried to simulate the navigation bar at the top and added my own back buttons and stuff. since i never had used an android, i didn't know the 'back' button it was used for this functionality. so in an update, i added the functionality to the back button as well.

iPhone is objective c, and is ugly as hell. even though i've wrote a whole app and published it to the marketplace, i still do not understand the syntax 100&#37; at all. it is just funky.

Android is all java. i think there may be a c wrapper for it but not certain about that. when i started my android app dev (like in april) i had only been doing java professionally for about a month. I had been doing c++ for the past 5 years prior.

well to make a long story short my android app was pulled off the market due to copyright stuff (images i used) and last month i decided to update it and remove the images. it was amazing how after doing java professionally almost a year more sine then, how much easier it was for me to understand how it all works heh. i also realized how ugly my code for my android app was written .
 

TurnX

Senior member
Jan 19, 2006
677
0
76
Thanks for the suggestions.

Currently I don't have access to anything Mac, so I think I will brush up on my Java and get Android app development a try.
 

purbeast0

No Lifer
Sep 13, 2001
52,930
5,802
126
Thanks for the suggestions.

Currently I don't have access to anything Mac, so I think I will brush up on my Java and get Android app development a try.

as far as macs go, I went and got a dell inspiron which I knew i could hackintosh.

i paid $395 for mine, and the equivalent macbook would have ran me about $1300.

so just keep in mind you don't have to spend an arm and a leg to dev iPhone apps.

oh another note ... to publish on the iTunes marketplace and use your iPhone apps on a device, you have to pay the $100/yr developer fee.

for android, it is a $25 one time fee.
 

Nothinman

Elite Member
Sep 14, 2001
30,672
0
0
as far as macs go, I went and got a dell inspiron which I knew i could hackintosh.

i paid $395 for mine, and the equivalent macbook would have ran me about $1300.

so just keep in mind you don't have to spend an arm and a leg to dev iPhone apps.

As long as you don't mind being in a legally grey area by violating the OS X usage license to develop your app...
 

purbeast0

No Lifer
Sep 13, 2001
52,930
5,802
126
As long as you don't mind being in a legally grey area by violating the OS X usage license to develop your app...

well i have a mac mini i bought few months ago (an older one) ... it just runs like ass heh.
 

KIAman

Diamond Member
Mar 7, 2001
3,342
23
81
After working with Objective-C/C++ for a bit, it really isn't that bad and the syntax is almost identical to C except when passing object messages.

Learning all about the Cocoa framework was an eye opening experience. Digging into the AppKit and Cocoa touch, you'll realize the possibilities of making an interactive touchscreen app is endless. Many of the graphical aspects have been abstracted so your code can focus on content and functionality.

Also, MAC mini is good enough to develop on. Even the biggest apps are comparitively tiny compared to a traditional desktop or web app.
 

Markbnj

Elite Member <br>Moderator Emeritus
Moderator
Sep 16, 2005
15,682
13
81
www.markbetz.net
I spent more than ten years doing C/C++ professionally, and I found Objective-C a challenge. That was probably because it had been another ten years of C# since my last paid C++ gig. I had learned not to think about allocations and reference counting, not to mention pointers/references. I had also come to rely on the compiler and environment to aid me in all sorts of ways that modern languages make possible. For me the breakthrough came once I began to see all of the Objective-C features for what they are: C preprocessor macros. Once I got what each feature compiled to in C I started to be able to anticipate what to do. It's still a complete farking pain in the ass: laborious, error prone due to being convention-based with zero language support for usage rules, ugly as hell to debug. It's just nasty, and why they don't move to Java on that platform I have no freaking idea. That's Apple for you.
 

Patterner

Senior member
Dec 20, 2010
227
0
0
Heh, I feel the same way about Java. :whiste:

That said, I'm working on a couple of iPhone apps right now, and I agree, it's a little bit of a pain dealing with all the reference counting garbage...though, to be honest, I usually don't worry (much) about it on the first pass through and just fine tooth comb my ref counts in Intruments.
 

postmortemIA

Diamond Member
Jul 11, 2006
7,721
40
91
strange that apple insists in user friendliness and works-out-of-the-box, yet it had picked worst possible language for developers to make such apps
 

Markbnj

Elite Member <br>Moderator Emeritus
Moderator
Sep 16, 2005
15,682
13
81
www.markbetz.net
Objective-C makes very tight code, and Jobs is really jealous of every cycle on the iOS devices. I have to think that has something to do with it. But on the other hand its hard to believe that the authors of all 250k or so apps in the app store are really competent with the language.
 

Monster_Munch

Senior member
Oct 19, 2010
873
1
0
You can run C code on android using JNI. But you'll still need to know enough java (and xml) to wrap it up into an application.
 

ObscureCaucasian

Diamond Member
Jul 23, 2006
3,934
0
0
You can run C code on android using JNI. But you'll still need to know enough java (and xml) to wrap it up into an application.

And that's also a pretty bad idea for your app too. You really should only JNI for code that MUST be tight/fast, and for which Java doesn't work.
 

Cogman

Lifer
Sep 19, 2000
10,278
126
106
Objective-C makes very tight code, and Jobs is really jealous of every cycle on the iOS devices. I have to think that has something to do with it. But on the other hand its hard to believe that the authors of all 250k or so apps in the app store are really competent with the language.

Well, the way I heard it was that Objective-C was some sort of in house, pet project language (always a disaster) that Apple decided everyone should use. If they wanted performance, they could have used C++ and gotten pretty much the same performance they are getting now with Objective-C plus compilers that have been extremely optimized to handle this sort of code (the gcc).

As for android and Java. Doesn't the android OS allow for native components though the NDK? You could theoretically write in whatever language you want with the android.

Heck, it wouldn't surprise me if someone ports over a C# runtime (Mono would work nicely)
 

Markbnj

Elite Member <br>Moderator Emeritus
Moderator
Sep 16, 2005
15,682
13
81
www.markbetz.net
Objective-C was developed, or at least conceived, by Brad Cox while at Stepstone in the early 80's, and was adopted by NeXT, which is how I assume it got to be an Apple standard.
 

Monster_Munch

Senior member
Oct 19, 2010
873
1
0
And that's also a pretty bad idea for your app too. You really should only JNI for code that MUST be tight/fast, and for which Java doesn't work.

It's also used for porting existing applications so you don't have to rewrite everything in java.

Heck, it wouldn't surprise me if someone ports over a C# runtime (Mono would work nicely)

Mono for Android went public beta a few days ago
http://tirania.org/blog/archive/2011/Jan-04.html
 
sale-70-410-exam    | Exam-200-125-pdf    | we-sale-70-410-exam    | hot-sale-70-410-exam    | Latest-exam-700-603-Dumps    | Dumps-98-363-exams-date    | Certs-200-125-date    | Dumps-300-075-exams-date    | hot-sale-book-C8010-726-book    | Hot-Sale-200-310-Exam    | Exam-Description-200-310-dumps?    | hot-sale-book-200-125-book    | Latest-Updated-300-209-Exam    | Dumps-210-260-exams-date    | Download-200-125-Exam-PDF    | Exam-Description-300-101-dumps    | Certs-300-101-date    | Hot-Sale-300-075-Exam    | Latest-exam-200-125-Dumps    | Exam-Description-200-125-dumps    | Latest-Updated-300-075-Exam    | hot-sale-book-210-260-book    | Dumps-200-901-exams-date    | Certs-200-901-date    | Latest-exam-1Z0-062-Dumps    | Hot-Sale-1Z0-062-Exam    | Certs-CSSLP-date    | 100%-Pass-70-383-Exams    | Latest-JN0-360-real-exam-questions    | 100%-Pass-4A0-100-Real-Exam-Questions    | Dumps-300-135-exams-date    | Passed-200-105-Tech-Exams    | Latest-Updated-200-310-Exam    | Download-300-070-Exam-PDF    | Hot-Sale-JN0-360-Exam    | 100%-Pass-JN0-360-Exams    | 100%-Pass-JN0-360-Real-Exam-Questions    | Dumps-JN0-360-exams-date    | Exam-Description-1Z0-876-dumps    | Latest-exam-1Z0-876-Dumps    | Dumps-HPE0-Y53-exams-date    | 2017-Latest-HPE0-Y53-Exam    | 100%-Pass-HPE0-Y53-Real-Exam-Questions    | Pass-4A0-100-Exam    | Latest-4A0-100-Questions    | Dumps-98-365-exams-date    | 2017-Latest-98-365-Exam    | 100%-Pass-VCS-254-Exams    | 2017-Latest-VCS-273-Exam    | Dumps-200-355-exams-date    | 2017-Latest-300-320-Exam    | Pass-300-101-Exam    | 100%-Pass-300-115-Exams    |
http://www.portvapes.co.uk/    | http://www.portvapes.co.uk/    |