Anyone Thinking Of Deving With Android?

Whether you're a newbie or an experienced programmer, any questions, help, or just talk of any language will be welcomed here.

Moderator: Coders of Rage

User avatar
davidthefat
Chaos Rift Maniac
Chaos Rift Maniac
Posts: 529
Joined: Mon Nov 10, 2008 3:51 pm
Current Project: Fully Autonomous Robot
Favorite Gaming Platforms: PS3
Programming Language of Choice: C++
Location: California
Contact:

Anyone Thinking Of Deving With Android?

Post by davidthefat »

It looks promising, its pretty much linux on a phone and you can dev all you want unlike iPhone... But the down side is that its in Java, I just hate Java... Well I will stick to C++
User avatar
Innerscope
Chaos Rift Junior
Chaos Rift Junior
Posts: 200
Joined: Mon May 04, 2009 5:15 pm
Current Project: Gridbug
Favorite Gaming Platforms: NES, SNES
Programming Language of Choice: Obj-C, C++
Location: Emeryville, CA
Contact:

Re: Anyone Thinking Of Deving With Android?

Post by Innerscope »

davidthefat wrote:dev all you want unlike iPhone...
That's a moot point. I'm developing all I want on the iPhone. :)
davidthefat wrote:But the down side is that its in Java, I just hate Java... Well I will stick to C++
The downside to Java... is that you hate it? How do you hate something you (presumably) don't know?
Current Project: Gridbug
Website (under construction) : http://www.timcool.me
User avatar
davidthefat
Chaos Rift Maniac
Chaos Rift Maniac
Posts: 529
Joined: Mon Nov 10, 2008 3:51 pm
Current Project: Fully Autonomous Robot
Favorite Gaming Platforms: PS3
Programming Language of Choice: C++
Location: California
Contact:

Re: Anyone Thinking Of Deving With Android?

Post by davidthefat »

Innerscope wrote:
davidthefat wrote:
davidthefat wrote:But the down side is that its in Java, I just hate Java... Well I will stick to C++
The downside to Java... is that you hate it? How do you hate something you (presumably) don't know?
Just java is awkward, since they run through an interpreter not directly like C++
User avatar
avansc
Respected Programmer
Respected Programmer
Posts: 1708
Joined: Sun Nov 02, 2008 6:29 pm

Re: Anyone Thinking Of Deving With Android?

Post by avansc »

davidthefat wrote:
Innerscope wrote:
davidthefat wrote:
davidthefat wrote:But the down side is that its in Java, I just hate Java... Well I will stick to C++
The downside to Java... is that you hate it? How do you hate something you (presumably) don't know?
Just java is awkward, since they run through an interpreter not directly like C++
could you please explain how its "awkward" because its interpreted?
java is first compiled into bytecode. then interpreted by a VM.
Some person, "I have a black belt in karate"
Dad, "Yea well I have a fan belt in street fighting"
User avatar
Falco Girgis
Elysian Shadows Team
Elysian Shadows Team
Posts: 10294
Joined: Thu May 20, 2004 2:04 pm
Current Project: Elysian Shadows
Favorite Gaming Platforms: Dreamcast, SNES, NES
Programming Language of Choice: C/++
Location: Studio Vorbis, AL
Contact:

Re: Anyone Thinking Of Deving With Android?

Post by Falco Girgis »

I know Java, and I wouldn't be developing a game in it any time soon.
K-Bal
ES Beta Backer
ES Beta Backer
Posts: 701
Joined: Sun Mar 15, 2009 3:21 pm
Location: Germany, Aachen
Contact:

Re: Anyone Thinking Of Deving With Android?

Post by K-Bal »

GyroVorbis wrote:I know Java, and I wouldn't be developing a game in it any time soon.
Because of the language itself or performance? I never used Android but I guess if everything is Java they might have a powerful and extremely optimized implementation of the VM.
User avatar
avansc
Respected Programmer
Respected Programmer
Posts: 1708
Joined: Sun Nov 02, 2008 6:29 pm

Re: Anyone Thinking Of Deving With Android?

Post by avansc »

K-Bal wrote:
GyroVorbis wrote:I know Java, and I wouldn't be developing a game in it any time soon.
Because of the language itself or performance? I never used Android but I guess if everything is Java they might have a powerful and extremely optimized implementation of the VM.
id be curious to know as well. i know there is a stigma that java is slow.. and compared to C/++ yes it lags behind a little, but in no way is is to slow for games.

http://www.youtube.com/watch?v=FPk3ARoXt0k
http://www.youtube.com/watch?v=sEReoU7h ... re=related
http://www.youtube.com/watch?v=hERg6LsCaT4

ogre3d has a port to java aswell..

java is plenty capable of making a high quality game.
Some person, "I have a black belt in karate"
Dad, "Yea well I have a fan belt in street fighting"
User avatar
davidthefat
Chaos Rift Maniac
Chaos Rift Maniac
Posts: 529
Joined: Mon Nov 10, 2008 3:51 pm
Current Project: Fully Autonomous Robot
Favorite Gaming Platforms: PS3
Programming Language of Choice: C++
Location: California
Contact:

