• [^] # Re: Alternative

    Posté par . En réponse au journal Java, .NET et les logiciels libres. Évalué à 2.

    Faut sortir un peu du monde java de temps en temps! Le terme RPC désigne à la fois un paradigme et un protocole (celui de Sun il me semble). En tant que paradigme, RMI c'est du RPC appliqué aux langages objets. Si pour un autre langage tu compares les versions Java de RPC et RMI, ça n'a pas de sens. Surtout ici où Erlang est un langage fonctionnel, non objet et donc pour lequel invoquer des "méthodes" ne correspond à rien. Pour te montrer un peu à quoi ressemble Erlang, voici le code d'un serveur RPC ( tiré de http://www.unsw.adfa.edu.au/~lpb/seminars/erlang-intro.html(...) ):
    %%% start - rexec server on this node
    start() -> 
     Pid = spawn(rexec, server, []),
     register(rexec, Pid),
     Pid.
    %%% server - master server loop listening for next message
    server() ->
     receive
     {From, Ref, M, F, A} ->
     io:format("rexec: handling ~w~n", [{From, Ref, M, F, A}]),
     spawn(rexec, handler, [From, Ref, M, F, A]),
     server();
     Error ->
     io:format("rexec: ERROR received~w~n", [Error]),
     server()
     end.
    %%% handler -> handle current rexec request
    handler(From, Ref, M, F, A) ->
     Res = (catch apply(M, F, A)),
     From ! {Ref, Res},
     Res.
    
    Je l'ai dis, le support de plateformes et technos hétérogènes.
    Tu l'as dit, mais pas expliqué. Même avec J2EE tu auras d'autres technologies qui rentreront en jeu, ne serait-ce que Javascript, SQL, XML... L'architecture que je propose se base sur deux outils (et encore on pourrait tout faire avec un seul), pas 10000. Tu ne te sers que d'une fourchette pour manger? Pas de couteau et de cuillère parce que ce n'est pas intégré et unifié? :-)
    C'est bien ce que je dis, ca ressemble plus à du LAMP
    Dans ce projet, on aurait pu tout faire avec Python, Erlang ou PHP, mais nous voulions apprendre ces technologies. De plus, LAMP est aussi intégré que Java: L pour Linux, Java a besoin d'un OS pour le faire tourner. A pour Apache, une interface web même J2EE demande un serveur web. M pour MySQL, il y a aussi une base de données derrière ton système Java. P pour PHP, c'est ici que Java prends place. De toute façon, pour recentrer le forum, la question n'est pas intégré ou hétérogène, mais est-ce que ces plateformes libres peuvent elles répondre aux mêmes problèmes que Java/.NET avec leurs solutions à elles (intégré ou pas).