Seeing that he is a relative newbie to the programming world, I thought diving deeper into how he built his first app would be perfect for Learn to Code With Me.
Here’s a little bit about PraneethVT before we get started.
- He is a computer engineering college major
- So, in total, he has had about six months of actual programming classes
- Two of the introductory CS courses he has under his belt teach Java
- During his summer break, he decided to put some of his CS skills into practice and build an Android app
Below are some further questions, in Q&A style, with PraneethVT on how he went about making his first Android app. (My questions are in bold, and his responses follow.)
At the end, I share the five main takeaways on Android app development for beginners.
Disclosure: I’m a proud affiliate for some of the resources mentioned in this article. If you buy a product through my links on this page, I may get a small commission for referring you. Thanks!
Q&A ON ANDROID APPLICATION DEVELOPMENT
COULD YOU BREAK IT DOWN FOR ME—WHAT IS EVERY SKILL/LANGUAGE NEEDED TO BUILD AN ANDROID APP?
Building an Android app comes down to two major skills/languages: Java and Android. Java is the language used in Android, but the Android part encompasses learning XML for the design of the app, learning the concepts of Android, and using the concepts programmatically with Java.
Once you learn Java and XML (XML is really easy to get used to, and you should learn the language as you program your app rather than learning it beforehand like you would with Java), you need to learn how to connect these two using Android principles.
I gave some good resources in my post on Reddit for learning things like Activities, Fragments, and other important Android concepts, but my favorite is the Big Nerd Ranch book because it teaches you while you make apps during the book.
(Link to book here: Android Programming: The Big Nerd Ranch Guide (Big Nerd Ranch Guides)
For a total beginner looking to make an android app, what would you recommend they learn first?
For a total beginner, I recommend learning Java. There are no shortcuts here, you just have to learn Java.
Now for a total beginner, I recommend YouTube tutorials to get the basic idea of how to install Eclipse (the Integrated Development Environment, or IDE, for Java) and the Java Development Kit (JDK). It also helps to get the basic idea of syntax behind Java concepts, such as for loops and if statements.
But from then on, after you have learned the very basics, I HIGHLY recommend ditching the YouTube tutorials in favor of a book or a lecture series. YouTube tutorials very often do NOT give intuition behind important concepts, which I feel is 100% necessary if you wish to make an Android app.
What exactly is Eclipse and Android Studio? And are these two completely necessary to build an android app?
Android Studio and Eclipse are IDEs, or Integrated Development Environments. You could code Java using other programs that run code, but I personally am not too familiar with these and would not recommend these at all to a beginner.
The IDEs compile and run your code with just a touch of a button, unlike other applications where you would have to write some code to compile and then write some code to run. You have to install the Android SDK with Eclipse, but all of the installation process is covered in depth on the Android developer’s website.
How much time did you spend daily/weekly on building the app?
I took almost exactly two months to complete my app.
When I started off, I spent 4+ hours a day reading the Big Nerd Ranch book and following the tutorials to make the apps in the book. Time flew by when I was actually making my own app, because solving a small problem, such as saving data, took me a while to fully understand the material since it was new to me.
I had a bunch of time to do this because I am on summer break from a university and had nothing else to do.