# Architecture

## N-Layers

N-Layers architecture divides the application into isolated layers, each of them only knows the one above or below it.

For example: presentation - business - data layers.

## Model-View-Controller

Similar to the N-Layer, it is a simple architecture for interactive applications.

## Client-Server

Splits the project into a server which handles the application business and clients which communicate with it.

## Event-Driven

Event-driven architectures are designed around messages, called events, which are generated, transmitted and consumed in reaction to changes in the application.

It is used for example in UIs.

## Additional Information

* [Wikipedia's Software Architecture](https://en.wikipedia.org/wiki/Software_architecture)
