Udover de store Axaj og JQuery har jeg fornyeligt fattet interesse for Node.js - en netværksorienteret udviklingsplatform mest beregnet til serversite javascript.
Måske er det for eksotisk eller specielt til sådan et kursus, men jeg beskriver det af interesse.
Det er som sagt ikke et framework men en platform der væsentligst adskiller sig fra browser javascript således:
* modulopbygget - det hele ligger ikke i global 'namespace'
* asynkront paragdigme
* kører ikke i 'sandkasse' som browseren - væsentligst filadgang.
Til platformen findes så frameworks som implementerer en webserver - et eksempel er 'Express' som er et template baseret framework.
Den asynkrone afviklingsmåde kender vi også fra clientsite:
<html><body>
<p id="demo">Dette vises meget kortvarigt</p>
<script>
setTimeout(function() {
document.getElementById("demo").innerHTML = "Så er tiden gået";
}, 5000);
document.getElementById("demo").innerHTML ="Lige 5. sekunder!"
</script>
</body></html>
Det er blot mere omfattende i Node.js, på den måde de videre skridt i kodeafvikling er udløst af callbacks - den sekvens af statement man skriver for at løse et job er mere deklarerende, 'thread of execution' er ikke altid at en statement kommer efter en anden i kildekoden.
Et alternativ til skalerbarhed vha multithreading, såkaldt eventstyring, som jeg opfatter som en lavniveau måde at gøre det som multithreading løser på en mere overordnet måde med visse problemmer til følge (mutexs, deadlocks)
Det er chromes javascript engine, V8, der er anvent i Node.js - optimerer gennem compilering scriptet.
Det skulle være muligt at debugge gennem browser - har ikke prøvet 'node inspector'
kræver lidt tid at sætte sig ind i -
http://www.nodebeginner.org/ afslutter med at tilbyde 3 udmærkede e-bøger til 10$