Das ambitionierteste aller PSoft-Programme ist leider auch das, welches nie fertig geworden ist, da die verwendete Technologie nicht mit meinen großen Plänen mithalten konnte: PSoft Diskoverer.
Alles fing damit an, dass ich einfach nur einen Datei-Browser (oder -»Explorer«) entwickeln wollte, mit dem man nicht nur zwei, sondern beliebig viele Ordner parallel in einem Fenster durchsuchen konnte. Dazu entwickelte ich ein System, mit dem man kleine Unterfenster per Drag und Drop frei in einer verschachtelten Struktur über-, unter- und nebeneinander anordnen konnte (wie man es heute von vielen Entwicklungsumgebungen wie Eclipse oder Visual Studio kennt), sowie mangels sinnvoll und performanter in Visual Basic eingebauter Alternativen auch eine eigene Dateilistenkomponente. Die wichtigsten Dinge waren somit fertig, also hätte das Projekt ja bald abgeschlossen werden können. Aber dann kam alles anders.
Dateien sind nicht alles
Denn ich war so begeistert und überzeugt von meinem Multi-Fenster-in-einem-Ansatz, dass ich mir dachte: Warum soll man in diesem Programm nur Ordner betrachten können? Warum nicht viel mehr? Schon war die Idee geboren, PSoft Diskoverer von einem Dateiverwaltungs- in ein Universalprogramm zu verwandeln, in dem man die Dateien auch öffnen, betrachten und bearbeiten, Musik hören, im Internet surfen, die Registry verwalten, Berechnungen anstellen und alles mögliche mehr können sollte. Dazu wurde es mit einem Erweiterbarkeits-Framework versehen werden, sodass das eigentliche Programm nur noch die Hülle wäre und alles andere über beliebig kombinierbare Module bereitgestellt werden sollte: PDMS, das PSoft Diskoverer Modul-System, war geboren.
Und PDMS war (vom Prinzip) wirklich ein geniales System (ohne mich jetzt selbst zu sehr loben zu wollen): Statt Dateien und Ordnern kannte PSoft Diskoverer nun nur noch sog. Elemente, die von den installierten Modulen erzeugt und mit Leben gefüllt wurden. Neben der fest eingebauten Listenansicht konnten die Module auch beliebige Inhalte in die Ordnerfenster legen. Doch das beste war die Datentypen-Funktionalität: Jedes Element konnte mit beliebig vielen Datenobjekten belegt werden, die jeweils mit von den Modulen frei definierten Typenkennzeichen belegt werden konnten. Andere Module registrierten sich dann, um die Daten bestimmter Typen zu öffnen und lieferten beim Speichern dann den neuen Inhalt wieder an das ursprüngliche Modul zurück. Dazu konnten andere Module zudem Converter für verschiedene Typen bereitstellen, die automatisch in das Typsystem eingeklinkt wurden und so einem Modul erlaubten, Dateien (oder Registry-Einträge oder oder oder...) zu öffnen und bearbeiten, die sie gar nicht kannten, da sie beim Laden und speichern automatisch konvertiert wurden.
Das klingt ja toll!
War es auch. Und zu großen Teilen war es auch bereits umgesetzt. Leider zu anderen großen Teilen auch noch nicht. Außerdem habe ich festgestellt, dass die Struktur des PDMS doch sehr unübersichtlich, unflexibel und unmodern war und für ein zukunftssicheres System von Grund auf hätte neu entwickelt werden müssen, was eine groß angelegte Umstellung von Diskoverer und allen bereits existenten Modulen erfordert hätte. Somit widmete ich mich zunächst anderen Projekten – die später veröffentlichten Programme wurden alle nach dem Entwicklungsstopp von PSoft Diskoverer fertiggestellt. Hinzu kam, dass meine Schulzeit vorbei war und ich mit dem Studium begann, wodurch meine Zeit, die für die Weiterentwicklung von Diskoverer zu Verfügung gestanden wäre, ziemlich stark gegen null geschrumpft ist. Zudem lernte ich im Studium dann auch »richtige« Programmiersprachen kennen und wechselte zudem mein Betriebssystem von Windows zu Linux, wodurch die Lust, weiter in Visual Basic zu programmieren, auch stark abnahm.
Er lebt weiter!
Glücklicherweise war jedoch nicht alle Arbeit an PSoft Diskoverer umsonst. Neben dem Spaß, den die Entwicklung natürlich gemacht hat, konnte ich einige Bestandteile in anderen Programmen wiederverwenden.
So findet sich die Bildbetrachtungskomponente und die mit einigen Sonderfunktionen neu entwickelte Bildlaufleiste im Photo-Editor von PSoft PhotoAlbum wieder. Der Hauptbestandteil von Diskoverer, die Dateiliste, ist in PSoft InputAid sowie im Importdialog von PSoft PhotoAlbum zu finden. Der Taschenrechner bzw. die allgemeine Rechenfunktionalität aus PSoft Diskoverer wurde in InfoMan und InputAid übernommen.
Generell habe ich bei der Entwicklung von Diskoverer sehr viele Erkenntnisse gewonnen, auch was die systemnähere Programmierung mit der Windows-API betrifft (Visual Basic selbst kam hier nämlich schnell an seine Grenzen). Diese haben sich in späteren Projekten bezahlt gemacht.
Ursprünglich war auch PSoft InfoMan als Teil von PSoft Diskoverer vorgesehen. Glücklicherweise habe ich ihn jedoch rechtzeitig ausgegliedert und als eigenes Programm umgesetzt, das dann im Gegensatz zu Diskoverer auch veröffentlicht wurde.
PSoft InfoManDer Name »Diskoverer« ist übrigens ein Wortspiel aus dem Wort »Discoverer«, also Entdecker (einer Anspielung auf den Explorer – mit Diskoverer sollte man Dateien nicht nur »erforschen«, sondern tatsächlich auch »entdecken« können...) und »Disk«, also Festplatte, und stammt noch aus der Zeit, als Diskoverer ein einfacher Datei-Browser werden sollte. Er gefiel mir aber so gut, dass ich ihn beibehalten habe.
Themenbereich PSoft
Unter dem Namen »PSoft« entwickelte ich in meiner Schulzeit Software, die ich später sogar eine Zeitlang in einer eigenen kleinen Firma verkauft habe. mehr...
Kommentare zu dieser Seite
Es gibt noch keine Kommentare zu dieser Seite. Warum nicht einen schreiben?
Neuen Kommentar schreiben
Die Kommentare sind leider deaktiviert.