Hi everyone. My name is Faraz and I am 15 years old. I have taken an interest in Android since I actually understood what it was which was about 5 years ago. My main goal after high school is to go to college and get a bachelors in Computer Science and get a job at a stable company like Google or Apple. I am fluent in HTML and CSS and I really want to get into Android App Development. I have everything I need downloaded such as Eclipse and the latest Java update. Now all I need to know is where to start. Do I need to learn Java or Python or some other programming language? I am in 10th grade right now and my school only offers AP Computer Science to 11th Graders and I have tried to get a spot in the class but it is full of 11th graders already. So now my goal is to work on it in my free time because I am taking a couple of AP classes(college classes) this year so I will have barely any free time to do what I want. So I really want to do this so can someone please guide me to where I can start and also where I can actually learn thoroughly.
developer.android.com
This is the best place to learn Android app development.
But if you want to learn ROM development then xda is the place .
In both the cases at least some basic knowledge is must. I'll suggest you to spend some time on basics of c++ .
And all the languages are similar to each other. You won't find much difficulty in learning Java or C or php later.
Sent from my HTC Explorer A310e using xda app-developers app
omerjerk said:
developer.android.com
This is the best place to learn Android app development.
But if you want to learn ROM development then xda is the place .
In both the cases at least some basic knowledge is must. I'll suggest you to spend some time on basics of c++ .
And all the languages are similar to each other. You won't find much difficulty in learning Java or C or php later.
Sent from my HTC Explorer A310e using xda app-developers app
Click to expand...
Click to collapse
But isn't is better to learn C before C++? Because I have read that you will not understand C++ before knowing C.
maxell505 said:
But isn't is better to learn C before C++? Because I have read that you will not understand C++ before knowing C.
Click to expand...
Click to collapse
NO.. It's not at all necessary to learn C before C++.
C++ is a successor of C. But it's not necessary that C must be learnt first.
For android app development learn Java first. Find tutorials, master them, then pull down simple open source apps, and understand them.
C++ is valuable in the longer run but for android apps java is better. Also it is a better first language than C or C++. C teaches too many bad habits, C++ is powerful but harder than java. With java you learn bad memory management habits but they are easy to unlearn when C++ slaps you in the face.
Best wishes!
Sent from my Galaxy Nexus using xda app-developers app
n2rjt said:
For android app development learn Java first. Find tutorials, master them, then pull down simple open source apps, and understand them.
C++ is valuable in the longer run but for android apps java is better. Also it is a better first language than C or C++. C teaches too many bad habits, C++ is powerful but harder than java. With java you learn bad memory management habits but they are easy to unlearn when C++ slaps you in the face.
Best wishes!
Sent from my Galaxy Nexus using xda app-developers app
Click to expand...
Click to collapse
Ok. Thank you. I found some tutorials online for Java and I even got a book from the library(if I need it for longer, I will buy it) that teaches Java programming. Thank You everyone for the help
Related
Hi there, just wondering what should I learn to become a developer. Starting out as a total noob.
Which language should I learn?
Wanna develop mostly apps but some roms as well.
Should i go for Linux operating system and how do I get it thanks?
Sent from my PG86100 using Tapatalk
Android is based on Java. To develop apps you should learn Java. Ofc most of the Computer Science industry abhors Java but it's still used.
Google for and Download "Ubuntu"
ColdH33t said:
Android is based on Java. To develop apps you should learn Java. Ofc most of the Computer Science industry abhors Java but it's still used.
Google for and Download "Ubuntu"
Click to expand...
Click to collapse
Ok thank you...
Sent from my PG86100 using Tapatalk
For App development, I would strongly advise:
The New Boston - Android Tutorials
It would also help if you learnt some of the Java basics:
The New Boston - Java Tutorials
The tutorials are done by Bucky and Travis and these guys are very good. They take you through the learning step by step.
Also. When you came across problems, the main Android Developers site is very good, but I've also found Stack Overflow very helpful.
I started using the tutorials with no Android or Java knowledge at all and I've used what I have learned to make a couple of basic soundboards so far, but what they teach you gives you the potential for a lot more.
You can see the apps I've made Here (Android Market) and Here (My Rant Of The Day).
Good Luck.
Just Me said:
For App development, I would strongly advise:
The New Boston - Android Tutorials
It would also help if you learnt some of the Java basics:
The New Boston - Java Tutorials
The tutorials are done by Bucky and Travis and these guys are very good. They take you through the learning step by step.
Also. When you came across problems, the main Android Developers site is very good, but I've also found Stack Overflow very helpful.
I started using the tutorials with no Android or Java knowledge at all and I've used what I have learned to make a couple of basic soundboards so far, but what they teach you gives you the potential for a lot more.
You can see the apps I've made Here (Android Market) and Here (My Rant Of The Day).
Good Luck.
Click to expand...
Click to collapse
Thanks very cool apps man)
Sent from my PG86100 using Tapatalk
Java = C#, so if you learn Java, you can pick up the small differences in C# very easily. In fact, I'm pretty sure MS ripped off Java in creating C#.
But yeah, to develop on android phones, you need to program in Java, and to cook up stuff on your phone other than apps (ROMs, etc. you should know Unix, scripting, etc.)
And actually understand Object-Oriented Developing if you want to do things other than write apps for android.
kpsingh said:
Thanks very cool apps man)
Sent from my PG86100 using Tapatalk
Click to expand...
Click to collapse
No probs.
Also, you might have been better off asking this question in a forum that wasn't tailored to EVO 3D users.
If you would have posted it in the General Android Q&A or in the Q&A section of a more popular phone, you may have got even better solutions. (You could ask a mod to move it).
Hi guys,
I think I have been an xda user long enough..so I though, why dont I try my hand in developing and be more of a giver than a taker in this great community.
Problem is, I dont know where to start. So if you dev guys could give me an effective learning path(study this first, then this, then this)..I would be most greatful!
Im not a developer by training(an accountant, of all things!!), however, I did get into IT audit so I know a little bit about the different flavors of unix..and I love coding(we use some scripting software in the trade, i know i know, its different) and i am never happier than trying to figure out how to make things work using code..
I know some of you may laugh at me, but I really am interested in this.
Thanks!
There's a great site here with lots of useful info
If your endgame is to develop for Android it might be best for you to jump in the deep end and start learning Java immediately. Don't worry about learning it by developing Android applications, just focus on developing on PC and you will have a much easier time. Once you've picked up the basics of Object Orientated programming then it's time to take a look at the Android APIs and go through some tutorials so you can see how the apps come together.
At the end of the day it's going to be a big job for you because you have very little experience. Unfortunately theres no real easy way out so you just have to put in the hours.
Yep!! Sleepless nights! Just like a real dev..hehehe... I do know some languages like vb..python..javascript..but that was just me muckin around..nothin serious also..already had the netbeans ide setup...and got my java hello world cherry popped..hahaha..so lame
Sent from my GT-I9100 using XDA App
DreadPirateDan said:
There's a great site here with lots of useful info
Click to expand...
Click to collapse
Thanks man!!! Looks good!
Sent from my GT-I9100 using XDA App
saunderez said:
If your endgame is to develop for Android it might be best for you to jump in the deep end and start learning Java immediately. Don't worry about learning it by developing Android applications, just focus on developing on PC and you will have a much easier time. Once you've picked up the basics of Object Orientated programming then it's time to take a look at the Android APIs and go through some tutorials so you can see how the apps come together.
At the end of the day it's going to be a big job for you because you have very little experience. Unfortunately theres no real easy way out so you just have to put in the hours.
Click to expand...
Click to collapse
Yes..that is my endgame..but i was hoping you guys could point me to some android specific stuff..like how kernerls work..etc..basically i want to know the environment first...using google doesnt really yield in depth stuff
Sent from my GT-I9100 using XDA App
Android is basically Linux with a custom UI.
If you want to know how kernels work (and you really shouldn't(!) if your goal is to make apps, as that's REALLY in-depth lowlevel stuff) just check out how Linux works - there's a million million articles on the net about the internals of Linux.
Android specific app development stuff, incl. tutorials and samples are here:
http://developer.android.com/guide/index.html
Maybe you just wanna setup the SDK and try to get the "Hello World" working, continue from there.
SDK: http://developer.android.com/sdk/index.html
Its a question so that's why I put it here but it has to do with development so take it as you will....I understand to be a devlipe or kidder you obviously need a good base of Java and Linux knowledge. My question is since I'm trying to break into developing for android what are tips if any that any of you have for someone trying to start out?
Sent from my DROID X2 using xda premium
trafalger888 said:
Its a question so that's why I put it here but it has to do with development so take it as you will....I understand to be a devlipe or kidder you obviously need a good base of Java and Linux knowledge. My question is since I'm trying to break into developing for android what are tips if any that any of you have for someone trying to start out?
Sent from my DROID X2 using xda premium
Click to expand...
Click to collapse
Wouldn't hurt to tweet/message Ace or Dragon on twitter. Ace - @aceoyame Dragon - @dragonzkiller
Both of them are on regularly. Hope you get some answers.
Sent from my MB870 using xda premium
trafalger888 said:
Its a question so that's why I put it here but it has to do with development so take it as you will....I understand to be a devlipe or kidder you obviously need a good base of Java and Linux knowledge. My question is since I'm trying to break into developing for android what are tips if any that any of you have for someone trying to start out?
Sent from my DROID X2 using xda premium
Click to expand...
Click to collapse
Well, to start, get a book on Android Application developing, then download and install Eclipse. (It's best to do this in Linux, rather than Winderz, but there are several devs that work strictly through Winderz.) I use Linux personally as compiling ROMs you can only do in Linux as the Winderz tools don't work so well. If you are looking at developing applications, there are a TON of resources out there. Just Google it. If you are looking to do more with the Android OS, then learn Linux, it helps, a lot!
Hope this little blurb helps.
Ciao!
If you don't know Java, I would get a Java book first before even attempting to learn how to program Android. Most Android books assume you have Java and Object Oriented Programming experience.
And just reading the books won't do it. There is much to be said about experience. You could read a book, do all the code samples and then you think you know programming, but until you apply it, it's completely different.
All of my coding experience was self-taught at the beginning. It started with typing in programs from magazines on my Apple ][+ (and then eventually a //e). I would go in, type in the programs, debug them and get the to run. I would then see what would happen if I started changing things to see how it react. You really learn from your mistakes, because once you make one and correct it, it stays with you.
I also purchased books on programming and learned that way as well. Together, with typing in programs from other programmers, experimenting/changing/modifying their code, writing my own applications, etc, that's how I learned to program.
By the time I got to college to get my Computer Science degree, I had the basics of programming down pat, but I learned a lot more, but the stuff I learned was new and I didn't have to worry about the other basic aspects that some other people had to learn since they never really programmed before.
I'm also trying to get into developing. I've themed my X2, but that's about all the stuff I've done myself. I've edited the build.prop and stuff, but only with stuff other people wrote. I'm trying to learn Java, I've kind of got the structure down, but the code is the hard part for me, trying to remember what terms do what. And arrays too haha
My suggestion would be to learn Java and get familiar with Linux, I'm still trying to do both. Java is going to be the first language I fully learn. I've played around and attempted to learn C++ and Python. But I was easily distracted
Good luck on learning, its overwhelming!!! But once you start to dive in, things start stacking into place and make sense
Sent from my MB870 using XDA
I also use Linux and have taught myself Java even though km no wizard and am using g eclipse and working with some books on android development as well sounds like I'm at least pointed in the right direction at least
And on a side note I've used some flavor of Linux exclusivly for maybe 10 years now hate windows....last laptop I bought has a rwaltek wireless card in it or I would be using debian right now put could never get it yo work even using g wrappers...but that's a bit off topic sorry
Sent from my DROID X2 using xda premium
i understand this question has been asked in similar ways but programming is quite broad so hopefully i can get a personalised response to help zone in on my learning.
bit of information about me:
ive been using computers all my life whilst doing a little bit of code tweaking for a variety of things such as; games(hex editting) web coding and even a bit of excel macro work.
i currently have no plans or commitments as of now and wanted to use my free days to learn something new that ive been intrested in since i was about 12 years old.
im looking for a base or a starting point in learning coding... i understand jumping straight into coding apps and things is way out of my reach but i guess i have to start somewhere! Im very much intrested in customisation and the ability to customise as much as possible on phones, games and applications but i have no idea where to start...
ive been looking around and people recommend learning all sorts of languages from:
php/css moving up to java
straight to java
python
c#
c++
c then progressing into c++
but id rather get an answer from a community that is notoriously skilled in the developing area so much so that i feel this is the best place to ask!
if there is anyone who also wishes to help me personally in helping me along the way and giving me some advice then please pm me as id be so grateful to have someone there to help me.
thanks in advanced for your responses im looking forward to learning and hopefully starting something that will be a major part of my life from now on.
Well, since this is a mainly Aneroid development website, and if you are interested in aneroid, I would just jump straight into Java. That's what I did at least... to learn Java just google "Beginner's guide to Java" or something. Hope this helps.
Sent from my Kindle Fire using XDA
i was hoping for more input then just one person, i would like to know what others feel is the best way to go about it so i can build up an idea of peoples opinions to see what i feel is the best strategy of learning.
i appreciate your input ballarous =)
penfold1992 said:
i was hoping for more input then just one person, i would like to know what others feel is the best way to go about it so i can build up an idea of peoples opinions to see what i feel is the best strategy of learning.
i appreciate your input ballarous =)
Click to expand...
Click to collapse
What are your development plans for? Do you plan on donning an apron and becoming a rom developer or do you plan on developing apps? You're setup will differ between the two but either way grab yourself a few good java books but understand it applies to Android differently than regular java. Learn the fundamentals of java, it's core rules etc but study googles open source api to see how you implement your phones system into regular java format. Here is a link to the Google source for developers (not source as in the source you sync to build Android, source as in how to implement phone apis into that source) http://developer.android.com/reference/packages.html
Here's some general app development guides that will broaden your understanding http://developer.android.com/resources/index.html
Sent from my Galaxy Nexus
From my experience...
It probably does not matter where you start... I personally started with web based languages like VBS, and javascript, then jumped into c++... I completely avoided Java until recently.
VBS or Visual Basic is used for excel macros so you already have some experience under your belt. It should be pretty simple for you to apply that same understanding to the different syntax of Java.
Hi I'm a member of xdadevelopers for over a year and I can say I really love android. Although I'm still a noob. So I really wanna learn androind.
I'm from a very small town in India so I don't get much local guidance well none at all. So I've to learn it all by my self I guess so I googeled it and it very confusing.
so here is the thing
I've very basic knowledge about c, and java lets say I've no clue about programming. But I'm very good at learning these stuff
If I have to start from the scratch where to begin?
so all I wanna know where to start I mean to learn android what should I learn first "programming language"?
I guess I need to learn basic of java so than I can step on android
I need step by step guidance
what should I learn first or where should I begin?
Thanks
niravnn said:
Hi I'm a member of xdadevelopers for over a year and I can say I really love android. Although I'm still a noob. So I really wanna learn androind.
I'm from a very small town in India so I don't get much local guidance well none at all. So I've to learn it all by my self I guess so I googeled it and it very confusing.
so here is the thing
I've very basic knowledge about c, and java lets say I've no clue about programming. But I'm very good at learning these stuff
If I have to start from the scratch where to begin?
so all I wanna know where to start I mean to learn android what should I learn first "programming language"?
I guess I need to learn basic of java so than I can step on android
I need step by step guidance
what should I learn first or where should I begin?
Thanks
Click to expand...
Click to collapse
Are you looking to develop your own ROMs or develop android apps?
If you want to develop android apps, then I suggest to start from learning Java, you need to get an overview about Java language and then can move on to other elements respective to android programming like XML, Eclipse IDE etc.
If its about Android ROM building, then knowledge on Linux architecture is essential and several UNIX commands too. In short, you need to get comfortable with the Linux Terminal. Also knowledge on C and Java comes handy here too.
And last but not least, if you want to learn as you do, then Google is your best teacher and most of the programming oriented questions and solutions would be posted on stackoverflow.com
coolsandie said:
If you want to develop android apps, then I suggest to start from learning Java, you need to get an overview about Java language and then can move on to other elements respective to android programming like XML, Eclipse IDE etc.
If its about Android ROM building, then knowledge on Linux architecture is essential and several UNIX commands too. In short, you need to get comfortable with the Linux Terminal. Also knowledge on C and Java comes handy here too.
And last but not least, if you want to learn as you do, then Google is your best teacher and most of the programming oriented questions and solutions would be posted on stackoverflow.com
Click to expand...
Click to collapse
Thank you so much now atleast I have an idea from where to begin.
and I wanna learn both android app and android rom building but first I will start learning about developing android apps than
I will jump to android rom building and its good to know that I'm already using linux so I've some idea about its architecture and unix command but I have to evolve my knowledge big time. THANKS again so much
zacthespack said:
Are you looking to develop your own ROMs or develop android apps?
Click to expand...
Click to collapse
first I wanna learn about developing android apps. and as I said I'm noob so I think it would be good for me to learn first about apps developing than jump to rom building
and I also wanna learn developing android rom.
hi nirvann
ok so i think the first step is to learn basic java programming. after that you can try to develope your own app. i really like this tutorial, maybe it could help you http://www.vogella.com/articles/Android/article.html
i think at first you should set your prioties to the app development and not to rom development...
i wish you good luck with your first own app
Sorry for my bad englisch
emyaz said:
hi nirvann
ok so i think the first step is to learn basic java programming. after that you can try to develope your own app. i really like this tutorial, maybe it could help you http://www.vogella.com/articles/Android/article.html
i think at first you should set your prioties to the app development and not to rom development...
i wish you good luck with your first own app
Sorry for my bad englisch
Click to expand...
Click to collapse
Thanks so musch emyaz
I totally agree with you first I'll learn java than will learn app developing and after all that if I thing I'm good at it than I'll think about learning rom developing. I also love linux so I think I'll be learning that to so I think things will be easy after learning linux core coz android comes from it
But for now Java is top priority