Is this book for me?
If you have already decided that Java, Android, or games are what you want to learn, then the next question might be, "Is this specific book for me?".
There are plenty of Java books for beginners and books by much more accomplished authors and programmers than myself. I have read many of them and admire the authors. However, when these books drift away—which they all do—to topics such as Java-native interfaces, web browser applets, or server-side remote communication, I sometimes find myself questioning their immediate relevance to me.
At this point, at least subconsciously, my commitment would wane and the learning process would slow or stop.
If you just want to learn pure Java
If you just want to learn Java on its own, this book will be a solid start. Although the Android stuff might be considered overhead to your pure Java learning, this is much less than the multitude of potentially unnecessary topics that would be introduced in any other Java book. The only caveat with this book is that the necessary overhead is all at the beginning. But once this minimal overhead is cleared, we can focus quite intently on Java.
With regard to the amount of overhead:
- It will take about six pages to set up our programming environment in this chapter
- It will take Chapter 2, Getting Started with Android, to get familiar with the Android tools, create your first working project, and glimpse your first real Java code
- From then on, it will be nearly pure Java and building games
You will soon see that the tiny amount of overhead is not excessive and is well worthwhile.
If Android is your focus
If it was Android itself that made you look at this book, then I am proud to say this is the first book that will teach you Android without assuming you have any prior Java or programming knowledge whatsoever.
Where this book will take you
By the end of this book, you will be able to easily take one of many paths including these:
- Learning Java at a higher level for any platform
- Intermediate level Android learning including pure game frameworks (which will be covered in more detail in Chapter 9, Making Your Game the Next Big Thing)
- A higher level of games development
- Much easier tackling of any modern object-oriented language for things such as iOS, Windows, or web development
So if you know you want to learn Android or Java, hopefully, I have gone some way to make you commit to the way this book will help you. But why games, Android, or Java at all?