Regras de negócios compartilhadas para objetos C# e Java
-
20-09-2019 - |
Pergunta
Eu tenho um sistema que possui objetos do lado do servidor Java e objetos clientes C#. Os objetos podem ser modificados em ambos os lados do sistema e, portanto, as regras de negócios anexadas a eles. Atualmente, a coisa é que as regras de negócios vivem apenas no lado do servidor, e eu realmente quero evitar entrar em contato com o servidor toda vez que quiser verificar os objetos.
Então, idealmente, quero ter regras de negócios compartilhadas que possam ser usadas em C# e Java; portanto, quando uma alteração é necessária, eu apenas a aplico em um só lugar (e obviamente implanto em 2).
Alguém tem alguma sugestão sobre como eu poderia fazer isso?
Solução
Isso pode parecer terrível no começo, mas você pode de fato considerar codificar as regras de negócios em JavaScript.
Existem motores JavaScript disponíveis na plataforma Java e .NET. Dessa forma, ao hospedar um mecanismo JavaScript (diferente) no servidor (Java) e ao cliente (C#), ambos podem executar o mesmo JavaScript para aplicar as regras de negócios.
Pense nisso como o idioma da sua empresa de regras de escolha. Também não é uma má escolha para a tarefa, pois é concisa, flexível e bem conhecida.
Eu fiz algo semelhante uma vez, para configurar regras de jogo flexíveis em um jogo baseado em Java. Os motores JavaScript são surpreendentemente simples de configurar e hoje em dia eles estão ficando muito rápidos também.
Outras dicas
Tente usar Ikvm