Projekt

Obecné

Profil

Dokument Architektura » Historie » Verze 2

Miroslav Krýsl, 2021-05-26 12:02

1 1 Tomáš Květoň
h1. Architektura projektu
2
3 2 Miroslav Krýsl
h2. Use cases pluginu
4
5
!genealogy_usecase.png!
6
7 1 Tomáš Květoň
h2. Souborová struktura
8
9
Souborová struktura dodržuje standard předepsaný pro plugin WordPress.
10
Projekt je rozdělený do několika hlavních sekcí:
11
* admin
12
** _Front-End pro administrátorskou část pluginu._
13
* common
14
** _Sdílená logika projektu pro Front-End._
15
* includes
16
** _Sdílená logika projektu pro Back-End._
17
* public
18
** _Front-End pro uživatelskou část pluginu._
19
20
!Untitled%20Diagram%20%281%29.png!
21
22
h2. Jmenná konvence
23
24
V celém projektu pluginu je dodržována jmenná konvence nastavená pro plugin WordPress.
25
26
h2. Proces zpracování uživatelských požadavků
27
28
Níže uvedený diagram zobrazuje průběh zpracování uživatelského požadavku.
29
30
!Untitled%20Diagram.png!
31
32
h2. Důležité výčetní typy
33
34
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.
35
Výčetní typy poskytují textovou reprezentaci, kterou lze snadno změnit bez nutnosti většího zásahu do kódu pluginu.
36
Každý tento výčetní typ má svoji podobu ve verzi pro skripty v JS a PhP.
37
38
h3. Name Types
39
@common/js/enums/name_types.js@, @includes/enums/GT_Name_Type.php@
40
41
h3. Request Types
42
@common/js/enums/request_types.js@, @includes/enums/GT_Request_Type.php@
43
44
Pro stranu „front-endu“ je zde definován výčet selektorů, které jsou nezbytné či klíčové pro nutnou funkčnost pluginu.
45
Obsahuje primárně ID selektory důležité pro hlavní funkcionalitu pluginu.
46
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.
47
48
h3. Selektory
49
@common/js/enums/selectors.js@