Was ist die nächste Sache, die Windows COM/DCOM in der Linux-Welt?
Etwas höheren Ebene, und umfassender als die Rohre/buchsen?
- Danke Euch allen - das war so ziemlich mein Sinn, wo die Dinge standen. Ich akzeptierte @MarkR Antwort, wie es schien, um Dinge einpacken schön.
Du musst angemeldet sein, um einen Kommentar abzugeben.
Ja, es gibt viele Dinge, aber es ist nicht ein als "Standard" wie COM/DCOM. Zumindest in Windows, COM /DCOM verwendet werden, durch die "Windowsish" Zeug, und andere RPC-Mechanismen verwendet werden, die von un-"Windowsish" Zeug.
Linux nicht so etwas wie, dass, anstatt die Dinge, die benötigen höhere level RPC-Protokolle verwenden in der Regel unabhängig von Ihrer Sprache oder einer bestimmten library, die am besten eine app braucht. Beispiele dafür wären RMI in Java, Python ' s "pyro" - Modul, etc, die (etwas) funktionale Parität mit DCOM.
Corba ist ein bisschen Schwergewicht, aber einige Leute offensichtlich tun, verwenden Sie es.
Viele Anwendungen Rollen Sie Ihre eigenen RPC-Bibliotheken. Tun Sie das nicht, es sei denn, Sie haben zu, es ist böse.
AddRef
undQueryInterface
Rundreisen, Ping für die garbage collection, COM-spezifische memory-management, etc.Zur prozessübergreifenden Kommunikation, D-Bus ist die standard-High-level-Mechanismus. Sowohl GTK und Qt haben Bindungen für D-Bus, die meisten desktop-Umgebungen (oder zumindest GNOME und KDE) stellen verschiedene Dienste über den D-Bus und viele desktop-Anwendungen gesteuert werden kann, über eine D-Bus-Schnittstelle. Der system-bus ist auch nützlich für die Suche nach verschiedenen low-level-Informationen über das system mit standard-system-Diensten.
KDE4 (basiert auf Qt4) enthält auch eine Technologie namens KParts, die sind oft im Vergleich zu Fenster mit der COM.
D-Bus
UNO
o jede Komponente lebt in ein Uno Runtime Environment (URE), es gibt keinen performance-overhead für Komponenten instanziiert sind innerhalb der gleichen URE, z.B. in C++ einen Anruf von Komponente A nach B ist nur ein virtuelles call
XPCOM
...eine andere alternative zu betrachten sein könnte Java RMI sowie
Ist es auch Wert, um zu sehen, Fragen:
Gibt es ein äquivalent zu COM auf *nix-Systemen ? Wenn nicht, was war die *nix-Ansatz zur re-usability?
Analog der COM-Programmierung unter Linux/UNIX
Können Sie aus Corba, es funktioniert auf Linux und Windows sowie.
Dem Mono-Projekt springt in den Sinn. Vor allem, weil die CLR/.NET ist die neue COM-nachdem alle COM wurde anfänglich verkauft als Sprache unabhängige, binäre kompatible Objekte.
Ich denke, DCOM (d.h. COM mit einem längeren Draht) wäre .NET remoting? Oder vielleicht einige web-services mit Objekt-Serialisierung. Ich glaube, Mono unterstützt.
Es ist Mozillas XPCOM-Technologie, Cross Platform Component Object Model. Art ähnlich zu COM-oder DCOM-konzeptionell.
Hier ist eine Liste von den relativ wenigen Programmen, die Gebrauch machen von den D-bus
DCOM ist unter Linux verfügbar. Es ist nicht der linux-Weg, Dinge zu tun", aber hey, wenn Sie wollen, "wie DCOM, aber unter Linux", dann verwenden Sie einfach DCOM auf Linux und getan haben...
http://www.softworksltd.com/dcomlinuxfaq.html
http://documentation.softwareag.com/webmethods/entirex/exx733/installUnix/install_RpmDcomLinux.htm