Raku-Kurs / Funktionale, nebenläufige, reaktive und Web-Programmierung / Web-Programmierung / Cro 101
Was ist Cro
Cro ist eine Sammlung von Bibliotheken, um Dienste
zu bauen — Programme, die über das Netz mit anderen Programmen sprechen.
Am bekanntesten ist es für HTTP, es beherrscht aber auch WebSockets, und
es baut alles auf den reaktiven Werkzeugen von früher in diesem Teil
auf: Supplies, react
und whenever. Ein Cro-Anfragebearbeiter ist im Kern eine
Reaktion auf einen Strom hereinkommender Anfragen. Seine Heimatseite mit
der vollständigen Dokumentation und Beispielen ist cro.services.
Was Cro Ihnen gegenüber rohen Sockets gibt:
- Routing — URL-Pfade dem Code zuordnen, der sie bearbeitet, statt Anfragen von Hand zu zerlegen.
- Anfrage- und Antwortobjekte — Abfrageparameter lesen und JSON senden, ohne Text zusammenzubauen.
- Nebenläufigkeit — viele Clients werden zugleich bedient, auf dem Threadpool, ganz von selbst.
- Zusammensetzbarkeit — Dienste bestehen aus kleinen Teilen, die Sie prüfen und verbinden können.
Sie installieren es aus dem Ökosystem:
zef install croCro ist ein großes Framework mit vielen Abhängigkeiten, das dauert
also einige Minuten. Bleibt die Installation an einer
Abhängigkeitskennung hängen, die sie nicht finden kann — ein Fehler, der
etwas wie
JSON::Fast:ver<0.19+>:auth<cpan:TIMOTIMO> nennt
—, ist Ihr zef zu alt, um das Archiv zu kennen, das solche
historischen Modulkennungen bedient. Bringen Sie den Installierer selbst
mit zef install zef auf den neuesten Stand, öffnen Sie ein
frisches Terminal und starten Sie die Cro-Installation erneut.
Cro führt den ganzen Kurs zusammen: objektorientierten Entwurf für seine Typen, den funktionalen Stil in seinen Bearbeitern und das reaktive Modell für seine Anfrageströme. Das nächste Thema zeigt den kleinstmöglichen Cro-Dienst, damit Sie sehen, wie diese Gedanken in echtem Webcode zusammenkommen.
Praxis
Lösen Sie 1 Quiz zum Inhalt dieses Themas.
Kursnavigation
← Cro 101 | Quiz — Cro →
💪 Oder springen Sie direkt zu den Übungen dieses
Abschnitts.