In order to get started with A*, we'll have to take the concepts and apply them as concrete implementations in the code. In our sample code, we break the A* system into a few key components: the Node, GridManager, PriorityQueue, and AStart classes.
Let's break down what each class does in the following few sections.