Showing posts with label android getting started. Show all posts
Showing posts with label android getting started. Show all posts

Monday, 2 September 2013

Learning Java for Android

I really enjoy writing tutorials on Android development, particularly where the aim is to provide a foundation for future learning and where the reader may have little or no previous programming experience. I love programming and believe anyone can learn to do it - the opportunity to ignite the same excitement in other people makes it a real privilege.

I've been thinking recently about writing an eBook on Android development, perhaps on learning Java for Android application development. There seem to be one or two on the eBook market already covering the topic, but they either don't focus specifically on it or go into a lot more detail than I think is really necessary to get someone started using Java to create Android apps.

To get started in Android development with no prior Java experience, there are a few key concepts and techniques to learn, but you should be able to create your first Android app fairly quickly. For this reason, I'm thinking I might publish a small-ish eBook (probably for Kindle) on getting to grips with the essential features of Java necessary for creating initial Android apps.

The eBook would probably not cover advanced Java programming topics, focusing instead on learning what's necessary to get a good start on the Android platform. I would also try to restrict the content to what you need to get started creating basic apps, steering away from the more professional aspects, hopefully making it more accessible/ less intimidating and obviously a little lower in cost than most of the existing titles.

Topics would include the basics of object oriented development, expanding on what I covered in this post: Object Oriented Concepts for Android Development in Java. I would also cover the main Java classes Android beginners are likely to use on the platform, as well as essential features of the language such as control structures and data storage. Ideally the eBook would make Android development accessible to people with no Java experience at all, and hopefully even to people who don't have any background in programming or development.

Although there is of course more to Android development than Java programming, the other technologies used on the platform (XML, SQL etc) involve a lot less complexity and are therefore easier to pick up. Java is best learnt with a conceptual approach, which can benefit from textual explanation more than some other programming topics.

It seems that the resources dedicated to getting people started in Android development focus exclusively on the Java syntax and structures necessary to create apps rather than on the conceptual side of things. Learning these features of Java can have an enormous impact on your ability to build apps efficiently and have a rewarding experience while you're at it. Learning only the parts of a language that are necessary is also a recipe for poorly built applications as well as a frustrating development process.

If anyone who reads or comes this blog has any input in terms of what they feel would be a useful topic for an eBook, topic to cover in an eBook or even in a blog post on Android development, please do feel free to leave comments. Any feedback is appreciated.

Thursday, 24 February 2011

Thinking About Android Development?

I started Android development in 2009, although when I say "started" that's exactly what I mean. I learned the basics, released a really trivial free application and then did nothing else with Android for about a year and a half.

Having started getting back into Android development since the end of 2010, I've been surprised by the still relatively small number of useful Android development resources online. For that reason I thought I'd start a blog and keep note of the things I learn or come across as I go along, in case any of it proves useful for anyone else. This is going to be pretty simple stuff aimed at developers like myself who are really just doing Android on a casual basis.

Some initial thoughts about the Android development process:

Android development isn't what I expected it to be. My initial training was in Java programming for desktop applications, and I then got into Web and multimedia development (mainly so that I could work freelance). I've always loved Java development, and for that reason was excited by the possibility of getting paid to do it on a freelance basis.

However, the Android development process bears more resemblance to Web development than the type of Java application development I was used to. This is probably good news for people who come from a Web background and want to get into Android. If, like me, your background has been more desktop-oriented, you might need to make a bit of a mental adjustment when you approach Android. I'd recommend reading up on the Android Activity Lifecycle before you get started, as this is the key concept to get to grips with when it comes to structuring your apps.