The Coder's Handbook
Table Of Contents
TABLE OF CONTENTS
UNIT ONE JAVA BASICS
0 Welcome How to use the Coder's Handbook
1 Console Output Writing print statements and using escape characters
2 Style and Comments How to make your code readable and easier to debug
3 Variables Understanding primitive types, using variables, and casting.
4 Math Using addition, subtraction, multiplication, division, and modulus.
5 Constants Why we use constants and the dangers of magic numbers
6 Conditionals Using conditionals, logical operators, and comparison operators
7 Strings Using Strings, comparisons, immutability and concatenation.
8 Console Input Using the Scanner class to read input from the console
9 Methods Writing methods with parameters and return values.
10 Random Using Math.random() to generate random numbers
11 Loops How to write for loops, while loops, do-while loops, and branching
UNIT TWO RECURSION AND ARRAYS
12 Recursion How and why you might want to write a recursive method
13 Arrays How to use both one and two dimensional arrays
14 Sorts and Searches Learn about Big O Notation and how to search and sort efficiently
15 Exceptions Using try, catch, and throw to handle errors
16 Reading Files Consider three examples of how to read files using Scanner
17 Objects Study classes, scope, constructors, this, public, private and static
UNIT THREE GRAPHICS AND OOP
18 Setup Eclipse + Slick 2D Setting Up Your Development Environment
19 Shapes, Color, and Text Draw shapes, change colors, and display text in Slick 2D
20 Mouse and Keyboard Use both the event handlers and directly poll for input
21 Game States Adding Game States to your Slick2D Game project
22 ArrayLists How to use ArrayLists in Java
23 For Each Loops A handy shorthand for looping through collections
24 Fonts How to draw text in different fonts and sizes
25 Images How to add an image to your Slick2D project
26 Sprites and Animation Use Sprite Sheets and make simple animations in your program
27 Perlin Noise Learn about using noise algorithms to generate natural terrain
28 Inheritance Learn about superclasses, subclasses, and code reuse!
29 Abstract Classes Learn how the power of abstract classes and abstract methods
30 Polymorphism <WORK IN PROGRESS>