Ich habe es an verschiedenen Orten in Kontexten wie Erlang Actor Model, Groovy Actors, Scala Actor Model etc. erwähnt. Worauf bezieht sich das?Was ist das Akteurmodell im Kontext einer Programmiersprache?
Antwort
Ich denke Wikipedia fasst es am besten:
Der Schauspieler Modell die Philosophie nimmt, dass alles, was ein Schauspieler ist. Dies ist ähnlich dem, was alles eine Objektphilosophie ist, die von einigen objektorientierten Programmiersprachen verwendet wird, unterscheidet sich jedoch darin, dass objektorientierte Software typischerweise sequentiell ausgeführt wird, während das Actor-Modell von Natur aus gleichzeitig ist. [snip] Das Actor-Modell behandelt die Semantik der Nachrichtenübergabe.
Vor einiger Zeit schrieb ich this blog post, die die grundlegenden Konzepte des Modells erläutert und eine grundlegende Implementierung mit JavaScript erstellt. Von der Post:
Im Akteur-Modell ist ein Akteur die Grundlage, auf der Sie die Struktur Ihrer Anwendung aufbauen, hat internen Zustand unsichtbar für die äußere Welt und interagiert mit anderen Akteuren durch asynchrone Nachrichten.
Wenn Ihnen das sehr nach objektorientierter Programmierung (OOP) klingt, haben Sie recht. Das Akteursmodell kann als OOP mit besonderer Behandlung von Nachrichten betrachtet werden: sie werden asynchron geliefert und synchron vom Empfänger ausgeführt.
Jeder Akteur wird mit einer eindeutigen Adresse identifiziert, über die Sie Nachrichten an ihn senden. Wenn eine Nachricht verarbeitet wird, wird sie mit dem aktuellen Verhalten des Aktors verglichen. Dies ist nichts anderes als eine Funktion, die die Aktionen definiert, die in Reaktion auf die Nachricht ausgeführt werden sollen. Als Reaktion auf eine Nachricht darf ein Darsteller:
- Weitere Akteure erstellen.
- Senden Sie Nachrichten an andere Akteure.
- Geben Sie den internen Status an, um die nächste Nachricht zu verarbeiten.
- 1. Was ist diese Programmiersprache?
- 2. Was ist eine Zelle im Kontext eines Interpreters oder Compilers?
- 3. In welcher Programmiersprache ist das?
- 4. Stream-Kontext in PHP - was ist das?
- 5. Was ist die prägnanteste Programmiersprache?
- 6. Was ist der Kern der DrRacket-Programmiersprache?
- 7. Ich fragte mich, welche Programmiersprache das ist?
- 8. Was ist eine "Domäne" im Kontext von AuthPlugin in MediaWiki?
- 9. Entwerfen und Implementieren einer Programmiersprache, Was ist der nächste Schritt?
- 10. Was ist eine Projektionsschicht im Kontext neuronaler Netze?
- 11. Was ist ein TNS: Listener im Kontext von Oracle?
- 12. Was ist ein virtueller LLVM-Abschnitt im Kontext von Objektdateien?
- 13. Was ist die Programmiersprache dieses Code-Snippet
- 14. Was ist die beste Programmiersprache für Selen?
- 15. Was ist diese neue Axum Programmiersprache?
- 16. Überprüfen, ob das Objekt bereits im Entity Framework-Kontext ist
- 17. Dokumentationssystem, das unabhängig von der Programmiersprache ist
- 18. Was ist "Kontext" in Android?
- 19. Was ist ein Kontext in Django?
- 20. Was sind Hyperfunktionen im Kontext der Informatik?
- 21. Im Kontext, was bedeutet "(+ 1 Überladung)"?
- 22. Was macht Kontext-Annotation im Frühling?
- 23. Was bedeutet "Core" im Kontext des Bibliotheksentwurfs?
- 24. was ergibt ohne Wert im kontext manager
- 25. Verwenden der D-Programmiersprache in einem .NET-Kontext
- 26. Was ist das Problem der Pluralbenennung im Kontext von Entity Framework?
- 27. Ist Bash eine Programmiersprache?
- 28. nicht zugänglich ist im aktuellen Kontext
- 29. Deklarative Sicherheit - was ist das?
- 30. Was ist das alles im CKEditor-Ordner?