Sams Teach Yourself Java in 21 Days Covering Java 7 and Android App Development
Sams Teach Yourself Java in 21 Days continues to be one of the most popular, best-selling Java tutorials on the market. Written by an expert technical writer, it has been acclaimed for its clear and personable writing, for its extensive use of examples, and for its logical and complete organization.
The sixth edition of Sams Teach Yourself Java in 21 Days adds coverage of Java 7 and places a special emphasis on Android programming, capitalizing on the fastest-growing area of Java programming. There will be a new chapter on Android development and additional material where appropriate throughout the book. This edition also includes new material on using NetBeans, the free integrated IDE for Java.
No previous programming experience required. By following the 21 carefully organized lessons in this book, anyone can learn the basics of Java programming.
Learn at your own pace. You can work through each chapter sequentially to make sure you thoroughly understand all the concepts and methodologies, or you can focus on specific lessons to learn the techniques that interest you most. Test your knowledge. Each chapter ends with a Workshop section filled with questions, answers, and exercises for further study. There are even certification practice questions. Completely revised, updated, and expanded to cover the latest features of Java 7 Learn to develop standalone Java applications, Android apps, and Java Web Start applications Easy-to-understand, practical examples clearly illustrate the fundamentals of Java programming Discover how Swing can help you quickly develop programs with a graphical user interface Find out about JDBC 4.1 programming with the Java DB database and XML parsing with the open source XOM class library Covers new features of Java 7 such as improved try-catch exception handling, the new switch, and Nimbus look and feel
Rogers Cadenhead is a ServiceNow developer who has created applications in insurance and customer service. He is also the author of more than a dozen books on computer programming and web publishing, including the Sams Teach Yourself Java in 21 Days series, and the chairman of the RSS Advisory Board, the group that publishes the RSS 2.0 specification.
This book appears to throw you in at the deep end. If a new programmer just looked at Day 1 it could be quite intimidating, as it goes into classes, inheritance and has you type a lot of code you won't understand, but Day 2 moves into explanations of variables, data types, operators and so on, which will make that beginning programmer sigh with relief.
I think it would be helpful if you already understand the basic concepts of programming and want some practical experience with Java; I wouldn't recommend this for anyone who doesn't already have some experience (even if tiny) because the nuances of things like class/local/instance variables might be very confusing to someone who has only just learned what a variable is. In short, it's better for a novice than a complete beginner.
This book does guide you towards best practices, and helps with the more abstract areas, and seems good at bolstering existing knowledge.
Unfortunately, I'm going to read this cover to cover again because I haven't retained much aside from basic OOP principles and method chaining concepts. While I initially thought memorizing syntax was the key, I've realized I need to focus more on understanding core programming patterns and problem-solving approaches. I want to solidify my grasp of Java's type system, generics, and memory management before moving on, since my goal is eventually learning C++ for performance-critical applications and game development. Java and C++ share many fundamental concepts, so building a strong foundation in object-oriented design patterns and understanding how different languages handle memory will serve me well. One thing I will say about this book is that it's full of practical examples and hands-on projects, though I should note that since this covers Java 7 and older Android development approaches, I'll need to supplement it with more current resources covering modern Java features and Kotlin for Android development.