Projekt

Obecné

Profil

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@