Android Programming: The Big Nerd Ranch Guide
J**Y
Excellent start for Java programmers transitioning to Android
This is a fantastic book. I've been working with Java for a while, wanted to get into Android, but had 0 experience with XML. This book got me on the right track and has given me a good foundation to move into deeper water (this book will not make you an expert overnight...trust me, no such book exists. I've read them all).You will develop apps straight out the gate, the exercises are realistic for the level taught and give good ideas for working with things in the coming chapters. They allow you to be creative and explore you own ideas while staying on topic.That being said, there are a few reviews on here that confused me...I've seen some really honest reviews on here, but one thing that concerns me and the main reason that I am writing this review is that most people seem to miss the target audience of this book. This is for Java programmers who are transitioning into Android. If you are rusty on Java, it is highly advisable to brush up before you do. If you *think* you know "a lot" about Java ask yourself if you understand: method overrides, anonymous inner classes, and some rudimentary concurrency (multi-threaded program that uses non-synchronized methods). If you don't, you will have problems in chapter 1!I also saw a complaint that the "code doesn't work"...false. I have run almost every program in here and had not one single error or exception (excluding the occasional typo on my part). I noticed that the problem that one complaint might be referring to is in chapter 2 or 3 when you create a second class file that if you aren't smart enough to put it into the same package, it won't work. However, on the author's part, it is specified that you understand Java and if you understand Java you already knew this.If you, like me, were at first concerned with some of the negative reviews, let me lay that to rest for you. This is a fantastic book, but it does require you to be up to speed on some Java (I would say at least intermediate for most tasks and to understand the logic behind them, as well). This book will, obviously, not make you an expert. Expertise comes with practice, time, and good old fashioned stick-to-it-ness. No book can give you that. Multiple methods for accomplishing a task will be extrapolated upon inside some of the chapters which will give you good insight to good programming practices and also making critical decisions on topics like method implementation, debugging, and Activity vs Fragment. The author seems to show little preference for one over the other most of time, usually just stating the reasons that you might use A and when you might use B. Very coherent writing. I believe that this author has good experience and can explain this topic well to readers.
A**E
An excellent book for learning Android mobile application development
I am an experienced Java and .NET developer but new to mobile development, so I thought I would give this book a try. I have to say that I did not regret for buying this book at all. I just finished chapter 6 in the book and loved it. The book is written so clear and easy to follow that I didn't have to read it multiple times to understand the content. Furthermore, the book explains what each line of code does and why. In my personal opinion, this book is so much better than the Dummies series that I bought few months ago. I only had 6 chapters under my belt and I can write a simple mobile application already without looking at the book (a textview with a button and display the message via toast.Pros: The language is very clear and easy to follow.Cons: I wish at the end of each chapter, the author would provide a summary of step-by-step, so I don't have to comb through all the words for key points.I went a head a summarize the chapter for myself as reference. Below is an example:1. Create an Android Projecta. Open Eclipse and choose File -> New -> Android Applicationb. Enter Application Namec. Enter Project Name (same as Application Name)d. Package Name (com.example.application_name)e. Minimum Required SDK: this SDK version or higher in order to run the applicationf. Target SDK: this SDK version that the application runs on2. Configure the Project3. Create a new Activity4. Configure the new Activity5. Layout the user interfacea. Design the user interface for the applicationb. Create string resources (/res/values/strings.xml)c. Wire up widgets to strings.xmld. Create resources for user interface (/res/layout/<application_name.xml>6. Wiring up widgets in codea. Getting reference to View objects// this method inflates the layout and put it on the screensetContentView(R.layout.activity_quiz);b. Getting reference to Widgets// get reference to textviewmQuestionTextView = (TextView) findViewById(R.id.question_text_view);// get reference to the buttonmTrueButton = (Button) findViewById(R.id.true_button);c. Setting listeners using anonymous inner class (italicized text)// set listenermTrueButton.setOnClickListener(new View.OnClickListener() {@Overridepublic void onClick(View v) {checkAnswer(true);}});7. Running the application on the Emulatora. Creating a new AVD (Choose Window -> Android Virtual Device Manager)b. In the package explorer, right-click the project folder choose Run As -> Android Application
Trustpilot
1 week ago
1 month ago