PROGRAMMING GAMES WITH JAVATM (Table of Contents) uses Java GUI (graphic user interface) programming concepts while providing detailed step-by-step instructions for building many fun games. The tutorial is appropriate for both kids and adults. The games built are non-violent and teach logical thinking skills. To grasp the concepts presented in PROGRAMMING GAMES WITH JAVA, you should have experience with building Java projects and be acquainted with using the Swing control library. Our tutorial LEARN JAVA GUI APPLICATIONS will help you gain this needed exposure.
PROGRAMMING GAMES WITH JAVATM explains (in simple, easy-to-follow terms) how to build a Java game project. Students learn about project design, the Java Swing controls, many elements of the Java language, and how to distribute finished projects. Game skills learned include handling multiple players, scoring, graphics, animation, and sounds. The game projects built include, in increasing complexity (Game Screen Shots):
- Safecracker – Decipher a secret combination using clues from the computer.
- Tic Tac Toe – The classic game.
- Match Game – Find matching pairs of hidden photos – use your own photos!
- Pizza Delivery – A business simulation where you manage a small pizza shop for a night.
- Moon Landing – Land a module on the surface of the moon.
The product includes over 700 pages of self-study notes, all Java source code and all needed graphics and sound files.
MINIMUM SYSTEM REQUIREMENTS
This 11th Edition course requires Windows 10, MAC OS X, or Ubuntu Linux. You also need the ability to view and print documents saved in Microsoft Word format, and Oracle Java. To complete any of our Java tutorials, you need to license a copy of the Java Development Kit (JDK) 11th Standard Edition LTS from Oracle and install it on your computer. Java JDK11 LTS can be downloaded from the Oracle Java website. This Oracle website contains complete downloading and installation instructions for the latest version of Java which is now. You can also download all Java documentation from this same site. Our 11th Edition tutorials also use the free version of NetBeans 11 as the IDE (Integrated Development Environment) for building and testing Java applications. We only support the Long Term Support (LTS) Edition of the JDK (JDK11) at this time. A newer LTS version of JDK 17 was released by Oracle on September 14, 2021 and we are our currently testing our tutorial with JDK17 LTS and NetBeans 14. We hope to release an updated JDK 17 LTS & NetBeans 14 Tutorial in late 2022. We do not support interim (non-LTS) JDK versions.
Tutorial Review by Alan Payne, A Computer Science Teacher:
What is “Programming Games with Java” and how it works.
The lessons are a highly organized and well-indexed set of game design tutorials meant for high school students and young adults entering post-secondary studies in Computer Science. NetBeans, a specific IDE (Integrated Development Environment) is used to create Console (text-only) or GUI (Graphical User Interface) applications by employing the Swing Class Controls of Java Software Development Kit (JDK) Version 11.
The tutorials provide the benefit of completed age-appropriate applications – fully documented projects from the teacher’s point of view. That is, while full solutions are provided for the instructor’s benefit, the projects are presented in an easy-to-follow set of lessons explaining object-oriented programming concepts, Java Swing controls, the rational for the GUI layout, coding design and conventions, and specific code related to the problem.
Learners may follow tutorials at their own pace. The finished product is the reward, but the student is fully engaged and enriched by the process. This kind of learning is often the focus of teacher training. Every Computer Science teacher knows what a great deal of preparation is required for projects to work for senior students. With these tutorials, the research behind the projects is done by an author who understands the classroom experience. That is extremely rare!
With these projects, there are lessons providing a comprehensive understanding of Java JDK 11 language basics – where to get it, how to install it. Installation and file management within the NetBeans IDE is fully explained. Detailed instruction in Java-specific GUI (the Swing Class) includes Frames, Buttons, Labels, TextFields, TextAreas, CheckBoxes, RadioButtons, ComboBoxes, Lists, Scroll Bars, and Panels fully prepares the learner for Java game design. Finally, user-defined classes and methods form the basis of object-oriented instruction necessary to complete your own Java games.
While the NetBeans environment is ideal for the high school programmer, these tutorials are written to provide the best foundation to learn programming concepts in Computer Science – regardless of the language. Correct object-oriented terminology is emphasized throughout the lessons – making them exceedingly valuable for young and experienced learners alike.
Learners will see how lessons in one object-oriented language apply in ALL object-oriented languages.
The learner may follow the tutorials at their own pace while focusing upon context relevant information. The finished product is the reward, but the student is fully engaged and enriched by the process. This kind of learning is often the focus of teacher training. Every computer science teacher knows what a great deal of work is required for projects to work in this manner.
Graduated Lessons for Every Project … Lessons, examples, problems and projects. Graduated learning. Increasing and appropriate difficulty… Great results.
With these projects, there are lessons providing a rich background on the programming topics to be covered. Once understood, concepts are easily applicable to a variety of applications. Then, specific examples are drawn out so that a learner can practice the correct Java syntax in NetBeans. Finally, a summative game program for the chapter is presented. Game design is broken down into manageable parts – the logical solution to the problem, the design of the Java Swing Class graphical user-interface and supporting classes (blue prints for user-defined object types) and methods (subroutines) come together in the finished product.
Students are fully engaged and appropriately challenged to become independent thinkers who can come up with their own project ideas, design their own text-only (Java Console) or GUI (Java Swing Class) interfaces, and do their own coding. Once the process is learned, then student engagement is unlimited! I have seen student literacy improve dramatically as they cannot get enough of what is being presented.
Indeed, lessons encourage accelerated learning – in the sense that they provide an enriched environment to learn computer science, but they also encourage accelerating learning because students cannot put the lessons away once they start! Computer Science provides this unique opportunity to challenge students, and it is a great testament to the authors that they are successful in achieving such levels of engagement with consistency.
My history with the Kidware Software products.
I have used single license or shareware versions for over a decade to keep up my own learning. By using these lessons, I am able to spend time on things which will pay off in the classroom. I do not waste valuable time ensconced in language reference libraries for programming environments and help screens which can never be fully remembered! These game-design projects are examples of how student projects should be as final products – thus, the pathway to learning is clear and immediate.
The exciting thing is that all of the above can be done in Java, Small Basic or Visual Studio languages – Visual Basic, Visual C# or Visual C++. To go from one language to another is now an inevitable outcome!
With these lessons, I am able to concentrate on the higher order thinking skills presented by the problem, and not be chained to a language reference in order to get things done!
Meet Different State and Provincial Curriculum Expectations and More
Different states and provinces have their own curriculum requirements for Computer Science. With the Kidware Software products, you have at your disposal a series of projects which will allow you to pick and choose from among those which best suit your curriculum needs. Students focus upon design stages and sound problem-solving techniques from a Computer-Science perspective. In doing so, they become independent problem-solvers, and will exceed the curricular requirements of elementary, middle and secondary schools everywhere.
Useable projects – out of the box !
The accompanying lessons and specific projects covered in the Programming Games with Java tutorials are suitable for grades 10 and above. They include:
Safecracker (a numeric version of Mastermind)
Tic Tac Toe
Match Game (Concentration)
Pizza Delivery – a game emphasizing business practices
Moon Landing – emphasizing trajectory physics
As you can see, there is a high degree of care taken so that projects are age-appropriate, providing educational content in the finished games.
How to mark the projects.
In a classroom environment, it is possible for teachers to mark student progress by asking questions during the various game design and coding stages. Teachers can make their own written quizzes easily from the reference material provided, but I have found the requirement of completing projects (mastery) sufficient for gathering information about student progress – especially in the later grades.
Lessons encourage your own programming extensions.
Once concepts are learned, it is difficult to NOT know what to do for your own projects.
Having used Kidware Software tutorials for the past decade, I have been successful at the expansion of my own learning to other platforms such as XNA for the Xbox, or the latest developer suites for tablets and phones. I thank Kidware Software and its authors for continuing to stand for what is right in the teaching methodologies which not only inspire, but propel the self-guided learner through what can be a highly intelligible landscape of opportunities.
Alan Payne, B.A.H., B.Ed.
TA Blakelock High School