Témata prací (Výběr práce)Témata prací (Výběr práce)(verze: 341)
Detail práce
   Přihlásit přes CAS
Interoperability of compiled PHP framework with .NET environment and package management
Název práce v češtině: Interoperabilita kompilovaného PHP frameworku s prostředím a správou balíčků platformy .NET
Název v anglickém jazyce: Interoperability of compiled PHP framework with .NET environment and package management
Klíčová slova: PHP, CIL, kompilace, interoperabilita, rozšiřitelnost, balíček
Klíčová slova anglicky: PHP, CIL, compilation, interoperability, extensibility, package
Akademický rok vypsání: 2018/2019
Typ práce: bakalářská práce
Jazyk práce: angličtina
Ústav: Katedra softwarového inženýrství (32-KSI)
Vedoucí / školitel: Mgr. Ing. Robert Husák
Řešitel: skrytý - zadáno a potvrzeno stud. odd.
Datum přihlášení: 29.11.2018
Datum zadání: 29.11.2018
Datum potvrzení stud. oddělením: 27.03.2019
Datum a čas obhajoby: 07.07.2020 09:00
Datum odevzdání elektronické podoby:04.06.2020
Datum odevzdání tištěné podoby:04.06.2020
Datum proběhlé obhajoby: 07.07.2020
Oponenti: doc. RNDr. Jan Kofroň, Ph.D.
Zásady pro vypracování
The PeachPie compiler [1] is a tool capable of compiling projects written in PHP into Common Intermediate Language (CIL). This enables to run it on platforms such as .NET or .NET Core; furthermore, it can be used from other Common Language Infrastructure (CLI) languages, e.g. C#.

PHP frameworks (such as Symfony, WordPress, MediaWiki, PrestaShop) usually have a significant number of extensions, which can be installed by downloading their source files to appropriate folders. When used from PeachPie, we need to recompile the whole project after the installation to make it work correctly.

The aim of this thesis is to improve this process to enable the intuitive usage and extensibility of a selected PHP framework in .NET. Its selected extensions will be compiled separately and packed into NuGet packages, enabling them to be installed on-demand using the NuGet package manager. Furthermore, a way how to efficiently write the extensions of the PHP framework in C# will be devised. Eventually, a sample application will be created to demonstrate the usage of the selected PHP framework in a C# application with an example of an extension of the framework written in C#. Inspiration can be taken from the way how WordPress and its extensions are currently handled in PeachPie [2].
Seznam odborné literatury
[1] Peachpie | PHP compiler to .NET, https://www.peachpie.io, https://github.com/peachpiecompiler/peachpie
[2] WordPress on .NET SDK, https://github.com/iolevel/wpdotnet-sdk
[3] Míšek J., Zavoral F.: Semantic Analysis of Ambiguous Types in Dynamic Languages, in Journal of Ambient Intelligence and Humanized Computing, Vol. 9, Num. 9/2, ISSN: 1868-5137, pp. 1-13, 2018
[4] Míšek J., Fistein B., Zavoral F.: Inferring Common Language Infrastructure Metadata for an Ambiguous Dynamic Language Type, in ICOS 2015 - 2015 IEEE Conference on Open Systems, Langkawi, IEEE Computer Society, ISBN: 978-1-5090-2603-6, ISSN: 2473-3660, pp. 111-116, 2017
[5] Benda, Jan, Tomas Matousek, and Ladislav Prosek. "Phalanger: Compiling and running PHP applications on the Microsoft .NET platform." .NET Technologies 2006 (2006).
Univerzita Karlova | Informační systém UK