Design Patters

Behavioral Design Patterns

Notes on behavioral design patterns: memento, state, iterator, strategy, template method, command, observer, mediator, chain of responsibility, and visitor.

Design Patters

Structural Design Patterns

Notes on structural design patterns: composite, adapter, decorator, facade, flyweight, bridge, and proxy.

Data Structures

Hash Tables

Notes on hash tables: hash functions, collisions, implementation, common operations, etc.

Data Structures

Arrays and Linked Lists

Notes on linked lists and arrays: definitions, features, implementation in Java and JavaScript, singly and doubly linked lists, circular linked lists, common operations, etc.

Data Strucutures


Notes on trees: definitions, binary trees, binary search trees, implementation, breadth-first search, depth-first search, pre-order, in-order and post-order traversal, common operations, etc.

Data Strucutures

Stacks and Queues

Notes on stacks and queues: definition, common operations, implementation, etc.


Old Notes on Will Sentance's JavaScript Hard Parts Series

Old notes on Will Sentance's JavaScript Hard Parts Series, covering JavaScript asynchronicity, execution context, prototype, scope, and assorted functional programming concepts.