Zu dem Thema "nur eine exportierte Procedure pro Serviceprogramm" habe ich mich schon des öfteren geäußert. Das läuft bei uns sehr gut. Wir haben keinerlei Probleme, irgendwelche Module zu verwalten. Warum auch? Module interessieren uns gar nicht. Da gibt es nichts zu verwalten. Jedes Serviceprogramm wird in unser Binderverzeichnis eingetragen (geschieht automatisch durch unser Compile-Programm).

Wir haben keine Versionsprobleme mit Signaturen, da jedes Serviceprogramm nur für sich selbst verantwortlich ist. Einfacher geht es doch kaum.

Dass es performancemäßig suboptimal ist, kann sein. Das kann ich ja so nicht testen. Aber wir haben da keinen Performanceengpass.

Unser Compile-Programm füllt bei jedem Kompiliervorgang auch gleich unser eigenes Repository, sodass wir ein komfortables Suchprogramm für die Suche nach bestimmten Programmen nutzen können.
Außerdem erzeugt unser Compile-Programm auch gleich den passenden Prototype für das umgewandelte Programm und legt den Verweis darauf ebenfalls in unserem Repository ab.

Als besonderes Feature haben uns unsere Java-Entwickler dann noch ein kleines Plugin für den LPEX Editor im RDi geschrieben. Das Plugin trägt automatisch alle benötigten Copy-Strecken für unsere Prototypes in den Sourcecode im LPEX Editor ein. (Es scannt einmal kurz den Source im Editor und holt die passenden Copy-Strecken Anweisungen dann aus dem Repository).

Fazit: Wir müssen eigentlich gar nichts mehr manuell tun, was mit Compiling oder der Unterscheidung zwischen Serviceprogrammen und normalen Programmen zu tun hat. Ich schreibe einfach ein Serviceprogramm und kompiliere es. Dann kann ich es in jedem anderen Programm benutzen. Fertig.

Dieter