Dokument Architektura » Historie » Revize 2
Revize 1 (Tomáš Květoň, 2021-04-30 10:00) → Revize 2/4 (Miroslav Krýsl, 2021-05-26 12:02)
h1. Architektura projektu
h2. Use cases pluginu
!genealogy_usecase.png!
h2. Souborová struktura
Souborová struktura dodržuje standard předepsaný pro plugin WordPress.
Projekt je rozdělený do několika hlavních sekcí:
* admin
** _Front-End pro administrátorskou část pluginu._
* common
** _Sdílená logika projektu pro Front-End._
* includes
** _Sdílená logika projektu pro Back-End._
* public
** _Front-End pro uživatelskou část pluginu._
!Untitled%20Diagram%20%281%29.png!
h2. Jmenná konvence
V celém projektu pluginu je dodržována jmenná konvence nastavená pro plugin WordPress.
h2. Proces zpracování uživatelských požadavků
Níže uvedený diagram zobrazuje průběh zpracování uživatelského požadavku.
!Untitled%20Diagram.png!
h2. Důležité výčetní typy
Je velmi důležité dodržovat používání těchto výčetních typů pro zachování přehlednosti kódu a snadnou udržitelnost.
Výčetní typy poskytují textovou reprezentaci, kterou lze snadno změnit bez nutnosti většího zásahu do kódu pluginu.
Každý tento výčetní typ má svoji podobu ve verzi pro skripty v JS a PhP.
h3. Name Types
@common/js/enums/name_types.js@, @includes/enums/GT_Name_Type.php@
h3. Request Types
@common/js/enums/request_types.js@, @includes/enums/GT_Request_Type.php@
Pro stranu „front-endu“ je zde definován výčet selektorů, které jsou nezbytné či klíčové pro nutnou funkčnost pluginu.
Obsahuje primárně ID selektory důležité pro hlavní funkcionalitu pluginu.
Z důvodu přehlednosti se na místo běžné textové reprezentace používají tyto selektory, aby byla jakákoli změna ze strany šablon (HTML) velmi snadno a nebylo nutné zasahovat přímo do logické části programu.
h3. Selektory
@common/js/enums/selectors.js@