PhpStorm

komerční multi-platformní vývojové prostředí

PhpStorm je komerční multi-platformní vývojové prostředí (IDE) pro PHP[2] vyvíjený českou společností JetBrains. Ačkoliv je vyvíjen českou společností, jediný jazyk, ve kterém je možné jej používat je angličtina [3]

PhpStorm
Logo
VývojářJetBrains s.r.o.
První vydání2009; před 4882 dny
Aktuální verze2021.3.3 (17.  března 2022; před 59 dny[1])
Operační systémMicrosoft Windows, Mac OS X, Linux
Vyvíjeno vJava
Typ softwaruvývojové prostředí
LicenceKomerční Proprietární software
Webwww.jetbrains.com/phpstorm/
Některá data mohou pocházet z datové položky.

PhpStorm nabízí editor pro PHP a další jazyky (JavaScript, CSS, HTML, SQL, JSON, YAML, XML a další, včetně jejich variací) s analýzou kódu v reálném čase, prevencí chyb a automatickým formátováním. PhpStorm umožňuje našeptávání kódu ve verzích PHP vyšších než 5.3[4], včetně doplňování kódu generátorů, cyklů, metod, polí a dalších.

Software PhpStorm je naprogramovaný v jazyce Java. Uživatelé mohou dále rozšiřovat funkcionalitu instalací rozšíření z tržiště, či vyvíjet rozšíření vlastní.

PhpStorm v sobě obsahuje všechny funkce software WebStorm, odlehčeného editoru pro HTML/CSS a doplňuje ji funkcemi pro vývoj v PHP včetně databází a SQL.[5]

Klíčová funkcionalitaEditovat

PHP editorEditovat

  • PhpStorm nabízí komplexní editor kódu pro PHP se zvýrazněním syntaxe
  • Podpora PHP 5.3 a novějších umožňuje použití v moderních i starších projektech.
  • Našeptávač doplňuje třídy, metody, jména proměnných, PHP výrazy, plus typicky používané názvy atributů a proměnných na základě jejich typů.
  • Podpora stylů zápisu kódu (PSR1/PSR2, Drupal, Symfony, Zend Framework).
  • Podpora PHPDoc komentářů. IDE umí našeptávat a doplňovat kód na základě anotací v komentářích.
  • Detekce duplicitního kódu.
  • PHP Code Sniffer (phpcs) kontrolující tzv. pachy v kódu.
  • Refaktorování (rename, introduce, inline, Move Static Member, Extract Interface).
  • editace Smarty a Twig šablon.
  • MVC pohledy pro Symfony.
  • PHAR podpora.

Vývojové prostředíEditovat

  • SQL a databázová podpora (úpravy schématu databáze, generování databázových migrací, export výsledků dotazů do souboru či schránky, editování uložených procedur, atd.).
  • Vzdálená manipulace souborů na serveru přes FTP, SFTP, FTPS a další s automatickou synchronizací (možnost nastavit přesun změn z lokálního prostředí na server).
  • integrace verzování (Git, Subversion, Mercurial, Perforce, CVS, TFS) umožňující provádět commit, merge, diff, a další přímo z IDE. Je možné též sledovat historii commitů přímo v IDE a informace o úpravách konkrétních řádků kódu (annotate)
  • Lokální historie (sledování změn prováděných v IDE na lokálním projektu).
  • PHP UML (generování UML diagramů tříd pro PHP kód s možností změn rozhraní a dědičnosti přímo v diagramu).
  • Systém sledování chyb
  • Podpora pro vestavěný terminál a SSH přístup na vzdálené servery

Debugging a testováníEditovat

  • Jednoduše nastavitelný debugger (Xdebug, Zend Debugger) pro sledování průběhu programu.
  • PHPUnit testy mohou být psány přímo v PhpStormu a spuštěny v komplexním stavu, na úrovni složky, souboru i samotného testu.

