Mijn eerste week stage

4 maanden geleden • 5 minuten lezen

Na een korte lesvrije week achter het lange afwachten op onze examenresultaten was het zover! Afgelopen maandag ben ik samen met Robert aan mijn stage begonnen bij Artcore Society!

In mijn eerste week heb ik al ontzettend veel bijgeleerd, en wat dat precies was, kan je in deze blog ontdekken!

Voorbereiding

Om te beginnen kregen Robert en ik een korte rondleiding in het kantoor van ons stagebedrijf en maakten we met iedereen kennis. Hier zagen we direct dat we bij een toffe groep van collega’s terechtkwamen om de komende maanden te leren werken in de webdevelopment-sector.

Asana – premium tour

Vervolgens werden we gebriefed over de tools die op de werkvloer gebruikt worden. Zo maakten we al snel kennis met Asana en Harvest.

Asana is een innovatieve en gebruiksvriendelijke projectmanagement tool om planningen te beheren op te volgen op bedrijfsniveau en gaat dieper dan bijvoorbeeld Trello of Meistertask dat we tot nu toe voor school gebruikt hebben.

En met Harvest houden we een schatting bij van onze dagelijks gepresteerde werkuren, die dan vervolgens verwerkt worden door het projectmanagement-team van het bedrijf.

De eerste briefing

Nadat de installaties achter de rug waren, kregen Robert en ik apart onze beiden eerste briefings. Als super boeiende start mocht ik aan een (geheim!) nieuw project werken, vanaf de conceptualisatie – met het uitschrijven van potentiële features, user stories en een vroege database concept.

Na hier een dag op te werken, was het erg spannend afwachten tot de eerste feedbackronde, om een vroege versie van een concept door te lopen buiten de “veilige” schoolmuren.

API services design

Toen de briefing gedaan was mocht ik aan de slag met de volgende stap: API services design. Hiervoor maken we op voorhand eigenlijk al documentatie van hoe de API services technisch eruit zullen zien en werken.

Dit was super interessant – maar ook een beetje challenging – om op voorhand hierover na te denken ipv direct in de code te duiken en kijken hoe het gaat.

Zo heb ik iedere request service bijvoorbeeld uitgeschreven, met de nodige parameters, voorbeeld values en vereiste datatypes.

Nadat deze klaar waren ben ik overgaan naar het volgende deel, de starten van de proof of concept voor de app!

Pexels – foto

Proof of Concept APIs

En uiteindelijk was het dan zover! Ik kon in de code duiken om al een eerste proof of concept te gaan bouwen! Hiervoor zette ik een nieuw Laravel project op, die door een front-end JavaScript applicatie aangesproken zal worden als back-end API services tool.

Hiervoor heb ik kennis gemaakt met de API routes van Laravel. Deze werken super handig, omdat /api/ in het path al direct als prefix wordt toegevoegd.

Na het verder uitbouwen van de service APIs dacht ik hoe ik mijn code nog verder kon verbeteren. Zo ben ik gaan zoeken naar Laravel best-practices, waarmee ik een aantal tips en tricks ontdekt heb om zo goed mogelijke – en herbruikbare code te schrijven!.

Form requests

Zoals wij met forms en requests hebben leren werken in de eerste semester, werkten we simpelweg met de ingebakken validators van het framework. Ik zag al snel dat ik de validator blokken vaak moest herhalen. Ook had ik mijn bedenkingen bij de veiligheid – aangezien er requests naar de APIs verstuurd worden, en vroeg ik me af hoe ik deze het best kon beveiligen.

Zo heb ik kennisgemaakt met de Laravel Form Requests. met een vlotte $ php artisan make:request` kreeg ik een basis request template, waar er twee standaard methods zichtbaar waren, authorize en rules. In die eerste kan ik eenvoudig later een autorisatie logica schrijven, en in rules kan mijn form validatie verhuizen. Het sterke aan deze request classes is ook dat deze voor OOP makkelijk hergebruikt kunnen worden, handig!

Dynamische query builder

Relaties tussen modellen in eloquent bieden zo goed als geen geheimen meer voor mij. Echter kon ik mij in mijn eerste week verdiepen op de dynamische query builder. Zo heb ik geleerd om queries dynamisch te manipuleren om op basis van GET-parameters filters toe te passen en te wijzigen.

Filesystems

Om vanuit de front-end van de applicatie één of meerdere files te uploaden, en relationeel aan data linken was er uiteraard ook nog een API nodig. Hiervoor heb ik leren werken met disks in Laravel.

Zo kan er dynamisch geloopt worden over een array van files, die dan automatisch in de juiste disk geüpload kunnen worden. Hierbij kan je dan de paths bijhouden en stockeren via een logische relatie met het bijhorend model.

Wordt vervolgd!

Dit was nog maar mijn eerste week bij Artcore Society, maar ik kan al niet wachten om nog meer bij te leren!