What’s This For?
This is the first post of what will surely be a rather lengthy foray into the world of Android. The series will likely be an introduction to Android development at its core, however I am going to try to target existing .NET developers wherever the parallels between the development experience present themselves. The reason is simple: I am a .NET developer.
I have been developing desktop software, services and web sites using C# and Microsoft’s .NET Framework for years, and it has been an overall enjoyable experience. The tools and technologies Microsoft makes available to it’s developers is quite impressive. Now, you could certainly debate any of these opinions, but that’s not really why we’re here. So, enough of that. Let’s get to the fun stuff.
I have been tinkering with Android lately because I like the way the OS works, and Android is really everywhere these days. It’s in a huge number of phones and tablets, which is really the core focus of mobile development. Since I realized there was just no way to ignore the mobile market due to it’s size and rate of growth, Android seemed like the obvious choice for getting started. It’s also a smaller syntactical leap for me, since Android’s native language is Java, which is a C-based language like C#.
The best place to start, of course, is to learn the Android OS, and that’s exactly where post #2 is going to start off. I know what you’re thinking, “Boo! Reading about that stuff is boring! Let’s just write some code and we can fill in the blanks later!” Sorry, but no-can-do. When it comes to Android, you really need to have a decent understanding of how the system works before you can attempt to utilize it in your own development efforts. And who knows, you may be surprised. I found the Android OS rather interesting. I’m going to try to reduce the size of the information for you as much as I can by summarizing the concepts explained in the “What is Android?” and “Application Fundamentals” articles on the Android Developers site so that we can get through it faster…(hopefully). If you would rather review their more complete version of the documentation, please do so. The more you learn about the system, the better equipped you will be to get started writing an app for it.