C++ OODB



  • Hallo,
    ich habe früher gerne mit C++ und der objektorientierten Datenbank POET (später umbenannt in FastObjects) gearbeitet. Nun war diese OODB nicht so einfach zu erstehen (sehr teuer und POET gibt es auch nicht mehr).

    Ich habe mich hingesetzt und eine ähnliche OODB für C++ neu entwickelt; ich habe sie GlobalObjects genannt und diese als open source veröffentlicht .

    GlobalObjects ist ein System um C++ Objekte einfach speichern zu können. Es ist Single- und Multiuserbetrieb (über einen Server) möglich.

    Mittels GlobalObjects können auch komplexe Objekte einfachst gespeichert, geladen und auch wieder gelöscht werden. Dieses kann auch in Transaktionen stattfinden, welche bestätigt (Aktionen werden ausgeführt) oder abgebrochen (Aktionen werden nicht ausgeführt) werden können. Es existiert ein umfangreicher Sperrmechanismus um gespeicherte Objekte zu schützen. Um Änderungen am Objektbestand "mitzubekommen", kann ein einfaches Benachrichtigungssystem genutzt werden.

    GlobalObjects wurde bislang mit Microsoft Visual C++ 2010, Microsoft Visual C++ 2015 (32-Bit),Microsoft Visual C++ 2017 (32-Bit), und MinGW 32 Version 5.3.0 unter MS-Windows kompiliert und getestet. Erste Versuche mit gcc 5.4.0 unter LINUX (Mint 18.1 32-Bit) verlaufen sehr vielversprechend.
    Als nächstes steht die Umstellung auf 64-Bit und von Pthread auf std::thread an.

    Nun mein Anliegen:
    Hat jemand Lust sich das mal anzusehen und ggf. Kritik zu üben, evtl. sogar mitzugestalten?

    Für Interessierte habe ich eine Seite ins Netz gestellt ...

    EDIT: Habe die vorher hier stehenden URLs erstmal wegen Überarbeiten entfernt!

    Helmut Jakoby
    PS. Für Fragen stehe ich gerne zur Verfügung.



  • Ich hab mir das ganz oberflächlich angeschaut und geb nur eine kaum begründete Meinung 😉
    Sorry, macht aber keinen guten Eindruck auf mich. Sieht alles sehr umständlich und altertümlich aus. Das will man eigentlich nicht haben. Weder eine Datenbank in der Form (wenn schon, dann eine moderne NoSql Datenbank und nicht etwas selbstgebasteltes, was nichts kann), noch will man heutzutage solchen Code und solche Abhängigkeiten sehen. Selbst wenn man sowas ähnliches haben wollen würde, könnte man das mit modernen C++ Mitteln auf jeden Fall anders und eleganter lösen.



  • Ich hab mir nur mal kurz das "Los geht’s..." angesehen, und muss sagen, das wirkt ziemlich abschreckend. Führt bei mir nicht zu dem Wunsch mir die Sache näher anzusehen.

    Es mag sein dass was du da erstellt hast in bestimmten Projekten sehr nützlich sein kann, aber ich denke dein Zielpublikum wird sich ziemlich auf Leute beschränken die bereits mit FastObjects gearbeitet haben und das gut fanden.

    Aber bitte nicht falsch verstehen. Du hast da definitiv viel Zeit und Arbeit reingesteckt, und das respektiere ich zutiefst. Was dabei rausgekommen ist ist aber auf den ersten Blick nichts mit dem ich etwas anfangen könnte.



  • Hallo Mechanics, hallo hustebaer,

    danke! das ihr euch das angesehen habt.

    Werde das alles wohl noch mal überarbeiten.

    Das Kapitel "Los geht’s..." ist mit einigem Abstand wirklich nicht überzeugend geschrieben. Viel zu komplex und wirr. Bin wohl auch zu tief drin um einen klaren Blick zu haben (das was ich da "zu Fuß" beschrieben habe will auch keiner machen; mach ich ja selbst nicht mehr ;-).

    Ich nehme in ca. 1 Std. den Auftritt aus dem Netz und stelle ihn nach Überarbeitung wieder rein.