Vous voulez voir cette page en français ? Cliquez ici.

Sign in to turn on 1-Click ordering.
Amazon Prime Free Trial required. Sign up when you check out. Learn More
More Buying Choices
Have one to sell? Sell yours here
Tell the Publisher!
I'd like to read this book on Kindle

Don't have a Kindle? Get your Kindle here, or download a FREE Kindle Reading App.

Beginning Java SE 6 Game Programming [Paperback]

Jonathan S. Harbour
3.0 out of 5 stars  See all reviews (2 customer reviews)
List Price: CDN$ 37.99
Price: CDN$ 30.39 & FREE Shipping. Details
You Save: CDN$ 7.60 (20%)
o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o
Only 2 left in stock (more on the way).
Ships from and sold by Amazon.ca. Gift-wrap available.
Want it delivered Tuesday, July 29? Choose One-Day Shipping at checkout.
Join Amazon Student in Canada

Book Description

Jan. 18 2011 1435458087 978-1435458086 3
BEGINNING JAVA SE 6 GAME PROGRAMMING, THIRD EDITION is perfect for beginner level game programmers with some Java experience who want to quickly and easily learn how to create games using the latest version of the Java SDK, Java 6. Written in simple language, the book teaches each new skill using engaging tutorials in which you'll write short programs that demonstrate the topics being covered to reinforce what you've just learned. Each chapter builds upon the previous ones, allowing you to repeat and practice the techniques covered. You'll begin with the basics of writing a simple game using vector graphics, move on to utilizing Java's advanced library to add animation and sound effects, and end by creating a professional, sprite-based game full of interesting artwork and details that you can share with others on the web. And you'll be able to use the skills and techniques you've learned to create your own games to play and share. All you need to get started is a basic understanding of Java and your imagination!

Customers Who Bought This Item Also Bought

Product Details

Product Description


Part I: JAVA FOR BEGINNERS. 1. Getting Started With Java. 2. Java Programming Essentials. 3. Creating Your First Java Game. Part II: JAVA GAME PROGRAMMING. 4. Vector-Based Graphics. 5. Bitmap-Based Graphics. 6. Simple Sprites. 7. Animated Sprites. 8. Keyboard and Mouse Input. 9. Sound Effects and Music. 10. Timing and the Game Loop. Part III: THE GALACTIC WAR PROJECT. 11. Galactic War: From Vectors to Bitmaps. 12. Galactic War: Sprites and Collision Boxes. 13. Galactic War: Squashed By Space Rocks. 14. Galactic War: Entity Management. 15. Galactic War: Finishing The Game. 16. Galactic War: Web Deployment. Part IV: APPENDICES. Appendix A: Chapter Quiz Answers.

About the Author

Jonathan Harbour taught game development as an Associate Professor at UAT (Tempe, AZ) for five years. He has written more than 20 books (plus revisions) on most of the major programming languages, such as C++, C#, VB, Java, and Python. He has also tackled hardware such as the Xbox, Xbox 360, Windows Phone, Android, Game Boy Advance and Pocket PC. He can be reached at www.jharbour.com.

Inside This Book (Learn More)
Browse Sample Pages
Front Cover | Copyright | Table of Contents | Excerpt | Index
Search inside this book:

Sell a Digital Version of This Book in the Kindle Store

If you are a publisher or author and hold the digital rights to a book, you can sell a digital version of it in our Kindle Store. Learn more

What Other Items Do Customers Buy After Viewing This Item?

Customer Reviews

4 star
3 star
2 star
3.0 out of 5 stars
3.0 out of 5 stars
Most helpful customer reviews
5.0 out of 5 stars Great book Jan. 8 2014
Format:Paperback|Verified Purchase
Fantastic book, it taught me a ton, I really enjoyed it. Artist is also a really bright guy who answered my questions.
Was this review helpful to you?
1.0 out of 5 stars Very disapointed with quality of content April 30 2011
By Dan
Roughly the first quarter of the book is spent with encouragements and teaching Java basics. The pages have lots of spacing and images, there is also explanations of Java basics throughout the book so there is very little true content. Less than half of the book material is about game programming as this book is also about teaching Java basics.

