Analysera PHP ramverk och välj ut ett att använda
Du kommer att få tips om ett par av de mest välkända PHP ramverken och du skall aktivt analysera dem för att välja ut ett av dem. Det du väljer skall du implementera en enklare webbplats i.
#Förkunskaper
Du har PHP i din path i terminalen och du har installerat composer.
Du kan grunderna i hur ett PHP ramverk fungerar och du är bekväm i terminologin som används
#Introduktion och förberedelse
Gör följande steg för att förbereda dig för uppgiften.
#Spara filerna i me
Alla filerna sparar du i ditt kursrepo under me/framework/
(skapa katalogen om den inte finns).
#Git och GitHub/GitLab
När du är klar så skall du göra ett Git-repo av dina filer och ladda upp dem på GitHub/Lab.
#Läs på om ramverk
Följande ramverk rekommenderas att du tittar på. Du är dock inte begränsad till dessa utan du kan välja andra om du finner det intressant.
- Symfony
- Laravel
- Yii
- Laminas
Du finner läsanvisningar om ramverken i kursmomentet mvc/kmom04.
#Krav
Kraven är uppdelade i sektioner.
#Installera ramverket
Installera och skapa en landningssida med en meny så man kan förflytta sig mellan sidorna på din webbplats.
Skapa en sida där man kan rulla din tärning och eller tärningshand.Gör denna som övning, inte nödvändig när du väl lyckats porta ditt spel.Porta spelet 21 och/eller Yatzy till ramverket. Välj båda om du känner att du har koll på det här.
Du får gärna skriva om din kod så att den passar ihop bra med ramverkets tankar om hur man skriver kod.
#Kopiera din utvecklingsmiljö
Följande bör du klara av på egen hand. Om du av någon anledning får ont om tid eller inte klarar av detta så kan du hoppa över denna delen för tillfället och ändå lämna in ditt kursmoment. Men du bör notera eventuella problem och hinder och skapa issue om det i kursrepot.
Kopiera din
Makefile
till ramverket, dubbelkolla bara att det inte redan ligger en sådan fil där.Kopiera över alla konfigurationsfiler för validatorerna, men se till så att du inte skriver över någon fil som redan ligger i ramverket. Konfigurationsfilerna är de som heter
.php*
i din katalogme/game
.Kopiera över dina enhetstester i katalogen
test/
och försök att integrera dem i ramverket.
#Kopiera din utvecklingsmiljö
Följande bör du klara av på egen hand. Om du av någon anledning får ont om tid eller inte klarar av detta så kan du hoppa över denna delen för tillfället och ändå lämna in ditt kursmoment. Men du bör notera eventuella problem och hinder och skapa issue om det i kursrepot.
- Uppdatera din
htaccess
och publicera din lösning på studentservern.
#Publicera
När du är klar, kör
make test
för att köra alla testerna mot ditt repo. När man körmake test
så bör det passera utan allvarliga felmeddelanden.Dubbelkolla att webbplatsen fungerar på studentservern genom att göra en
dbwebb publishpure me
och testköra den.Committa alla filer till ditt repo och lägg till en ny tagg (1.0.*). Öka versionnumret om du lägger till ändringar (1.0.1, 1.0.2 och så vidare). Rättaren kommer normalt sett att använda din senaste tagg som är >= 1.0.0 och < 2.0.0.
Pusha upp repot till GitHub/GitLab, inklusive taggarna.
#Tips från coachen
Använd de manualer och lärresurser som varje ramverk erbjuder.
Försök uppdatera din kod så att den blir mer “ramverksmässig”. varje ramverk kan ha sin egen tolkning av vad det innebär.
Lycka till och hojta till i chatt och forum om du behöver hjälp!
#Revision history
- 2021-05-06: (C, mos) Makefilen döps nu inte om utan behåller sitt ursprunglia namn.
- 2021-04-27: (B, mos) Stryk kravet om tärningssida, räcker med att man portar spelet.
- 2021-04-16: (A, mos) Första utgåvan.