Não por convenção, mas para facilitar ligações de alto nível.
Native Objects and Object Paths
Your programming framework probably defines what an "object" is like; usually with a base class. For example: java.lang.Object, GObject, QObject, python's base Object, or whatever. Let's call this a native object.
The low-level D-Bus protocol, ..., does not care about native objects. However, it provides a concept called an object path. The idea of an object path is that higher-level bindings can name native object instances, and allow remote applications to refer to them.
Editar:
Provavelmente você pode usar a API e o daemon de barramento de mensagens construídos em libdbus para evitar o uso de objetos, assim você terminará com sua abordagem de comunicação de um cliente que invoca um método e obtém um responda . No entanto, esteja ciente de que a libdbus se destina a ser um backend de baixo nível para as ligações de nível mais alto, portanto, muito da API libdbus é útil apenas para a implementação de ligação.