Harbour ist ein freier, plattformunabhängiger Compiler für die xBase Programmiersprache, die hauptsächlich zum Erstellen von Datenbankanwendungen verwendet wird. Es ist eine modernisierte Version des Clipper aus den 1980er Jahren, welcher mit .dbf (dBase) - Datenbanken arbeitete.
Harbour kann neben diesen Datenbanken, diverse andere relationale Datenbanken über Replaceable-Database-Drivers (RDD) oder native Anbindung verwalten, wie z. B. Microsoft Access, SQLITE, MySQL, PostgreSQL u. a. mittels LetoDBLeto DB können .dbf Dateien über das World wide Web bearbeitet werden. Die Funktionserweiterungen von Harbour gehen weit über die ursprüngliche Clipper 5.3 und Tools-Bibliothek hinaus.Harbour Reference Guide Wie bei Clipper lassen sich über den Makrocompiler sämtliche Funktionen der EXE aufrufen.
Der Harbour-Compiler ist quelloffen und kann, falls keine Binaries für das betreffende Betriebssystem vorhanden sind, selbst kompiliert werden.How to Build
Unterstützt werden eine Vielzahl von Betriebssystemen u. a. Microsoft Windows, Linux, Unix-Derivate, BSD, Mac OS X, MINIX 3, Windows CE, Pocket PC und auch MS-DOS. Auch Android-Apps und Konsolenanwendungen lassen sich mit Harbour erstellen.How to build HARBOUR to compile PRG for AndroidProgramming on Harbour for AndroidBuild Harbour on Android using Termux the easy way
Harbour erzeugt C-Quellcode. Dieser kann mit verschiedenen C-Compilern wie GCC, MinGW, Clang, ICC, Microsoft Visual C++, Borland C++, Watcom C/C++, Pelles C kompiliert werden.
Im Gegensatz zur Java-Devise „write once, run anywhere“, ist die Devise bei Harbour „write once, compile anywhere“. Konsolenanwendungen können ohne große Modifikationen (Ausnahme Betriebssystem spezifische Besonderheiten) auf andere Systeme portiert werden.
Die Harbour-Programmiersprache ist case-insensitiv, Anwendungen sind schnell und schwer zu dekompilieren.Comparing computer languages, Harbour, VFP and others Harbour unterstützt OOP-Programmierung, das Erstellen von Office-Dokumenten mittels OLE und CGI-Webanwendungen.Harbour CGI Über die FANNFast Artificial Neural Network Library Libraryhrb4fann lassen sich Neuronale Netze realisieren.
__INHALTSVERZEICHNIS__
Historie Harbour wurde als freier Compiler 1999 von Antonio LinaresInterview with Antonio Linares entwickelt, als Nachfolge des Clipper-Compilers, welche keine 32-Bit-Programme erzeugen konnte (siehe auch Clipper-Programmiersprache). Es ist ein Kommandozeilenprogramm ohne Benutzeroberfläche. Der Name ist eine Anlehnung an Clipper. Harbour stellt den Heimathafen der Clipper dar.
Releases
2005-06-20 Release Alpha build 45 2007-01-22 Release 0.99.1 Beta 1 2008-08-10 Release 1.0.0 2009-12-22 Release 2.0.0 (2009 wurde der Compiler grundlegend revidiert hauptsächlich von Viktor Szakáts und Przemyslaw Czerpak). 2011-07-17 Release 3.0.0 (Letztes Stable Release)
Ab 2011 gibt es nur noch Entwicklerversionen. Hierbei gibt es die Branches 3.2 und 3.4.
Zum Testen von Code-Schnipseln ohne Kompilierung und ohne Installation eines Programmpakets lassen sich die Formulare der Funktionsreferenz auf der offiziellen HomepageHarbour Reference Guide nutzen oder auch andere Seiten.Harbour Playground
Grafische Benutzeroberflächen Die erste Harbourversion unterstützte genauso wie der Clipper-Compiler keine GUI, sondern nur Konsolenanwendungen.
Aktuell lässt sich die QT-GUI integrieren.Harbour Core - How to enable optional components Fertige Programmpakete mit QT-Gui gibt es für Windows und Linux.Marinas-GUI
Für Windows gibt es das Harbour-MiniGUI (HMG) Programmpaket, welches mittels Windows-Api freie Windowsanwendungen ermöglicht. Dieses wurde von Roberto Lopez 2002 auf Basis der Alpha-Version des Harbour-Compilers entwickelt. 2004 entstand MiniGUI 1.0, ab 2005 folgte die HMG 2.0 extended edition. Als Compiler wurde Borland C++ verwendet. HMG-Anwendungen und das Programmpaket sind auch unter Linux mittels Wine lauffähig.HMG "Harbour minigui" en Linux con Wine
Die aktuellste grafische Benutzeroberfläche ist HMG extended.HMG extended, MinG-Version
Außer den genannten GUIs gibt es Versionen mit GTK und andere wie HWGui,Third-party packagesHwGUI Gui Library for Harbour und ooHG.OOHG - Object Oriented (x)Harbour GUI mini|hbIDE für QT
IDE Für die Programmierung reicht oft ein einfacher Editor aus. Notepad++ unterstützt Syntaxhighlighting für xBase (s. HMG-Forum). Formulare und die Gestaltung der Benutzeroberfläche lassen sich jedoch einfacher mit einer IDE erstellen. Für die Gestaltung mit QT gibt es die HBIDE,hbIDE für QT für Windows verschiedene Versionen der HMG-IDE. Die HMG-extended IDE ist aufgrund der erweiterten Controls nicht abwärtskompatibel.
Weblinks Harbour The Cross-Platform xBase HMG-Dokumentation HMG-Forum HMG extended Harbour for beginners HBQT-Tutorial HMG-Tutorial Viva Clipper Marinas-GUI
Einzelnachweise
Kategorie:Programmierwerkzeug Kategorie:Freies Programmierwerkzeug Kategorie:Datenbankmanagementsystem