FlagShip

aus Wikipedia, der freien Enzyklopädie
Wechseln zu: Navigation, Suche
Logo von FlagShip

FlagShip ist eine objektorientierte und prozedurale Programmiersprache, basierend auf xBase, dessen Quellcodes der Compiler ebenfalls übersetzen kann. FlagShip ist für die 32 und 64bit Betriebssysteme Linux, Unix und Microsoft Windows verfügbar.

Geschichte[Bearbeiten]

Die erste FlagShip-Version hat multisoft Datentechnik GmbH im Jahre 1992 eingeführt, um Clipper, dBASE III+, FoxBASE, FoxPro und andere Anwendungen auf unterschiedliche Unix-Betriebssysteme, zum Beispiel SCO Unix, AIX, Solaris, HP-UX und Sinix zu portieren. 1995 erschien auch eine Linux-Portierung. Im Jahre 2002 wurde Visual FlagShip (abgekürzt als VFS) für Linux veröffentlicht, ab 2004 ist er auch für die 32/64-Bit-Windows-Betriebssysteme verfügbar (Windows NT, 2000, XP, Vista, 7 und Server 2008).

Programmierung[Bearbeiten]

FlagShip-Umgebung mit Debugger

FlagShip ist ein Programmier- und Entwicklungswerkzeug, das neben professionellen Anwendern auch von erfahrenen Privatanwendern, die ein Datenbankprogramm mit wenig Aufwand erstellen wollen, genutzt wird. Durch die volle Clipper-Kompatibilität ist FlagShip auch geeignet, vorhandene DOS-Anwendungen auf Unix, Linux oder Windows-Betriebssysteme zu portieren.

Visual FlagShip erstellt vollautomatisch aus dem gleichen Quelltext ein GUI-orientiertes oder textuelles Programm. Der Ausführungsmodus (GUI, textuell oder stream für Web) wird bei einer heterogenen Applikation automatisch durch die Umgebung bestimmt, bzw. kann durch Eingabeparameter bei der Kompilierung oder Programmausführung vorgegeben werden.

Folgender Beispielprogrammcode etwa ergibt nach Kompilierung die abgebildeten Programme im GUI- bzw. Textmodus.

Screenshots von Visual-FlagShip-Programmen im GUI- und Textmodus
USE address ALIAS adr SHARED NEW
SET COLOR TO "W+/B,GR+/R,W/B,W/B,GR+/BG"
SET GUICOLOR OFF
cls
@ 1, 0 SAY "Id No. " GET adr->IdNum PICT "999999" VALID IdNum > 0
@ 3, 0 SAY "Company" GET adr->Company
@ 3,35 SAY "Branch" GET adr->Branch WHEN !empty(adr->Company)
@ 4, 0 SAY "Name " GET adr->Name VALID !empty(adr->Name)
@ 4,35 SAY "First "  GET adr->First
@ 6, 0 SAY "Country" GET adr->Country PICTURE "!" + repli("x",24)
@ 8, 0 SAY "Zip " GET adr->Zip PICT "@!" VALID !empty(adr->Zip)
@ 9, 0 SAY "City " GET adr->City
@ 10, 0 SAY "Street " GET adr->Street
  
@ 6,35,11.4,47 GET adr->Type RADIOGROUP {"Male","Female","Company","None"}
@ 7,50 GET adr->Interest CHECKBOX CAPTION "Interested party"
@ 8,50 GET adr->Customer CHECKBOX CAPTION "Customer"
@ 9,50 GET adr->Reseller CHECKBOX CAPTION "Reseller"
@ 10,50 GET adr->Distrib CHECKBOX CAPTION "Distributor"
READ 

Weblinks[Bearbeiten]