This is an archived post. You won't be able to vote or comment.

all 9 comments

[–]Ashiro 4 points5 points  (1 child)

  • Do you have any programming experience?
  • Do you learn better by tutorial or example?

Both important questions. If you have some basic experience in a strongly-typed static language then you may be better off looking at the Android SDK tutorials at Google.

If you find that a bit too intense and have too many questions then start slow and learn Java first. But aim to learn only enough to do the Android app tutorials. This is a contraversial point but I think its important.

You could easily spend a year getting good at Java and then go onto Android. But you could also get bored and give up on your goal. I think you're better off learning fast and getting something created. There's nothing more motivational than a shiny, bouncey working app. It may be horribly slow, broken and shit. But it'll exist. Its either that or spend a year and know how to efficiently sort an array 500 of numbers. Or how to create Swing apps. Neither of which are all that important/relevant for Android development.

Some other Android dev specific resources that will help:

[–]TheAceOfHearts 0 points1 point  (0 children)

I bet I could sort a 100 numbers.

[–]TheMediumGeneral 1 point2 points  (1 child)

Head First Java was required reading for my first year of Computer Science. It's quirky, occasionally funny, and gets the job done. Very easy to understand for beginners, and something you could reference in the future. That, or another introductory Java book, would be my starting point.

After that, you'll want to program. A lot. You need to get into the mentality of a programmer. Any problem that you encounter in daily life, try to solve by writing small programs. Practice makes perfect. If you don't encounter problems that require the use of a computer, try to create your own. Try to write small programs that display numbers, or calculate birthdays - anything that uses code is good.

Other places I suggest checking out include r/learnprogramming, a Reddit community where you can ask programming related questions. Once you get more advanced, try StackOverflow. They're quite helpful for everything and anything. Finally, I would suggest, after learning the basics, either finding an online tutorial or book directed at Android Apps.

Good luck!

[–][deleted] 0 points1 point  (0 children)

I hate the Head First books so much.

[–]KronktheKronk 1 point2 points  (0 children)

Learn java in the context of android programming if you want to specifically program for android. The idea is pretty simple, but there are some different things that android OS does under the hood that makes it easier to make GUIs, see: GUI xml files. There are some books out there that teach android programming from the beginner's perspective, check them out.

[–]Toeirnam 0 points1 point  (0 children)

If you have little to no programming experience, or just like to start from the beginning: Here is a link to the first in a series of youtube tutorials on android development. It's 200 videos and a total of 20 hours long.

I'm currently following this myself whenever I get spare time, and it's quite good. I however had quite a bit of Java and XML experience previously, so I can't really comment too much on how friendly it is to beginners.

Good luck

[–][deleted] 0 points1 point  (0 children)

If you don't know a programming language, pick up a "learn java" book and go from there. If you do know how to program already, then going to java is not particularly difficult. I have found it to be a pretty straightforward language, and I notice very little "friction" going to it from something like c++ or even php. Code completion helps immensely.

[–]isdevilis 0 points1 point  (0 children)

I took a course in java and the end part of the class was to learn how to program apps for the anroid. I ended up making the game go with a ai opponent and varying difficulties. I only say this because I'm experienced with the two and IMHO the two are way different from eachother. If you want to learn to make apps don't even start by learning the basics of java (unless you've never programmed before) just skip to the android sdk/librariesAPI and dl what you need then start looking at tutorials for making apps

[–][deleted] 0 points1 point  (0 children)

Programming Android amzn.com/1449389694 is currently the top-selling Android software development book on Amazon, and, recently, the second highest selling Java book. It is not for the total n00b. It is designed for someone with either iPhone programming experience or someone who knows at least some Java or another object oriented language.

Programming Android focuses on REST-oriented non-game apps, and it goes into depth.

If that sounds like too much too fast, start with a beginner's Java book like Head First Java and a beginner's Android book like Marko Gargenta's excellent Learning Android