# Abstract

# Table of Contents

- [Introduction](01-Introduction)
  - [About Web Development](01-Introduction#about-web-development)
  - [Purpose](01-Introduction#purpose)
  - [Methodology](01-Introduction#methodology)
  - [Scope](01-Introduction#scope)
  - [Coding Conventions](01-Introduction#coding-conventions)
- [DOM](02-DOM)
  - [Manipulating the DOM](02-DOM#manipulating-the-dom)
  - [Event-Driven Actions](02-DOM#event-driven-actions)
  - [Testable Units](02-DOM#testable-units)
  - [Use Cases](02-DOM#use-cases)
  - [Difficulties/Restrictions](02-DOM#dfficulties-/-restrictions)
- [Virtual DOM](03-Virtual-DOM)
  - [Creating a Virtual DOM](03-Virtual-DOM#creating-a-virtual-dom)
  - [Rendering](03-Virtual-DOM#rendering)
  - [Diffing](03-Virtual-DOM#diffing)
  - [Testability](03-Virtual-DOM#testability)
  - [Use Cases](03-Virtual-DOM#use-cases)
  - [Problems/Restrictions](03-Virtual-DOM#problems-/-restrictions)
- State Management
- MVC
- Conclusion