This book is also not a good recommendation for those learning the Java language as it has very poor programming style. I have read the first 3 quarters of the book and tossed it aside as it has very poor style. I have since purchased "Killer Game Programming in Java" by Andrew Davison and am very impressed with that book (it is not intended for someone learning Java but you could purchase a separate book for learning Java that teaches proper style). I purchased "Beginning Java SE 6 Game Programming" thinking that it was the latest Java book on game programming but don't let the title fool you, "Killer Game Programming" was written when Java SE 5 was around but it is a much better book on actual game programming.
Was this review helpful to you?
Most Helpful Customer Reviews on Amazon.com (beta)
Amazon.com: 3.3 out of 5 stars  13 reviews
20 of 21 people found the following review helpful
2.0 out of 5 stars Provides Some Information Feb. 18 2011
By Kenneth W. Brown - Published on Amazon.com
Format:Paperback|Verified Purchase
Sadly, this is probably one of the best Java game programming books out there, but there is much more to be desired. Being a Java developer, this was perfect for my needs. The book provided the methods of game programming logic that I needed. Unfortunately, even if you're a beginning Java programmer, I would suggest something else. If you don't want to write Java web-applets (which I don't even know many that do), or at least pair it with something that will teach you programing Java applications.

Even though it is known that you need to understand Java, this book takes that statement even further. At the beginning, the author wastes two chapters rambling about things you would find in a beginning Java book, and then contradicts himself a couple paragraphs later. Not only that, bits of code, like the initializing html file for Java applets is mentioned before you even need it; then never brought up again when you actually need the code. After half a chapter of different IDEs for Java, you're given code, and instructions that don't even work for setting up a text editor claiming to be an IDE.

Ignoring these things, I continued on through the book, only to realize that it was even more clumsy than I thought. Once you start entering code, and get to the point of testing; hope that you did not mess anything up through the pages of inconsistent spacing, and poor programming; because the author neglected to provide any way to find the sources for the book. After using a search engine as a citing resource, then traversing his site; I found the source code from the 2nd edition, that was exactly the same code as the only code for the 3rd edition. Even when everything is working well, instead of sticking with one topic, the author jumps around, distracting you from the main program (which is progressively created throughout the entire book), by putting various different demonstration projects in between; which could have been presented before the main project. In the end, after reading lots of posts about missing blocks of code from readers, resulted in reading the logic to use in my own projects; ignoring the provided project completely.

I hope that the author takes more time on the 4th edition, actually making changes to the text, providing links to code, omitting wasted space, possibly giving a bit more of a clear understanding to needed code, and using an IDE the majority uses. Even being a new book, the programming is outdated, and lacking in good practice. It surprises me that an actual "Course Study" publisher would allow a book like this to go through without any sort of editing, but I've come to the conclusion that the "ptr" in the publisher's name, actually means "Public Test Release"; not "Professional Technical Resource".
3 of 3 people found the following review helpful
4.0 out of 5 stars Java SE 6 Game programming, Third Edition March 17 2011
By Dave H - Published on Amazon.com
Format:Paperback|Verified Purchase
Reading this book, I have come to notice that the author is very disorganized and like to stray off subject in this book. It offers sum notoriety onto how java works, but it fails to explain. if you have read a basic java book you will be fine, if not make it a point to order a reference book to look back to for help.

If you have read a java book or have one at your side well reading this, you will learn alot of intresting things that are overlooked in other books. I was looking for a book to show me what i needed to know to make a game, and i found it. This book will show you how to creat 2D Java Apllets and Java Aplications.
1 of 1 people found the following review helpful
3.0 out of 5 stars Get a java primer book first!!! June 20 2012
By Jordan - Published on Amazon.com
Format:Paperback|Verified Purchase
You're searching amazon for a "learn java through game programming book" when you find this great one! Only one problem... it asumes you already have a base knowledge of java.
Get a java primer book. Take the extra time to learn about the syntax and basic build of the java language, then come back to buy this one.
End result 3 outta five.
1 of 1 people found the following review helpful
5.0 out of 5 stars Lucid and Actually Fun Sept. 15 2011
By Sean W. - Published on Amazon.com
This book is about what is says. Straight up game programming. There is no fluff about it. Not like the other books which give you a bunch of theory, Jonathon is straight to the point. When you are finished reading this book, you will have written a clone of the 1980's Asteroid Game with sound and everything. While not required, a physics background does help for some of the explanations. I have read 4 of Jonathon's books and am reading his book on Python right now. Definitely an author to check out!!! You won't be sorry.
5 of 7 people found the following review helpful
4.0 out of 5 stars Java SE 6 Game Programming is a mystery no more April 18 2011
By Jacek Laskowski - Published on Amazon.com
I'd never been engaged in any game development affair, but I kept remembering the days when I was thinking what it'd take to develop a game in Java.

A few weeks before a conference where I'm showing up with Clojure with the aim to highlight it as "a Java library for some concurrency improvements" (from "What is your opinion on Clojure?" at StackOverflow), the idea of performing game development with Clojure on stage crossed my mind. At that time I considered game development as a tough exercise, mostly for its heavy use of threads and concurrency, and I didn't feel well-prepared to tackle it (which was the reason to pick up Clojure in the first place). That's when I stumbled upon "Beginning Java SE 6 Game Programming, Third Edition" by Jonathan S. Harbour. It quickly caught my attention and I spent the whole weekend to have read the book.

After a glimpse at the table of contents, I crossed out the first two chapters (which seemed more concerned with introduction to Java programming language than anything else, not to mention game programming) and begun reading the Chapter 3: Creating Your First Java Game. As it turned out, the Chapter 16: Galactic War: Web Deployment wasn't worth my reading either where "Packaging an Applet in a Java Archive (JAR)" and "Creating an HTML Host File for Your Applet" were discussed.

The writing style was concise, engaging and easy to follow. Each and every chapter didn't take too long to finish and comprehend the content.

The Chapter 3: Creating Your First Java Game went very smoothly and was the first to let me feel empowered to develop a very first game in Java. It showed exactly what I was after meaning I could read about what Java SE classes I should use for a very simple yet complete, vector graphics game. I even wrote my very first AWT application. The others were as much valuable. The chapters were usually quite short and smooth my thinking about Java game development. By the Part III I knew everything I should to develop a game in Java SE myself. The Chapter 12: Galactic War: Sprites and Collision Boxes was crucial for the entire game project so once I was done with its understanding, the rest just let the knowledge settle down. There was the chapter 14 that was one of the most tough in the reading, and the "Enhancing Galactic War" section was one of the longest ones - the code discussed no new Java classes for game development, but merely the algorithms for power-ups, game states and such.

The book "highlighted all key lines of code in bold text so they will stand out." that greatly helped to comprehend the code and its changes. The explanation was occasionally a kind of discussion - "You might wonder, then, how is this any better than just using the listeners directly in the game's source code file? That's a good question!" ("Keyboard and Mouse Events" of "Exploring the New Galactic War Source Code" in the Chapter 14).

It's clear that the author made all the steps to provide as much valuable information about game development as possible, but I didn't manage to refuse to think that he lacked experience with Java and OO development.

I disagreed or was surprised at the very least to have read the statements about Java OO design in the book like "Whenever possible, we will forego good object-oriented design in favor of simpler source code. This is especially helpful for beginners who may have never seen a truly huge source code listing, and thus would not understand why such things are important." ("Programming Simple Sprites"). More importantly, the code like this: "public class BaseGameEntity extends Object", "(boolean)(sample != null)" ("The SoundClip Class"), "(The default, if you do not specify it, is public.)" that referred to the package protected qualifier ("Getting Started with Java Sound") or "The Random class is located in the java.awt.util" ("A Simple Loop") turned up in the book. That doesn't help beginners to learn Java when consistency is more important than a good OO design. There were more such places - "I am not a big fan of inheritance, preferring to build core functionality into each class I use." ("Creating a Reusable Sprite Class") or "Inheritance is a beautiful concept, but in practice too much of it can make a program too complicated." ("Sprite Class Source Code"), "In a game project, often those get and set methods just hurt productivity." ("Encapsulating Sprite Animation in a Class"), "This is not pure object-oriented programming (OOP) by any means--we give up some security for versatility and just count on programmers who use the class to know what they're doing. Getting the job done while writing good, clean code is often the rule in a programming team!" I could understand the reasons behind these decisions, but I think it's unacceptable when the book's purpose is to learn Java programming too. There were more similar examples.

What turned out to be the main deficiency of the book was that the author didn't resist describing rudimentary object-oriented constructs like inheritance or composition. The author couldn't present all the Java and object-oriented programming aspects in those first two chapters and let them be scattered throughout the entire book. It was really annoying.

In the Chapter 6: Simple Sprites I had to go over the classes to be able to learn how to develop a game in Java SE, even though the "What You Have Learned" sections highlighted these topics. I'd wished it'd have been examined in the text along the code. Nothing about "How to detect sprite collision" - the code contained the answers and one could overlook it easily unless paid attention to detail.

I appreciated when the author provided his insights on different aspects of game design, e.g. "Over the years I have seen many techniques for sprite animation." ("Sprite Animation") and "I experimented with quite a few different ways to do this, and I came up with a solution that is versatile but not totally internal to the Game class." (Chapter 14: "Galactic War: Entity Management") or Java itself, e.g. "I've used several threading libraries[...]and it's not very easy to use at all compared to Java's built-in support for threads." ("Examining Multithreading").

It really helped to grasp the concept of an animation strip when the author went as far as to develop a self-contained class with the main method to run a sample before he enhanced the game classes - "While learning how to do animation, a single, self-contained example is helpful before we get into a class." The author greatly enhanced the way of explaining how to develop a game in Java in the Chapter 13: Galactic War: Squashed by Space Rocks with a series of a part of the code with description. Likewise, the Chapter 15: Galactic War: Finishing the Game's "Let's Talk about Power-Ups" was a series of screenshots and their explanations.

I was about to have skipped the Chapter 8: Keyboard and Mouse Input, but decided not to having hoped for a few useful tips. I found none. Neither did I find in the Chapter 9: Sound Effects and Music's "Getting Started with Java Sound".

In the "Epilogue" the author wrote: "There are so many advanced topics that we didn't have time to cover in this book, the likes of which a diehard Java programmer would have liked to see." I wish the author had discussed these advanced topics, albeit having read the book Java SE 6 Game Programming is a mystery no more. It's a book I would surely recommend.
Search Customer Reviews
Only search this product's reviews

Look for similar items by category