Hallo zusammen!
Auch ich erlaube mir dann, meine Shareware DDObjects hier vorzustellen.
DDObjects ist ein Framework für verteilte Objekte welches Delphi 5 bis 7 sowie Delphi 2005, 2006 sowie 2007 und C++ Builder 6 und 2006 unterstützt. Worum geht es nun also? Kurz gesagt: DDObjects erlaubt Methoden von Objekten aufzurufen welche nicht innerhalb der eigenen Applikation sondern auf einem Server "leben". Dies ermöglicht, die eigentliche Logik der Applikation zu verlagern, was nicht nur einen erheblichen geringeren Wartungsaufwand darstellt sondern beispielsweise aus Gründen, dass benötigte Ressourcen für Clients nicht zugänglich sind, notwendig sein kann.
Wer Java RMI oder DCOM kennt, dem wird DDObjects relativ vertraut vorkommen. DDObjects unterstützt jedoch erheblich mehr Funktionen, als diese Frameworks: neben normalen Methodenaufrufen sind auch Callbacks (bei denen der Server einen oder mehrere Clients benachrichtigt) sowie asynchrone Aufrufe möglich. Darüber hinaus lehnt sich DDObjects sehr stark an die von Delphi gewohnte ereignisorientierte Entwicklung an und unterstützt neben einfachen Datentypen auch Records, Arrays, Enumerations sowie Objekte und Exceptions.
Ursprünglich entstand DDObjects eher aus einem persönlichen Interesse für Technologien wie Java RMI, DCOM, Corba und ähnliche heraus. Nachdem ich es dann in einem kommerziellen Projekt erfolgreich eingesetzt habe und es dann knapp 2 Jahre in meiner Schublade lag, habe ich dann Anfang des vergangenen Jahres damit begonnen, DDObjects zu erweitern. Version 1.1, welche dann auch SSL/TLS unterstützen sowie ein Preview für FreePascal beinhaltet, wird in ca. 2 Wochen veröffentlicht.
Anwendungen mit Hilfe des Frameworks zu erstellen ist denkbar einfach: der mitgelieferte Wizard nebst Sourcecodegenerator erstellt den Code für die client- sowie serverseitig zu implementierenden Objekte. Serverseitig muss lediglich die eigentliche Anwendungslogik implementiert werden. Clientseitig muss der generierte Code lediglich der Applikation hinzugefügt werden. Der clientseitig zu implementierende Code, welcher eine Methode eines auf einem Server "lebenden" Objektes aufruft, ist denkbar einfach und unterscheidet sich in keinster Weise als würde man Methoden "normaler" Objekte aufrufen.
Weiteres findet sich auf meiner Webseite:
www.delphi-online.at
Fragen und Antworten natürlich gerne auch hier
Stefan
www.delphi-online.at