|
1 | | -Editory & nástroje |
2 | | -****************** |
3 | | - |
4 | | -.[perex] |
5 | | -Můžete být zdatný programátor, ale teprve s dobrými nástroji se z vás stane mistr. V této kapitole najdete tipy na důležité nástroje, editory a pluginy. |
6 | | - |
7 | | - |
8 | | -IDE editor |
9 | | -========== |
10 | | - |
11 | | -Rozhodně doporučujeme pro vývoj používat plnohodnotné IDE, jako je třeba PhpStorm, NetBeans, VS Code, a nikoliv jen textový editor s podporou PHP. Rozdíl je opravdu zásadní. Není důvod se spokojit s pouhým editorem, který sice umí obarvovat syntaxi, ale nedosahuje možností špičkového IDE, které přesně napovídá, hlídá chyby, umí refaktorovat kód a spoustu dalšího. Některé IDE jsou placené, jiné dokonce zdarma. |
12 | | - |
13 | | -**NetBeans IDE** má podporu pro Nette, Latte a NEON už vestavěnou. |
14 | | - |
15 | | -**PhpStorm**: nainstalujte si tyto pluginy v `Settings > Plugins > Marketplace` |
16 | | -- [Nette |https://plugins.jetbrains.com/plugin/28342-nette] |
17 | | -- [Latte |https://plugins.jetbrains.com/plugin/24218-latte-support] nebo [Latte Pro |https://plugins.jetbrains.com/plugin/19661-latte-pro] |
18 | | -- [NEON |https://plugins.jetbrains.com/plugin/28338-neon] nebo [NEON / Nette support |https://plugins.jetbrains.com/plugin/18387-neon-nette-support] |
19 | | -- Nette Tester |
20 | | - |
21 | | -**VS Code**: najděte v marketplace "Nette Latte + Neon" plugin. |
22 | | - |
23 | | -Také si propojte Tracy s editorem. Při zobrazení chybové stránky pak půjde kliknout na jména souborů a ty se otevřou v editoru s kurzorem na příslušné řádce. Přečtěte si, [jak systém nakonfigurovat|tracy:open-files-in-ide]. |
24 | | - |
25 | | - |
26 | | -PHPStan |
27 | | -======= |
28 | | - |
29 | | -PHPStan je nástroj, který odhalí logické chyby v kódu dřív, než jej spustíte. |
30 | | - |
31 | | -Nainstalujeme jej pomocí Composeru: |
32 | | - |
33 | | -```shell |
34 | | -composer require --dev phpstan/phpstan |
35 | | -``` |
36 | | - |
37 | | -Vytvoříme v projektu konfigurační soubor `phpstan.neon`: |
38 | | - |
39 | | -```neon |
40 | | -parameters: |
41 | | - paths: |
42 | | - - app |
43 | | - |
44 | | - level: 8 |
45 | | -``` |
46 | | - |
47 | | -A následně jej necháme zanalyzovat třídy ve složce `app/`: |
48 | | - |
49 | | -```shell |
50 | | -vendor/bin/phpstan analyse |
51 | | -``` |
52 | | - |
53 | | -Vyčerpávající dokumentaci najdete přímo na [stránkách PHPStan |https://phpstan.org]. |
54 | | - |
55 | | -Aby byl PHPStan na Nette kódu ještě chytřejší, nainstalujte si také [Nette PHPStan Rules |tools:phpstan-rules]. Přidá přesnější návratové typy Nette helperů, zúží typy komponent a formulářových prvků, odstraní nemožné `|false`/`|null` z mnoha nativních PHP funkcí a ztiší známá falešná hlášení specifická pro Nette. |
56 | | - |
57 | | - |
58 | | -Code Checker |
59 | | -============ |
60 | | - |
61 | | -[Code Checker|tools:code-checker] zkontroluje a případně opraví některé z formálních chyb ve vašich zdrojových kódech: |
62 | | - |
63 | | -- odstraňuje [BOM |nette:glossary#BOM] |
64 | | -- kontroluje validitu [Latte |latte:] šablon |
65 | | -- kontroluje validitu souborů `.neon`, `.php` a `.json` |
66 | | -- kontroluje výskyt [kontrolních znaků |nette:glossary#Kontrolní znaky] |
67 | | -- kontroluje, zda je soubor kódován v UTF-8 |
68 | | -- kontroluje chybně zapsané `/* @anotace */` (chybí hvězdička) |
69 | | -- odstraňuje ukončovací `?>` u PHP souborů |
70 | | -- odstraňuje pravostranné mezery a zbytečné řádky na konci souboru |
71 | | -- normalizuje oddělovače řádků na systémové (pokud uvedete volbu `-l`) |
72 | | - |
73 | | - |
74 | | -Composer |
75 | | -======== |
76 | | - |
77 | | -[Composer] je nástroj na správu závislostí v PHP. Dovoluje nám deklarovat libovolně složité závislosti jednotlivých knihoven a pak je za nás nainstaluje do našeho projektu. |
78 | | - |
79 | | - |
80 | | -Requirements Checker |
81 | | -==================== |
82 | | - |
83 | | -Šlo o nástroj, který testoval běhové prostředí serveru a informoval, zda (a do jaké míry) je možné framework používat. V současnosti je Nette možné používat na každém serveru, který má minimální požadovanou verzi PHP. |
| 1 | +{{redirect: tools:cs:ide}} |
0 commit comments