Re: Anyone Thinking Of Deving With Android?

Post by davidthefat »

avansc wrote:
K-Bal wrote:
GyroVorbis wrote:I know Java, and I wouldn't be developing a game in it any time soon.
Because of the language itself or performance? I never used Android but I guess if everything is Java they might have a powerful and extremely optimized implementation of the VM.
id be curious to know as well. i know there is a stigma that java is slow.. and compared to C/++ yes it lags behind a little, but in no way is is to slow for games.

http://www.youtube.com/watch?v=FPk3ARoXt0k
http://www.youtube.com/watch?v=sEReoU7h ... re=related
http://www.youtube.com/watch?v=hERg6LsCaT4

ogre3d has a port to java aswell..

java is plenty capable of making a high quality game.
Got to think, its different in an embedded system because of teh lack of power and memory and I assume you will have to watch out for more memory leaks and clean up
User avatar
avansc
Respected Programmer
Respected Programmer
Posts: 1708
Joined: Sun Nov 02, 2008 6:29 pm

Re: Anyone Thinking Of Deving With Android?

Post by avansc »

oh yea def. if you were gonna dev for the dreamcast i would def not advice java.
Some person, "I have a black belt in karate"
Dad, "Yea well I have a fan belt in street fighting"
User avatar
Innerscope
Chaos Rift Junior
Chaos Rift Junior
Posts: 200
Joined: Mon May 04, 2009 5:15 pm
Current Project: Gridbug
Favorite Gaming Platforms: NES, SNES
Programming Language of Choice: Obj-C, C++
Location: Emeryville, CA
Contact:

Re: Anyone Thinking Of Deving With Android?

Post by Innerscope »

I know Java, and I wouldn't be developing a game in it any time soon.
My point is that If you want to develop something for Android, having to write it in Java, shouldn't prevent you from doing so.
Current Project: Gridbug
Website (under construction) : http://www.timcool.me
User avatar
Falco Girgis
Elysian Shadows Team
Elysian Shadows Team
Posts: 10294
Joined: Thu May 20, 2004 2:04 pm
Current Project: Elysian Shadows
Favorite Gaming Platforms: Dreamcast, SNES, NES
Programming Language of Choice: C/++
Location: Studio Vorbis, AL
Contact:

Re: Anyone Thinking Of Deving With Android?

Post by Falco Girgis »

Innerscope wrote:
I know Java, and I wouldn't be developing a game in it any time soon.
My point is that If you want to develop something for Android, having to write it in Java, shouldn't prevent you from doing so.
Should it not? What about all of the programmers who are used to developing applications in C/++? What if the speed really isn't up to par? Yes, there exist builds and versions of Java (and implementations of the VM) that perform extremely well. Slower than C/++ (always and always will be), but not by much.

Whether you like it or not, you're working at a higher level of abstraction from the hardware. Yes, it might be fine on the Android. Yes, the performance might be okay for a video game. Java is an extremely useful language, but it's strengths do not lie in real-time applications (especially not running on embedded hardware).

There's an anti anti programming language sentiment going around on these forums. I very much defend programming languages. Java, C#, Perl, Python--all of those "less hardcore" higher-level languages have their place in software development. They generally aren't meant to be powering an engine, though. There is a reason that C++ is the industry standard language for game development.

If Java runs well enough on the Android for serious game developers, awesome. It's still writing (or maybe even rewriting) your game/engine in a language that you aren't accustomed to. That's a legitimate reason for anybody to be turned off to anything.
User avatar
avansc
Respected Programmer
Respected Programmer
Posts: 1708
Joined: Sun Nov 02, 2008 6:29 pm

Re: Anyone Thinking Of Deving With Android?

Post by avansc »

GyroVorbis wrote:
Innerscope wrote:
I know Java, and I wouldn't be developing a game in it any time soon.
My point is that If you want to develop something for Android, having to write it in Java, shouldn't prevent you from doing so.
Should it not? What about all of the programmers who are used to developing applications in C/++? What if the speed really isn't up to par? Yes, there exist builds and versions of Java (and implementations of the VM) that perform extremely well. Slower than C/++ (always and always will be), but not by much.

Whether you like it or not, you're working at a higher level of abstraction from the hardware. Yes, it might be fine on the Android. Yes, the performance might be okay for a video game. Java is an extremely useful language, but it's strengths do not lie in real-time applications (especially not running on embedded hardware).

There's an anti anti programming language sentiment going around on these forums. I very much defend programming languages. Java, C#, Perl, Python--all of those "less hardcore" higher-level languages have their place in software development. They generally aren't meant to be powering an engine, though. There is a reason that C++ is the industry standard language for game development.

