this is for holding javascript data
Michal edited Requirements.md
about 9 years ago
Commit id: b0d8700eb41052885c169f67c9fe4dbd276d364d
deletions | additions
diff --git a/Requirements.md b/Requirements.md
index 9ca40a1..2386be6 100644
--- a/Requirements.md
+++ b/Requirements.md
...
# Požadavky na systém
#
2 Použité technologie
##
2.1 MEAN Stack
Mean stack je soubor technologií (MongoDB, Express, AngularJS, Node.js), založených na JavaScriptu, které se používají k tvorbě webových aplikací. Umožňujě tvořit servery i klienty. Klient komunikuje se serverem pomocí rest api. Mezi hlavní přednosti patří rychlost, jednoduchost a testovatelnost.
###
2.1.1 AngularJS
Angular je MVC framework pro tvorbu webových aplikací. Výrazně usnadňuje práci a také podporuje vysokou modularitu a testovatelnost. Vzhled prezentační vrstvy můžeme ovládat pomocí direktiv. Direktivy určují, jak bude zacházeno s modelem. Zapisujeme je jako atributy HTML značek. Pokud máme například model items a chceme položky vypsat do seznamu, použijeme direktivu ng-repeat.
`
- {{item}}
...
Angular umožňuje i tvorbu uživatelských direktiv, což zjednodušuje znovupoužitelnost kódu.
Další výhodou angularu je two-way data binding. Two-way data binding zajišťuje synchronizaci modelu a prezentační vrstvy. Změna modelu se tedy okamžitě projeví na obrazovce.
Angular za nás také řeší závislosti mezi jednotlivými komponentami pomocí dependenci injection.
### 2.1.2 Node.JS
Node je prostředí, umožňující běh JavaScriptu mimo webový prohlížeč, využívané zejména pro běh back-end serverů pro webové aplikace.
### 2.1.3 Express
Express je NPM balíček pro tvorbu webových serverů.
### 2.1.4 MongoDB
MongoDb je dokumentově orientovaná databáze. Jedná se o NoSQL databázi. Data se ukládají do dokumentů, které jsou tříděny do kolekcí. Filozofie spočívá v tom, že data, která spolu souvicí, jsou uložena v jednom dokumentu a měla by odpovídat požadovaným dotazům na databázi. Při dotazu na databázi tedy obvykle vracíme jen jeden dokument, což je mnohem snažší a rychlejší, než v klasických SQL databázích.