Attend XDA's Second Annual Developer Conference, XDA:DevCon 2014!
5,807,866 Members 52,072 Now Online
XDA Developers Android and Mobile Development Forum

Hi :) C,C++ or Java ?

Tip us?
 
aeroxr1
Old
(Last edited by aeroxr1; 13th November 2013 at 12:14 AM.)
#1  
Senior Member - OP
Thanks Meter 25
Posts: 172
Join Date: Oct 2012
Cool Hi :) C,C++ or Java ?

Hi
I'm Italian and my english is so bad , sorry..

I would ask you what the language is recommended to develop android's app :

Java , C or C++ ? Anothrer doubt but C is used for android app ? mmm ..

There isn't a android native language , right ?
Coult I ask you to suggest me a web site's link where can I see how does android work ?

Sorry for my english , I'm studing english but there are too many word to say same thing
Thanks
 
dev.hinge086
Old
#2  
Junior Member
Thanks Meter 2
Posts: 4
Join Date: Nov 2013
dude its ok your english is fine and hear the language important is programming language how much good you are at will lead you to be a good developer and for learning android and how it works and all go to developers.android.com/training you will get whatever you want and browse on google and go to 4shared and find books on Android you get a huge and youtube.com/thenewboston 200 tutorial videos with great explaination and please first make sure you are very good at your oop concepts in java keepitup
devalex from Bolt A67
The Following 2 Users Say Thank You to dev.hinge086 For This Useful Post: [ Click to Expand ]
 
Andreaaaaa
Old
#3  
Member
Thanks Meter 88
Posts: 75
Join Date: Nov 2013

 
DONATE TO ME
Quote:
Originally Posted by aeroxr1 View Post
Hi
I'm Italian and my english is so bad , sorry..

I would ask you what the language is recommended to develop android's app :

Java , C or C++ ? Anothrer doubt but C is used for android app ? mmm ..

There isn't a android native language , right ?
Coult I ask you to suggest me a web site's link where can I see how does android work ?

Sorry for my english , I'm studing english but there are too many word to say same thing
Thanks
Java is the main language to develop Android's app. C or C++ can be used through the NDK to write parts of the app (but only some part, not the whole app) which are heavily CPU-demanding. Java's what you need to learn.

I suggest you start from developer.android[dot]com/training/basics/firstapp/index.html
The Following 2 Users Say Thank You to Andreaaaaa For This Useful Post: [ Click to Expand ]
 
aeroxr1
Old
(Last edited by aeroxr1; 17th November 2013 at 01:07 AM.)
#4  
Senior Member - OP
Thanks Meter 25
Posts: 172
Join Date: Oct 2012
Quote:
Originally Posted by dev.hinge086 View Post
dude its ok your english is fine and hear the language important is programming language how much good you are at will lead you to be a good developer and for learning android and how it works and all go to developers.android.com/training you will get whatever you want and browse on google and go to 4shared and find books on Android you get a huge and youtube.com/thenewboston 200 tutorial videos with great explaination and please first make sure you are very good at your oop concepts in java keepitup
devalex from Bolt A67
Thanks a lot

Do you suggest me one particular book or is indifferent ? Aniway I Will begin to study from the link that you give me

Quote:
Originally Posted by Andreaaaaa View Post
Java is the main language to develop Android's app. C or C++ can be used through the NDK to write parts of the app (but only some part, not the whole app) which are heavily CPU-demanding. Java's what you need to learn.

I suggest you start from developer.android[dot]com/training/basics/firstapp/index.html
The program in android works on the java virtual machine ? Ok

I would ask you One last thing

I have galaxy nexus , and on xda we can find lot of kernel ad rom , but I have one doubt :/
For the kernel the language used is C ?
And for the rom ? Java and C ?

Where can i find the kernel's source and factory image's source ?

O.t : Wich operating system do you use ? Now on my new laptop run window 8 and I ask to my self if is good choice .. For programming kernel,rom and app linux is the best ? or the operating system does not matter ? mmm..
 
matheszabi
Old
#5  
Member
Thanks Meter 5
Posts: 36
Join Date: Oct 2013
If you want to learn to make a few apps, here is how I would start again:

Learn the Activity lifecycle and they methods ( the srceen ui )

Learn to make layout.xml without the ui editor. - it takes a few weeks.

Learn to use the AsyncTask to be able to make HTTP POST, GET and others stuff.

Only after this learn the Service, for background operations.

Broadcast receivers to listen system events: like boot completer internet connection lost, gps is on and so on.

With those sets you can earn a living at a company, which usually make applications client - Server side. Not really need to know more.

There are optimisations, but not at learning: some part of your code need to handle a lot of calculations, drawing, physics, AI, encryption, decryption: move that code part to NDK and start having problems with NDK development.

If you are a web developer and want to make some web based apps, than there is the webview and its the easiest case, at least virtually. For beginning / learning it is.

