Programming Techniques

On this page you can find useful techniques for programming like Design Patterns and information on Data Structures or Error Handling.

Behavioral Patterns

 * Observer Creating loose, event driven object relationships where many objects need to be notified by one object.
 * Strategy Supplying different variants of an algorithm in a class.
 * Template Method Supplying an algorithm that multiple classes can define parts of.
 * Command
 * Memento

Creational Patterns

 * Singleton Implementing a class that has exactly one instance.
 * Factory
 * Prototype

Structural Patterns

 * Composite Combining several objects into an object that has the same behavior as its parts.
 * Decorator

Usability Patterns

 * Magnetism Making it easier and less fustrating to do precise targeting.
 * Shield Preventing that a critical action is performed by accident.

Data Structures

 * Arrays
 * Binary heaps
 * Bit Vectors
 * Hash tables
 * Linked lists
 * Queues
 * Stacks
 * Trees
 * Balanced binary trees
 * BSP trees
 * Octrees and quadtrees