yla traductores traducir traduccion tecnica reglas que para onu online introduccion ingles guia estilo español diccionarios ciencia castellano java actor akka

java - traductores - que es traducir



¿Cuál es la diferencia entre los actores mecanografiados y no tipificados en Akka? ¿Cuándo usar qué? (4)

He intentado leer la documentación de Akka para descubrir la diferencia exacta entre los actores mecanografiados y no tipificados. ¿Cuándo usar qué? No estoy seguro de lo que me estoy perdiendo. ¿Alguien puede indicarme algo relevante o dar una respuesta a esta pregunta aquí?


Los actores Akka no tipificados "no componen" y "no se escriben de manera útil".

Esto anula la razón por la que usamos Scala: su poder de programación funcional. Consulte http://noelwelsh.com/programming/2013/03/04/why-i-dont-like-akka-actors/ para conocer en profundidad esta mentalidad.

Además, vea los intentos de mejorar esto en Scala para que coincida con la forma de Haskell.

http://letitcrash.com/post/40198993865/makkros-first-step-towards-typed-channels http://letitcrash.com/post/45188487245/the-second-step-akka-typed-channels

Parece que todavía es experimental en Akka o incluso se ha caído, no está claro.

Esta idea de canales escritos tiene mucho sentido porque ocurren problemas similares cuando se intenta crear tuberías de datos de tipo comprobado (análisis).

Akka Typed parece ser una gran evolución hacia un modelo de programación más seguro: https://opencredo.com/akka-typed/


Los actores sin tipo responden a los mensajes enviados, mientras que los actores con tipo responden a las llamadas de método (los valores de los parámetros son los mensajes).

El Modelo de actor tipificado se usa para definir contratos estrictos para actores que pueden responder solo al conjunto predefinido de mensajes. En este caso, no es necesario encapsular cada mensaje como un objeto; los actores tipificados nos permiten definir métodos separados que aceptan entradas múltiples según lo definido por el contrato. En el lenguaje de Java, los actores escritos proporcionan la interfaz de Java en el mundo orientado a objetos. [1]

[1] Akka Essentials


UntypedActor es simplemente el nombre de Actor, pero como la API de Java.

Estoy muy sorprendido de que la documentación no sea suficiente:

Java:

Scala:

La diferencia es que los TypedActors tienen una interfaz estática, y las invocaciones de los métodos en esa interfaz se transforman en envíos de mensajes. UntypedActors puede recibir cualquier mensaje.

Espero que ayude.

Saludos, √


Actors (Untyped)

Para que los actores (Scala) reciban mensajes, deben mezclar el rasgo del consumidor. Por ejemplo, la siguiente clase de actor (Consumer1) implementa el método endpointUri, que se declara en el rasgo del consumidor, para recibir mensajes del archivo: punto final camel de data / input / actor. Los actores sin tipo (Java) necesitan extender la clase abstracta UntypedConsumerActor e implementar los métodos getEndpointUri () y onReceive (Object).

Actors (Typed)

Los actores tipados también pueden recibir mensajes de puntos finales de Camel. A diferencia de los actores (sin tipo), que solo implementan un método único de recibir o recibir, un actor mecanografiado puede definir varios métodos (de procesamiento de mensajes), cada uno de los cuales puede recibir mensajes de un punto final de Camel diferente. Para que un método de actor escrito se exponga como punto final de Camel se debe anotar con la anotación @consume. Por ejemplo, el siguiente actor consumidor tipificado define dos métodos, foo y bar.

Reference