Funktionaalinen ohjelmointi (FP)

Tämä automaattiarvostelija tarkistaa, käytetäänkö koodissasi perinteisiä toistorakenteita (while, for). Funktionaalista tyyliä (kuten map, filter, reduce jne.) tulee suosia silmukoiden sijaan.

WebCAIS suosii funktionaalista ohjelmointityyliä (FP). Jos jatkat web-kehityksen parissa, seuraavat TUNI:n kurssit, WebDev1 ja Advanced Frontends (jossa käsitellään mm. Reactia ja Reduxia), hyödyntävät FP-tyyliä. Esimerkiksi Reduxissa tilanhallinta perustuu muuttumattomiin (immutable) tiloihin ja niiden muutoksiin, joita käsitellään funktionaalisesti.

Funktionaalista tyyliä tukee eslint-laajennus: https://www.npmjs.com/package/eslint-plugin-fp. Funktionaalinen ohjelmointi kehittyy pienin askelin: funktiot kuten map(), filter() ja reduce() edustavat FP-tyyliä ja korvaavat usein for-silmukoita. Katso myös yhteenveto silmukkavaihtoehdoista FP cheatsheetissä.

Ainoa tarkistettava FP-sääntö on: "fp/no-loops": "error"

Tehtävä hylätään, jos FP-tarkistuksissa ilmenee virheitä ESLint-raportissa. Varoitukset eivät estä läpäisyä, mutta niiden korjaaminen on silti suositeltavaa.

Projektin palauttaminen Plussaan

HUOM: Kopioi ja liitä git@.... -osoite, älä https://... -osoitetta

Tehtävää ladataan...
Palautusta lähetetään...