Wichtige Hinweise zu REFLEX ab Vers. 9: Unterschied zwischen den Versionen

Aus GEVITAS
Wechseln zu: Navigation, Suche
(Warum ein neuer Datenbank-Treiber?)
(Warum ADO?)
Zeile 20: Zeile 20:
  
 
Die mobilen Geräte sind davon nicht betroffen, diese werden weiterhin in VisualStudio mit dem Compact.Net-Framework entwickelt!
 
Die mobilen Geräte sind davon nicht betroffen, diese werden weiterhin in VisualStudio mit dem Compact.Net-Framework entwickelt!
 +
 +
=== Alles sofort neu? ===
 +
 +
Der Umstieg von der BDE auf ADO ist für uns eine gewaltige Aufgabe:
 +
* REFLEX besteht aus ca. 450 Fenstern und Dialogen, die meisten davon haben in irgendeiner Weise mit Datenbankzugriffen zu tun.
 +
* REFLEX besteht aus ca. 1,2 Millionen Zeilen Programmcode. Die Zusatzprogramme wie der REFLEX-TerminManager, REXIM usw. sind dabei noch gar nicht eingerechnet.
 +
Es ist also nicht realistisch anzunehmen, dass das komplette REFLEX auf einmal umgestellt werden kann! Schließlich wollen wir unsere Programmier-Kapazität auch noch für die Weiterentwicklung unserer Programme nutzen. Unsere Strategie sieht deshalb vor, dass wir Fenster für Fenster, Dialog für Dialog, Programmzeile für Programmzeile nacheinander umstellen werden. Dieser Prozess wird sich über Monate hinziehen.
 +
 +
Die Technik dazu haben wir in den letzen Monaten entwickelt. Im Idealfall ist der Umstellungsprozess für den Anwender transparent, er sollte davon eigentlich nichts merken (außer vielleicht, dass manche Programmteile schnellen laufen als vorher…). Auf den REFLEX-Administrator kommt jedoch unter Umständen ein kleiner Aufwand zu, der mit der Version 9 von REFLEX beginnt.
 +
 +
=== Welcher Aufwand? ===
 +
 +
Wie groß der Aufwand für den Administrator ist, auf ADO umzustellen, hängt von der bestehenden Konfiguration ab. In unseren Feld-Tests haben wir festgestellt, dass es bei manchen Anwendern ohne eine einzige Änderung möglich ist, REFLEX-9 mit ADO zu verwenden. Bei anderen muss die Datenbank-Konfiguration (bzw. die INI-Datei, in der diese gespeichert ist), geändert werden.
 +
Einzelheiten dazu werden weiter unten beschrieben.

Version vom 2. April 2013, 16:28 Uhr

Ab der Version 9 wird ein neuer Datenbank-Treiber eingeführt, der sich "ADO" nennt. Der bisherige Datenbank-Treiber "BDE" wird nach und nach abgelöst.

1 Warum ein neuer Datenbank-Treiber?

Die BDE („Borland-Database-Engine“) ist ein stabiler und ausgereifter Treiber, aber die BDE kommt langsam in die Jahre. Sie stammt noch aus der Zeit, als man Access® und Paradox® als Standard-Datenbank verwendete und SQL-Server als High-End-Produkte ansah. Inzwischen hat sich die Datenbank-Landschaft geändert: SQL-Server sind heutzutage Standard. Obwohl die BDE mit SQL-Servern wie MS-SQL-Server®, mySQL® oder Oracle® prima klar kommt, hat sie doch ein paar Nachteile:

  • Die BDE bildet eine Zwischenschicht zwischen einem ODBC-Treiber und der Datenbank. Dadurch wird unnnötiger „Ballast“ erzeugt, der die Geschwindigkeit etwas bremst und teilweise hohen Netzwerk-Verkehr erzeugt.
    • Ehrlicherweise muss man jedoch sagen, dass der Geschwindigkeitsnachteil der BDE bei den heutige PC’s nicht besonders relevant ist.
  • Die BDE wird vom Hersteller nicht mehr weiterentwickelt. So wird es z.B. niemals eine 64-Bit-Version geben. Das ist ein wichtiges Argument, weil sich abzeichnet, dass durch den Erfolg von Windows-7® immer mehr 64-Bit-Versionen von Windows eingesetzt werden.
    • Ganz so akut ist dieses Problem nicht, weil die 64-Bit-Windows-Versionen mit 32-Bit-Programmen problemlos funktionieren: Es wird hier „WOW“ verwendet (Windows-On-Windows), eine intelligente Technik von Microsoft® (doch: das gibt’s!), die automatisch erkennt, ob ein Betriebssystemaufruf von einem 32- oder 64-bit-Programm kommt und diesen für den Benutzer nicht sichtbar auf 32-Bit-WOW oder 64-Bit-Windows umleitet. Deshalb läuft REFLEX ja auch problemlos auf 64-Bit-Windows-7 und Windows-8!