If Java runs well enough on the Android for serious game developers, awesome. It's still writing (or maybe even rewriting) your game/engine in a language that you aren't accustomed to. That's a legitimate reason for anybody to be turned off to anything.
i understand what you are saying, and for the most part agree. but in the same breath you might as well state that the differential between C and Java, compared to asm. is TINY.
if you really wanna make it fast and leverage the hardware completely. write it in what ever flavor asm the hardware uses.. obviously thats not practical. and i think the same goes for higher langs.. its makes things easier and takes less time to do.

but i agree. if you are gonna do something for a platform where resources are limited. use something like C if possible.. and btw.. java has something called the JNI. which enables your to do straight C, if anyone didnt know.
Some person, "I have a black belt in karate"
Dad, "Yea well I have a fan belt in street fighting"
User avatar
Innerscope
Chaos Rift Junior
Chaos Rift Junior
Posts: 200
Joined: Mon May 04, 2009 5:15 pm
Current Project: Gridbug
Favorite Gaming Platforms: NES, SNES
Programming Language of Choice: Obj-C, C++
Location: Emeryville, CA
Contact:

Re: Anyone Thinking Of Deving With Android?

Post by Innerscope »

GyroVorbis wrote:Should it not? What about all of the programmers who are used to developing applications in C/++? What if the speed really isn't up to par? Yes, there exist builds and versions of Java (and implementations of the VM) that perform extremely well. Slower than C/++ (always and always will be), but not by much.
No, I think it's a good exercise to branch out of language comfort zones. If you really want to build a game for the android you should work within the constraints you are given. If you really just want to build a game, and think it would be cool on the Android, that's a different story.
GyroVorbis wrote:If Java runs well enough on the Android for serious game developers, awesome. It's still writing (or maybe even rewriting) your game/engine in a language that you aren't accustomed to. That's a legitimate reason for anybody to be turned off to anything.
That's understandable. Especially if you're re-writing a game engine. I was under the pretense he was developing a game for the android.
GyroVorbis wrote:Whether you like it or not, you're working at a higher level of abstraction from the hardware. Yes, it might be fine on the Android. Yes, the performance might be okay for a video game. Java is an extremely useful language, but it's strengths do not lie in real-time applications (especially not running on embedded hardware).
From what I gather, the Dalvik VM is well optimized, and the performance is okay for a video game (comparable to the iPhone). Sure, it won't run as magnificently as C code.
Since the OP doesn't have any project in particular, I can't really comment on whether it's doable on an Android phone nor can I comment on the coder's ability to code, which is more important than the language's level of abstraction from the hardware.
Current Project: Gridbug
Website (under construction) : http://www.timcool.me
User avatar
davidthefat
Chaos Rift Maniac
Chaos Rift Maniac
Posts: 529
Joined: Mon Nov 10, 2008 3:51 pm
Current Project: Fully Autonomous Robot
Favorite Gaming Platforms: PS3
Programming Language of Choice: C++
Location: California
Contact:

Re: Anyone Thinking Of Deving With Android?

Post by davidthefat »

I am not sure about Android, but I read in the iPhone API that the whole program doesnt HAVE to be in Objective-C , just the UI stuff like setting up the app's Main Menu to iPhone interaction, but the actual game can be programmed in C/C++... So HOPEFULLY Android allows that

edit: Im not sure if it was the iPhone might have been Zune with XNA... I forgot but one of those said that ;)


http://developer.android.com/guide/basi ... droid.html

that says ALL Apps are made in Java, but it has C/C++ libraries like Open GL ES (The same one PS3 uses but modified for Android) but :x Its confusing...
User avatar
Innerscope
Chaos Rift Junior
Chaos Rift Junior
Posts: 200
Joined: Mon May 04, 2009 5:15 pm
Current Project: Gridbug
Favorite Gaming Platforms: NES, SNES
Programming Language of Choice: Obj-C, C++
Location: Emeryville, CA
Contact:

Re: Anyone Thinking Of Deving With Android?

Post by Innerscope »

davidthefat wrote:I am not sure about Android, but I read in the iPhone API that the whole program doesnt HAVE to be in Objective-C , just the UI stuff like setting up the app's Main Menu to iPhone interaction, but the actual game can be programmed in C/C++... So HOPEFULLY Android allows that

edit: Im not sure if it was the iPhone might have been Zune with XNA... I forgot but one of those said that ;)


http://developer.android.com/guide/basi ... droid.html

that says ALL Apps are made in Java, but it has C/C++ libraries like Open GL ES (The same one PS3 uses but modified for Android) but :x Its confusing...
Just to clarify a few things...
Objective-C, like C++, is a super-set of C. You can write C code in your program and deploy it to the iPhone, no problem. The "entry point" or application delegate has to be written in Obj-C. (this is typically a very small file) Also, all of Apple's core frameworks are written in Obj-C, so if you what to use classes that inherit from NSObject you'll be coding it in Obj-C.
OpenGL ES, like OpenGL, is an API that communicates directly with the graphics hardware. (the "ES" stands for embedded systems)
Current Project: Gridbug
Website (under construction) : http://www.timcool.me
Post Reply