Projekt

Obecné

Profil

Konvence » Historie » Verze 23

Martin Šebela, 2020-04-13 21:43

1 1 Martin Šebela
h1. Konvence
2
3
h2. Redmine
4
5 23 Martin Šebela
* délka jedné *iterace* jsou *2 týdny*
6 22 Martin Šebela
* každý si sám za sebe *eviduje strávený čas*, při jeho evidenci *zvýší počet procent* v daném úkolu a *přidá poznámku* k úkolu o tom, co se řešilo
7 2 Martin Šebela
* *úkoly* může *vytvářet* každý z členů týmu (typicky na začátku na iterace při jejím plánování)
8 6 Martin Šebela
* *společné úkoly* se budou uzavírat až po společné diskuzi s týmem (např. po _Weekly update_ či po jiné schůzi) a teprve poté se budou nastavovat na status *closed*
9 3 Martin Šebela
* úkoly pro menší počet členů může zavírat osoba, která úkol dokončuje
10 1 Martin Šebela
11 4 Martin Šebela
h2. Komunikační kanály
12
13
* textová komunikace *mezi členy týmu* probíhá přes *Slack* v různých kanálech (podle tématu), schůzky přes *Hangouts*
14
* textová komunikace *se zákazníkem a mentorem* se řeší přes *e-mail*, schůzky probíhají přes *Hangouts*
15 1 Martin Šebela
16 7 Martin Šebela
h2. Produkční a testovací prostředí
17 1 Martin Šebela
18 7 Martin Šebela
* k produkčnímu i testovacímu prostředí je možné se přihlásit jen pomocí vlastního *SSH klíče*, detaily jsou uvedeny v sekci [[Deployment]]
19
* autorizace pomocí hesla není z důvodu bezpečnosti povolena
20
21
h2. Repozitář zdrojového kódu
22
23
* vzdálený *repozitář zdrojového kódu* vytvářené aplikace je veden na katedrální instanci _GitLab_:
24 1 Martin Šebela
** https://gitlab.kiv.zcu.cz/aswi/aswi-2020/aswi2020sebela
25
26 8 Martin Šebela
h2. Konvence pro vývoj – IDE, code style
27 7 Martin Šebela
28 6 Martin Šebela
* používané *IDE*: *VSCode*
29 7 Martin Šebela
* použitá rozšíření v IDE:
30 5 Tomáš Ballák
** *php-intellisense*
31
*** odkaz: https://marketplace.visualstudio.com/items?itemName=felixfbecker.php-intellisense
32
*** umožňuje detailnější napovídání při psaní kódu v php
33 9 Tomáš Ballák
** *phpcs fixer*
34
*** odkaz: https://github.com/junstyle/vscode-php-cs-fixer
35 5 Tomáš Ballák
*** hlídá přednastavený standard pro psaní kódu
36
*** při jeho porušení, sám chyby opraví
37 11 Tomáš Ballák
* pro vývoj v php, je nastaven striktně standard *PSR-2* viz https://www.php-fig.org/psr/psr-2/
38
* standard je hlídán při každém @push@ do repozitáře, pomocí gitlab runneru
39 19 Tomáš Ballák
** při případném porušení tohoto standardu pipepline spadne a nedovolí tak deploy aplikace na produkční server, více na [[Deployment]]
40 20 Tomáš Ballák
* pro podrobnější přehled o konfigurace navštivte [[Development]]
41 12 Tomáš Ballák
h3. Standard PSR-2
42 13 Tomáš Ballák
43
* staví na *PSR-1*
44
* odsazování *4 mezery*
45
* doporučená *délka řádky je 80 znaků*
46
* po deklaraci @namespace@ a po bloku s @use@ deklaracemi má být *1 prázdná řádka*
47 15 Tomáš Ballák
* otevírací složené závorky pro @class@ a @function@ musí být na *nové řádce* *NEPOUŽÍVÁME*
48
* uzavírací složené závorky pro @class@ a @function@ musí být na *nové řádce* za tělem těchto entit
49 14 Tomáš Ballák
* *viditelnost musí být deklarována* na všech *atributech* a *metodách*
50 1 Martin Šebela
* @abstract@ a @final@ musí být *deklarovány před viditelností*
51 14 Tomáš Ballák
* kontrolní struktury @if@, @while@, atd. musí mít *za sebou mezery*, *metody* a *funkce* naopak *nesmí*
52 15 Tomáš Ballák
* otevírací složené závorky *kontrolních struktur musí být na stejné řádce*, uzavírací na *novou řádku* za tělem struktury
53 17 Tomáš Ballák
* *otevírací závorky* pro kontrolní struktury *nesmí mít za sebou mezeru*
54 18 Tomáš Ballák
* *uzavírací závorky* pro kontrolní struktury *nesmí mít před sebou mezeru*
55 21 Tomáš Ballák
56
h2. Konvence pro verzování
57
58
* pojmenování větví
59
** *feature*: @feature/id-v-readmine/nazev-vetve@
60
** *bug*: @bug/id-v-readmine/nazev-vetve@
61
** *hot-fix* (malý technický problém, který lze vyřešit jednoduchou opravou): @hotfix/nazev-vetve@
62
* pro každou feature nebo bug, vytvořit *merge request*, na který by se měl ideálně kouknout aspoň jeden člověk
63
** ten by měl udělat @merge@ na master pomocí tlačítka na gitlabu
64
* u každého merge requestu by mělo být zaškrtnuto následující:
65
** *Remove source branch whem merge request is accepted*
66
** *Squash commits when merge request is accepted*
67
* přímý @push@ do masteru je dovolen pouze pro *hot-fix*