Peachpie: Diagnostiky a refactoring PHP kódu

Supervisor: Robert Husák
Intended Scope: Bachelor thesis, master thesis, software project
Required Skills: C#, PHP

Description:

Jelikož drtivá většina internetu je tvořena dynamickým jazykem PHP, vzniká spousta nástrojů pro údržbu a optimalizaci aplikací na PHP postavených. Nejnovější přírůstek na půdě MFF UK je kompilátor Peachpie, který je postavený na kompilátoru Microsoft Roslyn. Peachpie kompiluje PHP do mezikódu CIL, který lze spustit na platformě Microsoft .NET, .NET Core a Mono. Díky kompilaci získáme rychlejší a bezpečnější kód, který lze navíc snadno integrovat s dalšími jazyky splňujícími specifikaci CLI (C#, F#, Visual Basic atd.).

Pro PHP existuje řada nástrojů, které dokáží analyzovat kód a upozornit na potenciální stylistické i funkční problémy, např. PHP CodeSniffer, PHP Mess Detector a PHPLint. Cílem této práce je tyto nástroje analyzovat, vybrat z nich nejdůležitější diagnostiky a naimplementovat je v prostředí kompilátoru Peachpie. Kromě toho je potřeba přidat diagnostiky specifické pro kompilaci PHP, např. upozornění na neefektivní konstrukty. K některým z těchto diagnostik je pak vhodné následně vytvořit refactoring, tedy automatickou opravu, jakou známe např. z Visual Studia při programování v C#.

Konkrétní druhy diagnostik a refactoringů si domluvíme v závislosti na očekávaném rozsahu projektu (např. na softwarový projekt budou kladeny větší nároky než na bakalářskou práci). Jakékoliv nápady na rozšíření tématu jsou rovněž vítány,

The content is available under Creative Commons BY-NC 3.0 License