Client-side execution of PHP applications compiled to .NET
Spouštění PHP aplikací kompilovaných do .NET na straně klienta
bakalářská práce (OBHÁJENO)
Zobrazit/ otevřít
Trvalý odkaz
http://hdl.handle.net/20.500.11956/147097Identifikátory
SIS: 228658
Kolekce
- Kvalifikační práce [11978]
Autor
Vedoucí práce
Oponent práce
Peška, Ladislav
Fakulta / součást
Matematicko-fyzikální fakulta
Obor
Softwarové a datové inženýrství
Katedra / ústav / klinika
Katedra softwarového inženýrství
Datum obhajoby
2. 7. 2021
Nakladatel
Univerzita Karlova, Matematicko-fyzikální fakultaJazyk
Angličtina
Známka
Výborně
Klíčová slova (česky)
PHP|.NET|Blazor|PeachpieKlíčová slova (anglicky)
PHP|.NET|Blazor|PeachpiePeachpie je moderní kompilátor umožňující kompilace PHP skriptů do .NET. Blazor je nová část platformy ASP.NET nabízející použití C# na straně klienta díky novému webovému standartu WebAssembly. Tato práce zkoumá nový způsob, jak spouštět PHP založený na integraci Peachpie a Blazor. PHP skripty mohou být referencovány z Blazor a vyhodnoceny, bohužel tato akce vyžaduje mnoho kroků k jejímu provedení. My jsme tyto kroky analyzovali, navrhli řešení pro vkládání těchto skriptů do Razor stránek, navigování těchto skriptů a nakonec vyhodnocení. Výsledkem se stala knihovna obsahující pomocné třídy umožňující PHP programátorům přesunout PHP exekuci na stranu klienta s výho- dami Blazor prostředí. Rozdílnost použitých technologií nicméně limituje možnosti, které se s nima lze provádět, což je popsáno prostřednictvím dvou měření. 1
Peachpie is a modern compiler enabling the compilation of PHP scripts into .NET. Blazor is a new part of the ASP.NET platform offering the usage of C# on a client side due to a new web standard, WebAssembly. This thesis explores a new approach of execution based on the integration between Peachpie and Blazor. PHP scripts can be referenced from Blazor and evaluated, but there are many steps to make it work. We analyzed these steps and designed a solution for inserting these scripts to Razor pages, navigating, and evaluating them. It results in a library containing helper classes to enable PHP programmers to move the PHP execution to a client side with the advantages of the Blazor environment. However, the difference of used technologies limits usage possibilities, which are shown by two benchmarks. 1