Aus diesem Grund haben wir uns dazu entschlossen, die BDE abzulösen.

2 Warum ADO?

Es gibt eine Reihe von Datenbanktreibern auf dem Markt, die meisten davon haben wir in einem zeitaufwendigen Prozess untersucht. Die Entscheidung für ADO fiel u.a. aus den folgenden Gründen:

  1. ADO ist von Microsoft®. Das lässt schließen, dass ADO auch zukünftig weiterentwickelt wird.
  2. ADO ist schnell. Es benötigt für die meisten Datenbanksysteme keinen ODBC-Treiber mehr, lediglich mySQL® hat noch keinen nativen ADO-Treiber, hier wird weiterhin ODBC verwendet.
  3. Der Hersteller unseres Entwicklungssystems Delphi® hat dafür gesorgt, dass der Umstieg von der BDE auf ADO relativ (!) problemlos über die Bühne geht.
  4. Für Leute, die sich für die Programmierung interessieren: Wir haben viel Zeit und Geld geopfert, um festzustellen, welche Entwicklungsumgebungen für zukünftige Entwicklungen unserer Programme sinnvoll sind. Eine Zeit lang war .Net-Framework® mit VisualStudio® im Gespräch. Umfangreiche Tests haben jedoch ergeben, dass dieses System für ein derart umfangreiches System wie REFLEX bzw. GEVAS-Professional schlicht zu langsam ist! Deshalb haben wir uns dazu entschlossen, in der Zukunft weiter mit Delphi® zu arbeiten, zumal Delphi aktuell sehr stark weiterentwickelt wird und hochmoderne Komponenten bekommt!

Die mobilen Geräte sind davon nicht betroffen, diese werden weiterhin in VisualStudio mit dem Compact.Net-Framework entwickelt!

2.1 Alles sofort neu?

Der Umstieg von der BDE auf ADO ist für uns eine gewaltige Aufgabe:

  • REFLEX besteht aus ca. 450 Fenstern und Dialogen, die meisten davon haben in irgendeiner Weise mit Datenbankzugriffen zu tun.
  • REFLEX besteht aus ca. 1,2 Millionen Zeilen Programmcode. Die Zusatzprogramme wie der REFLEX-TerminManager, REXIM usw. sind dabei noch gar nicht eingerechnet.

Es ist also nicht realistisch anzunehmen, dass das komplette REFLEX auf einmal umgestellt werden kann! Schließlich wollen wir unsere Programmier-Kapazität auch noch für die Weiterentwicklung unserer Programme nutzen. Unsere Strategie sieht deshalb vor, dass wir Fenster für Fenster, Dialog für Dialog, Programmzeile für Programmzeile nacheinander umstellen werden. Dieser Prozess wird sich über Monate hinziehen.

Die Technik dazu haben wir in den letzen Monaten entwickelt. Im Idealfall ist der Umstellungsprozess für den Anwender transparent, er sollte davon eigentlich nichts merken (außer vielleicht, dass manche Programmteile schnellen laufen als vorher…). Auf den REFLEX-Administrator kommt jedoch unter Umständen ein kleiner Aufwand zu, der mit der Version 9 von REFLEX beginnt.

2.2 Welcher Aufwand?

Wie groß der Aufwand für den Administrator ist, auf ADO umzustellen, hängt von der bestehenden Konfiguration ab. In unseren Feld-Tests haben wir festgestellt, dass es bei manchen Anwendern ohne eine einzige Änderung möglich ist, REFLEX-9 mit ADO zu verwenden. Bei anderen muss die Datenbank-Konfiguration (bzw. die INI-Datei, in der diese gespeichert ist), geändert werden. Einzelheiten dazu werden weiter unten beschrieben.