Game developers aren't covering they cost at least 80% of they so think about twice if you want to set up a full development cycle with NDK + OpenGL + animation, wasting like 5000 man hours. Depends on complexity of course, but those with 10 million downloads aren't made within 200 hours, for sure.
The Following 2 Users Say Thank You to matheszabi For This Useful Post: [ Click to Expand ]
 
Andreaaaaa
Old
#6  
Member
Thanks Meter 88
Posts: 75
Join Date: Nov 2013

 
DONATE TO ME
Quote:
Originally Posted by aeroxr1 View Post
Thanks a lot

Do you suggest me one particular book or is indifferent ? Aniway I Will begin to study from the link that you give me



The program in android works on the java virtual machine ? Ok

I would ask you One last thing

I have galaxy nexus , and on xda we can find lot of kernel ad rom , but I have one doubt :/
For the kernel the language used is C ?
And for the rom ? Java and C ?

Where can i find the kernel's source and factory image's source ?

O.t : Wich operating system do you use ? Now on my new laptop run window 8 and I ask to my self if is good choice .. For programming kernel,rom and app linux is the best ? or the operating system does not matter ? mmm..
The Kernel is Linux, so it's written in C. I don't know about the ROM, I guess it's only Java, but there could be C parts, it's just guess-work.

Here you can find how and where to download and, if you want to, to build your android kernel, while here you can find AOSP (which stands for Android Open Source Project) code.

I personally use Linux (more precisely, elementaryOS, which shares its core with Ubuntu) and haven't used Windows for a long while. I don't know how good/comfortable Android development is under Windows.

It must be noted that getting Java running under Linux is not a one-click thing, but nothing that couldn't be solved by a simple tutorial on the Internet. On the other hand, Linux is way more light-weighted than Windows, which comes handy when you're running on little RAM as I do.
The Following User Says Thank You to Andreaaaaa For This Useful Post: [ Click to Expand ]
 
matheszabi
Old
#7  
Member
Thanks Meter 5
Posts: 36
Join Date: Oct 2013
Default "I would ask you what the language is recommended to develop android's app : "

Quote:
I would ask you what the language is recommended to develop android's app :
He is asking to develop Android application, not Android Rom, not Android kernel.

Please open your eyes!
 
aeroxr1
Old
(Last edited by aeroxr1; 18th November 2013 at 04:44 PM.)
#8  
Senior Member - OP
Thanks Meter 25
Posts: 172
Join Date: Oct 2012
Quote:
Originally Posted by matheszabi View Post
He is asking to develop Android application, not Android Rom, not Android kernel.

Please open your eyes!
In my last post I Also asked for the kernel and rom's code and Language


Quote:
Originally Posted by Andreaaaaa View Post
I personally use Linux (more precisely, elementaryOS, which shares its core with Ubuntu) and haven't used Windows for a long while. I don't know how good/comfortable Android development is under Windows.
I have a doubt of window or linux because on the link that you have posted there are a "tutorial" for source download on Linux but not on Window .. So I try to find another window's tutorial through google search but no result.

P.s : few weeks ago I'm using linux , but on the new laptop there is window 8 and I have to do a backup before install a dual boot for a future restore in case of warranty assistance -.-"


Thanks a lot All You are the best!
 
Scalibq
Old
#9  
Member
Thanks Meter 19
Posts: 34
Join Date: Jun 2013
I use Windows for Android development. I don't think it makes much of a difference. I use Eclipse as the IDE, which is written in Java, and is pretty much the same for Windows and Linux.
 
JVene
Old
#10  
Junior Member
Thanks Meter 1
Posts: 5
Join Date: Apr 2007
Location: Miami
Thought I'd chime in, though the thread has been quiet for two weeks.

Learning Android application development is going to point you first to Java and only Java.

Despite other posts, and Android documentation INSISTING otherwise, developers (myself in particular) DO write applications for Android entirely in C++, using the NDK. It's an advanced technique.

If you were already a C++ developer you would want to avoid Java, and you'd pursue the NDK and C++. However, if you're not a C++ programmer already, Java is a much easier introduction. C++ is a wonderful language, but it's full of complications. It's my personal favorite, and I have decades of experience using it an C, but it is not for beginners. Used correctly, the results can be many times faster than Java applications (despite Android documentation claiming otherwise).

Also, there are a wide range of targets for which C++ is entirely NOT suitable. Simple applications are typical of that.

One reason seasoned developers prefer C++ is portability. Despite a reputation to the contrary, C++ is the only language you can use to write applications for iOS, Android, Tizen, Blackberry and the non-mobile platforms like Linux, Windows and Mac - from a common base of code.

Since I've not been a beginner for decades, I can't really suggestion any great text, but I can say that Java is your language for Android as a beginner.

The Following User Says Thank You to JVene For This Useful Post: [ Click to Expand ]
Thread Tools Search this Thread
Search this Thread:

Advanced Search
Display Modes