Další funkceEditovat

  • PhpStorm rozpozná množství dalších jazyků se kterými se programátor může setkat – HTML, CSS, JavaScript, SQL, YAML, JSON, XML, Markdown a dalších jako jsou SASS, SCSS, Less, Typescript, Angular, Oracle SQL, MySQL, BigQuery a jiné.
  • Scratch Files

Licence a aktualizaceEditovat

V listopadu 2015 JetBrains přikročili ke změně licencování na model předplatného. PhpStorm je dostupný pro jednotlivce či firmy a organizace. Jiné zlevněné licence jsou dostupné pro start-upy a zcela zdarma pro učitele, studenty a nekomerční open source projekty. Tyto licence vyžadují schválení a po určitém čase vyprchají..

Uživatelské prostředíEditovat

Prostředí je koncipováno pro maximalizaci komfortu uživatele a přehlednosti, je tedy rozděleno do bloků. Základím blokem je editor kódu, který je vždy lokalizován na střed. Další bloky je možné otevírat vlevo, vpravo či ve spodní části. A to buď manuálně, nebo klávesovými zkratkami. Bloky je možné mít součástí hlavního okna, či jako floating okna. Dostupné bloky jsou:

  • Project
    • Project je nejspíš nejdůležitější částí, zobrazuje document tree, tedy všechny soubory v jejich dokumentové struktuře
    • Soubory jsou odlišeny podle jejich charakteristiky. Ikona určuje typ soubory, „C“ v modrém kroužku označuje třídu, „I“ v zeleném kroužku označuje interface, „T“ na fialovo šedém pozadí označuje Trait
    • Aktuálně otevřený soubor má označené pozadí pro snadnou navigaci
    • Je možné zapnout funkcionalitu sledování polohy – tedy soubor který je otevřený v editoru se automaticky ukáže na svém místě v souborové struktuře.
  • Structure
    • Structure blok obsahuje informace o aktuálně otevřeném souboru, tedy v situaci kdy obsahuje třídu, jsou zde znázorněny atributy a metody včetně jejich viditelnosti, vstupních a výstupních typů
  • Favorites
    • Výpis objektů které byly uživatelem označeny jako „oblíbené“, seznam záložek a breakpointů pro debugování
  • Git
    • Záložka lokálních měn obsahuje seznam lokálních změn které budou zahrnuty do commitu
    • Záložka log obsahuje seznam lokálních a vzdálených větví, jejich jednotlivých commitů a detailů změn v rámci každého commitu včetně data změny a autora
  • Problems
    • Seznam problémů které PhpStorm nalezl, tedy všech nalezených pachů kódu, přebytečných bloků, duplicit a gramatických chyb v názvech
  • TODO
    • Seznam TODO bloků které programátor zanechal v kódu – zaznamenány v souborové struktuře a po dvojkliku se dostane uživatel přímo na řádek ve kterém se TODO nachází
  • Terminal
    • Integrovaný terminál. Je možné nastavit rozdílné interpretery, tedy bash, shell, fish či jiný
    • Terminálů je možné otevřít víc, poté přidávají jako záložky tohoto bloku
  • Database changes
    • Změny struktury databáze před databázovým commitem
  • Event log
    • Zobrazuje chyby či stavy databáze a chyby či stav operací samotného PhpStormu. Pokud dojede například k chybě exekuce nějaké vnitřní funkcionality, je chybový výstup dostupný zde
  • Remote Host
    • Když dochází k práci se vzdálenými soubory na serveru, nachází se zde jejich výpis v připojené složce na serveru
  • Database
    • Seznam připojených konexí. Každá konexe má seznam databází, načtených tabulek, a každá tabulka pak seznam sloupců s jejich typem, popřípadě s výpisem klíčů, indexů, triggerů a dalších
    • Každý jednotlivý typ položky výpisu je možné odfiltrovat pryč, když uživatel nepotřebuje mít přehled nad určitými položkami.

Klávesové zkratky a urychlení práceEditovat

