Je veux faire (pas de langue particulière):Question de conception: Comment puis-je accéder à un mécanisme IPC de manière transparente?
print(foo.objects.bookdb.books[12].title);
ou ceci:
book = foo.objects.bookdb.book.new();
book.title = 'RPC for Dummies';
book.save();
Où foo est en fait un service connecté à mon programme via un IPC, et d'accéder à ses méthodes et objets, une couche envoie et reçoit des messages sur le réseau. Maintenant, je ne cherche pas vraiment un mécanisme IPC, car il y a beaucoup de choix. Ce ne sera probablement pas basé sur XML, mais plutôt sur le s. th. comme les tampons de protocole de Google, dbus ou CORBA. Ce dont je ne suis pas sûr, c'est comment structurer l'application pour pouvoir accéder à l'IPC comme je le ferais pour n'importe quel objet. En d'autres termes, comment puis-je faire en sorte que la POO soit mappée de manière transparente sur les limites du processus?
Pas que ce soit une question de conception et je travaille toujours à un niveau assez élevé de l'architecture globale. Donc, je suis assez agnostique quant à la langue dans laquelle cela va être. C#, Java et Python sont tous susceptibles de s'habituer, cependant.
Oui, c'est un bon point. Je pensais déjà à ça aussi. Cependant, ceci est facile à résoudre en nommant des conventions. Si c'est toujours comme someIpcList ou ipcFoo.bar(), vous savez ce qui se passe. Je ne conçois pas pour un langage/cadre arbitraire mais pour une application spécifique et une équipe spécifique. –
Imho, le programmeur devrait programmer contre une interface, et ne pas être conscient de ce qui se cache derrière. C'est celui qui colle les composants du programme ensemble devrait réfléchir à ce sujet. – xtofl