Phpstorm nabízí rozličné možnosti nastavení klávesových zkratek prakticky pro cokoliv co uživatel dělá na denní bázi, a ušetřit tak spoustu času, který by byl jinak utracený hledáním v menu aplikace.

Hledání objektu podle jménaEditovat

Toto je nejzákladnější akce, dostupná ve všech IDE od Jetbains. Defaultní zkratka pro vyvolání jsou dva údery na klávesu Shift. Phpstorm začne vyhledávat ve své zaindexované databáze souborů, tříd, metod, atributů, tabulek, akcí Php Stromu a akcí/objektů souvisejícími version control. Vzhledem k tomu, že toto je nejrychlejší cesta jak se dostat k jakémukoliv souboru či třídě, není svázána psaním celého názvu, ale pouze jeho částmi. Pokud je hledána například třída „CreateDealIncomeFromDealTemplatesCommand“, stačí psát malou část tohoto názvu. Phpstorm má rozdělený název na jednotlivé části které jsou oddělené velikým písmenem, a ví že soubor se dělí na „Create“, „Deal“, „Income“, „From“, „Deal“, „Templates“, „Command“. Pokud pak člověk vyhledává, stačí psát dohromady části tohoto názvu, například „credfrcom“ – Phpstrom najde podobnost v „cre“ pro „Create“, „d“ pro „Deal“, „fr“ pro „From“ a „com“ pro Command. Automaticky hledá v cel jeho databázi, takže pokud je více souborů které by mohly souviset s výrazem který uživatel hledá, rozstane našeptaný výpis všech a může si vybrat.

Hledání kdekoliv v kóduEditovat

Defaultní zkratka ctrl+shift+f hledá jakýkoliv výraz kdekoliv v kódu, souborech, readme. Je možné vyhledávat pouze v projektu, v testech či rekurzivně v jakékoliv složce. Navíc je možné vyhledávat i podle regulárního výrazu, a v souborech jejíž název splňuje nějaký regulární výraz, například tedy „**Command*“, „*.twig“ či opačně „!*yaml“ pro nezahrnutí souborů jejich název končí příponou „.yaml“

Ovládání kóduEditovat

Do ovládání kódu lze zahrnout používání zkratek pro manipulaci řádků, označování bloků textu podle zarážek (uvozovky, if nebo for blok, funkce, třída), zabalování a rozbalování bloků, otevírání oken, postup dopředu a dozadu mezi změnami, akce pro reformát, pohyb mezi okny souborů, pohyb mezi posledními otevřenými soubory a tak dále.

External toolsEditovat

Uživatel má možnost napsat tool, který je pak možné vyvolat na klávesovou zkratku, či přímo přes akce. Jsou potřeba tři základní vstupy:

  • Program který má být spuštěn
  • Argumenty programu
  • Working directory ve které bude exekuován

Všechny tyto akce a mnohem více je možné nastavit na zkratku, či vyvolat akci přímo přes zkratku shift-shift

ReferenceEditovat

V tomto článku byl použit překlad textu z článku PhpStorm na anglické Wikipedii.

  1. Other Versions [online]. [cit. 2022-03-22]. Dostupné online. (anglicky) 
  2. Marek Machač. Jak efektivně pracovat v PhpStorm [online]. interval.cz, 2014-12-29. Dostupné online. (česky) 
  3. Andriy Bazanov. How to change the language of IDE from english to german? [online]. IDEs Support, 2014-01-25 [cit. 2020-12-19]. Dostupné online. (anglicky) 
  4. David Feugey. Avec PhpStorm 8, JetBrains renforce sa présence sur le marché PHP professionne [online]. Silicon.fr, 2014-09-22 [cit. 2015-10-12]. Dostupné online. (anglicky) 
  5. PhpStorm [online]. [cit. 2013-04-21]. Dostupné online. (anglicky) 

Související článkyEditovat

Externí odkazyEditovat