Die Open-Source Delphi-Alternative im Überblick

Rapid-Application-Development mit Lazarus: cross-platform und kostenlos
Kommentare

Die Idee einer plattformübergreifenden Anwendungsentwicklung gibt es, seit es unterschiedliche Betriebssysteme gibt. Aus der Heterogenität dieser Systeme lässt sich schlussfolgern, dass es den allumfassenden Ansatz in diesem Bereich nicht geben kann. Dennoch wird versucht mit unterschiedlichen Konzepten dem Ziel möglichst nahe zu kommen. Einen Ansatz – in Form einer integrierten Entwicklungsumgebung – stellen wir in diesem Beitrag vor. Lazarus gilt als Open-Source-Rapid-Application-Development-Umgebung. Wir haben uns dieses Tool angesehen und geben Ihnen einen Überblick.

Dieser Artikel beschäftigt sich mit der freien Entwicklungsumgebung Lazarus. Wir probieren die Installation auf Windows und Linux und entwickeln ein erstes einfaches Programm zum Test. Als wichtigen Punkt probieren wir den Transfer der Anwendung zwischen den unterschiedlichen Betriebssystemen. Lazarus basiert auf der Verwendung von Pascal, genauer gesagt Free Pascal. Zunächst beginnen wir mit einer Einordnung von Lazarus in die „Landschaft“ der verfügbaren integrierten Entwicklungsumgebungen.

Daseinsberechtigung

Da die Entwicklung von Anwendungen im Systemumfeld von Microsoft Windows in den letzten Jahren durch das .NET Framework und dessen Sprachvielfalt (insbesondere C# und Visual Basic) geprägt wurde, ist die Frage nach einer weiteren integrierten Entwicklungsumgebung (IDE) durchaus berechtigt. Zur Beantwortung dieser Frage kann man drei wesentliche Gründe nennen:

1. Plattformübergreifende Programmentwicklung
2. Kostenfreie Alternative (insbesondere zu Delphi und dessen Nachfolgeprodukten)
3. Als Einstiegshilfe in die Programmierung

Plattformübergreifende Programmentwicklung

Zum Argument der plattformübergreifenden Programmierung kann man Folgendes ausführen: Aus Sicht der Entwickler und Softwarehersteller ist es wünschenswert, dass ein einmal entwickeltes Programm auf möglichst vielen Betriebssystemen lauffähig ist. Im Bereich der Desktopanwendungen sind das, neben den verschiedenen Versionen von Microsoft Windows (Windows XP, Windows Vista, Windows 7 und Windows 8), die unterschiedlichen Distributionen von Linux und das Betriebssystem Mac OS. Alle Systeme haben ihre spezifischen Anwendungen, entsprechende Vor- und Nachteile und werden vielfach verwendet. Heutzutage hat das Ziel der plattformübergreifenden Anwendungsentwicklung noch eine weitere Dimension. Neben verschiedenen Betriebssystemen kommen auch noch unterschiedliche Facetten von Geräteklassen ins Spiel. Nahezu gleiche Applikationen (denken Sie in diesem Zusammenhang beispielsweise an einen Internetbrowser) laufen auf den verschiedensten Geräten. Sortiert nach der physikalischen Größe des Geräts sind dies:

• Smartphones mit unterschiedlichen Betriebssystemen
• Tablett-PCs
• Netbooks
• Notebooks
• Klassische Desktopcomputer

Neben dem Einsatz unterschiedlicher Betriebssysteme sind die einzelnen Geräteklassen auch durch eine große Heterogenität der Hardwarevoraussetzungen gekennzeichnet. Eine besondere Herausforderung stellen die unterschiedlichen Bildschirmgrößen und die damit verbundenen Auflösungen dar. Anwendungen, die auf verschiedenen Plattformen zum Einsatz kommen, müssen in der Lage sein, mit dieser Herausforderung zurechtzukommen. Eine absolute Positionierung der Bedienelemente einer Benutzerschnittstelle (User Interfache = UI) verbietet sich daher. Stichwörter zu Lösungsansätzen sind in diesem Zusammenhang relative Positionierung der Steuerelemente, Einsatz von flexiblen Layoutcontainern und die Verwendung von plattformübergreifenden Grafikbibliotheken.

Kostenfreie Alternative zu Delphi und Nachfolgeprodukten

Delphi und dessen Nachfolgeprodukte (aktuell ist die Version RAD Studio XE3 der Firma Embarcadero) sind kommerzielle Entwicklerprodukte. Auch für den Einstieg sind keine kostenfreien aktuellen Versionen verfügbar. Das Delphi zugrunde liegende Konzept – auf der Basis von Rapid Application Development (RAD) – hat jedoch eine größere Entwicklergemeinde überzeugt. Auch mit dem Aufkommen neuerer und anderer Technologien (.NET Framework, Windows Presentation Foundation etc.) ist dieser Ansatz nicht untergegangen. Lazarus bietet die Möglichkeit, dieses bewährte Konzept einer größeren Zahl von Entwicklern, vom Einsteiger (Hobby-Programmierer) bis hin zur professionellen Programmentwicklung, verfügbar zu machen. Auf der Basis einer Open-Source-Lizenz wird über die Community für eine stetige Weiterentwicklung gesorgt.

Als Einstiegshilfe in die Programmierung

Neben diesen beiden Punkten kann man Lazarus durchaus auch für Anfänger empfehlen, die erste Schritte in der Entwicklung von Anwendungen unternehmen. Für Lazarus sprechen in dieser Hinsicht die folgenden Argumente:

Übersichtlichkeit: Die IDE weist eine übersichtliche Benutzeroberfläche auf. Heutige Entwicklungsumgebungen decken eine solch große Platte an Funktionen ab, dass man als Einsteiger schnell den Überblick verliert. Neben der Projektverwaltung sind das beispielsweise Tools zur Erfassung der Anforderungen oder zur grafischen Visualisierung, zum Beispiel mittels UML. Auch eine Versionsverwaltung kann meist direkt aus der IDE angesprochen werden. Viele Funktionen können durch Plug-ins oder Add-ins hinzugefügt werden. In der Folge entsteht meist eine fast unüberblickbare Vielfalt, die es dem Einsteiger nicht leicht macht. Am Anfang zählt – mit Blick auf die Motivation – insbesondere der schnelle Erfolg. Weiterhin wird eine solch umfassende IDE schnell schwerfällig, und es dauert eine gefühlte Ewigkeit, bis eine Anwendung kompiliert und aus der IDE heraus gestartet ist. Lazarus und der Free-Pascal-Compiler arbeiten (relativ) zügig.

Programmiersprache: Über die Wahl der richtigen Programmiersprache lässt sich lange philosophieren. Eines steht jedoch fest: Für den Einstieg sollte die Sprache in Syntax, Aufbau und Anwendung möglichst logisch sein. C# ist da schon deutlich besser als C oder C++. Pascal gilt als leicht erlernbar. Pascal wird/wurde daher auch sehr oft als „Lehrsprache“ an Bildungseinrichtungen verwendet. Die Erweiterungen um das objektorientierte Paradigma (Delphi) hat der Sprache auch moderne Konzepte verliehen. Sicherlich bieten andere Sprachen (C#, F#,…) noch weitaus modernere Ansätze (wie zum Beispiel LINQ, dynamische Sprachelemente, Datenbindung usw.). Aber all diese – durchaus sehr nützlichen – Funktionen sind für den Einsteiger eher hinderlich.

Insgesamt kann also festgestellt werden, es gibt durchaus genügend Spielraum für eine Platzierung von Lazarus auf den „Markt“ der Entwicklungsumgebungen. In den nachfolgenden Textabschnitten wird erörtert, wie gut diese Lücke gefüllt wird.
Aktueller Stand des Projektes und Installation
Recht aktuell – d. h. Ende August 2012 – wurde die Version 1.0 von Lazarus zum Download freigegeben. Die Entwicklungsumgebung ist für die folgenden Betriebssysteme (und Varianten) verfügbar:

•    Windows 32 Bit
•    Windows 64 Bit
•    Linux x86_64 RPM
•    Linux SRC RPM
•    Linux i386 RPM
•    Mac OS X i386
•    Linux amd64 DEB
•    Linux i386 DEB
•    Mac OS X PowerPc

Für einen ersten Test wird Lazarus für Windows 64 Bit (getestet auf Windows 7, 64 Bit) geladen und installiert. Das Setup erfolgt ohne Überraschungen, der zugehörige Free-Pascal-Compiler wird installiert und eingerichtet. Auf dem Desktop wird ein Icon für den Start der Entwicklungsumgebung angelegt. Hinweise zur Installation unter Linux erfolgen später; zunächst wollen wir uns auf einen ersten Test mit Lazarus einlassen.

Aufmacherbild: Young businesswoman jumping over gap. Risk concept von Shutterstock / Urheberrecht: Sergey Nivens

[ header = Seite 2: Ein erster Start ]

Ein erster Start

Beginnen wir mit der Entwicklung eines ersten Programms in Lazarus unter Windows 7. Dazu starten wir die IDE und speichern das Projekt direkt in einen eigens dafür eingerichteten Ordner. Lazarus erzeugt beim Anlegen eines Projektes gleich alle notwendigen Dateien, um dieses ohne weiteres Zutun kompilieren, starten und ausführen zu können. Wir bekommen eine klassische Desktopanwendung ohne weitere Funktionalität. Nun geht darum, eine erste richtige Anwendung zu erstellen, um ein Gefühl im Umgang mit der IDE zu entwickeln. Dazu nehmen wir die folgenden Einstellungen vor bzw. platzieren einige Steuerelemente auf der Benutzeroberfläche unseres einzigen Formulars:

• Festlegung, dass das Hauptfenster beim Programmstart maximiert erscheint: Setzen der Eigenschaft WindowsState auf den Wert wsMaximized
• Platzierung eines Menüsteuerelementes vom Typ TMainMenu
• Anordnung eines Steuerelementes zur Erfassung von Text: TMemo-Komponente
• Platzierung eines Steuerelementes für eine Statusbar: Komponente vom Typ: TStatusBar

Für das Menü werden nach Lust und Laune ein paar Unterpunkte festgelegt. Das geht komfortabel mithilfe des entsprechenden Editors (Abb. 1).

Abb. 1: Arbeitserleichterung durch den Menü-Designer

Das Memo-Steuerelement wird so konfiguriert, dass es sich der Größe des Fensters automatisch anpasst, d. h. den verbleibenden Platz jeweils ausfüllt (Align:=alClient). Testweise hinterlegen wir noch den Code zum Schließen der Anwendung in das Click-Ereignis des Menüpunktes SCHLIEßEN:

procedure TForm1.MenuItem2Click(Sender: TObject);
begin
  Close;
end;

Bei diesen wenigen Handgriffen solle es auch verbleiben. Wir kompilieren die Anwendung erneut und starten direkt aus der Entwicklungsumgebung heraus. Das Ergebnis ist in Abbildung 2 zu sehen.

Abb. 2: Erste Anwendung: der Code einer GUI-Anwendung wird durch Lazarus generiert

Interessant ist auch immer ein Blick in den Projektordner und in die dort generierten Dateien. Wir finden die zugehörige ausführbare Datei des Programms in Form einer .exe-Datei. Überraschenderweise hat diese eine beachtliche Größe. Hier muss man jedoch nicht gleich erschrecken. Die Dateigröße kommt hauptsächlich durch die Integration von so genannten „Debug-Informationen“ zustande. Die Einbindung dieser zusätzlichen Informationen kann man über die Projekteigenschaften deaktivieren.

Die Programmiersprache (Free) Pascal

Free Pascal ist ein freier Compiler, semantisch ähnlich und kompatibel mit Borlands Turbo Pascal 7 (TP7). Die Objektorientierung erweitert die Sprache um wichtige moderne Konzepte und orientiert sich damit an der Programmiersprache Delphi. Wichtige Funktionen von Free Pascal sind:

•    Objektorientierung
•    Weitgehende Kompatibilität zu Delphi
•    Wichtige Sprachelemente, wie Klassenvariablen, lokale Konstanten, Enumeratoren
•    Generische Sprachelemente

Aktuell ist die Version 2.6. Die kann von der Webseite des Projektes geladen werden. Dort findet man auch weitergehende Informationen zum Compiler. Free Pascal selber ist nicht an die Verwendung in Lazarus gebunden. Das Kompilieren einer Anwendung kann auch klassisch von der Kommandozeile aus erfolgen bzw. es steht auch eine Text-Mode-IDE zur Verfügung. Alternativ kann ein Editor nach Wahl verwendet werden. Hier geht es jedoch um die Zusammenarbeit mit Lazarus als visuelle Entwicklungsumgebung.

Steuerelemente

Lazarus basiert als RAD-Entwicklungsumgebung auf dem Vorhandensein von möglichst vielen Steuerelementen. Dieses komponentenbasierte Konzept ist Voraussetzung für eine effektive Programmentwicklung. Die Anordnung der Steuerelemente erfolgt in Gruppen und orientiert sich an der Oberfläche wie es bei Delphi seit den ersten Versionen vorgemacht wird (Abb. 3).

Abb. 3: Lazarus verfügt über eine umfangreiche Komponentenpalette

Die Komponenten von Lazarus decken alle wichtigen Bereiche der Erstellung einer Benutzeroberfläche ab. Darüber hinaus gibt es Steuerelemente, die wichtige Systemfunktionen (zum Beispiel Dialogfelder für die Arbeit mit dem Dateisystem) kapseln. Einige wesentliche Steuerelemente von Lazarus sind die Folgenden. Aufgeführt sind diese nach den Kategorien/Bereichen. Die Funktionen der Komponenten erklären sich aus den Namen:

• STANDARD: Menu, PopupMenu, Button, Label, TextBox, Menu, CheckBox, Memo, RadioButton, ListBox, ChomoBox, ScrollBar, GroupBar, Panel, Frame
• ADDITIONAL: Image, Shape, PaintBox, ColorBox
• COMMONCONTROLS: TrackBar, TreeView, ListView, PageControl, TabControl
• DIALOGS: OpenDialog, SaveDialog, SelectDirectoryDialog, ColorDialog, FontDialog, FindDialog, ReplaceDialog, OpenPictureDialog, SavePictureDialog, CalendarDialog, PrinterSetupDialog, PrinterDialog, PageSetupDialog
• DATACONTROLS: Steuerelemente, die direkt an die Datenbank gebunden werden
• SYSTEMCONTROLS: Timer, Komponenten zur Anbindung von Hilfesystemen
• DATAACCESSCONTROLS
• CHARTCONTROLS
• Komponenten zur Interaktion mit Datenbanken über SQL

Ein wichtiges Leistungsmerkmal ist die Erweiterbarkeit der IDE um zusätzliche Komponenten. Auch wenn die angebotenen Elemente bereits den größten Teil der benötigten Funktionalität abdecken, ist es problemlos möglich, weitere Komponenten zu installieren. Auch ist es möglich, Komponenten aus Delphi (Delphi Packages) zu konvertieren. Damit eröffnet sich ein großes Potenzial an Erweiterungsmöglichkeiten. Die Palette deckt alle möglichen Bereiche der Programmentwicklung ab und umfasst sowohl kostenpflichtige Angebote als auch durch die Community bereitgestellte Steuerelemente (Open Source).

Datenbankanbindung

Viele Anwendungen basieren darauf, dass diese Daten aus einer oder mehreren Datenquellen lesen und/oder bearbeiten können. Die Daten können aus den unterschiedlichsten Quellen stammen. Infrage kommen Dateien, lokale Datenbanken oder Daten, die auf Datenbankservern liegen. Für eine erfolgreiche Verwendung von Lazarus ist es erforderlich, dass man auf die unterschiedlichsten Quellen zugreifen kann. Die IDE selber bietet jedoch keinen Zugriff auf eine eigene Datenbank-Engine. Dieses ist auch nicht notwendig, da über spezifische Steuerelemente eine Anbindung an die unterschiedlichen Datenquellen sichergestellt werden kann (Abb. 4). So existieren fertige Komponenten für verschiedene Typen von Datenbanken und unterschiedliche Datenformate, wie zum Beispiel DBF-Dateien, Firebird-, Interbase- MySQL-, Oracle- und PostgreSQL-Datenbanken. Weiterhin bietet Lazarus Komponenten zum Halten der Daten im Speicher.

Abb. 4: Integration von Datenbankfunktionalität in Lazarus

Neben der rein technischen Anbindung der Datenquelle an die Anwendung stellt Lazarus so genannte „visuelle, datenbezogene Steuerelemente“ zur Verfügung. Diese dienen der Anzeige und Bearbeitung von Datensätzen bzw. einzelnen Datenfeldern. Dazu werden diese direkt über ein Objekt der Klasse TDataSource an die Datenquelle gebunden. Diese visuellen, datenbezogenen Steuerelemente entsprechen den Standard-Controls. Für die Anbindung von SQL-Datenbanken steht ebenfalls eine Gruppe von Steuerelementen zur Verfügung (SQLDB). Die Datenbank wird dann über die Abfragesprache SQL abgefragt. Aus der Entwicklungsumgebung heraus können auch einige Hilfsprogramme für eine komfortable Arbeit mit Datenbanken aufgerufen werden, u. a. der so genannten „Datendesktop“. Eine umfangreiche Darstellung zur Entwicklung von datenbankbasierten Anwendungen findet sich hier.

[ header = Seite 3: Lazarus unter Linux]

Lazarus unter Linux

Während die Installation unter Microsoft Windows ohne Aufwand durch das Ausführen einer einzelnen Setup-Datei schnell erledigt ist, ist bei der Installation unter Linux-Betriebssystemen etwas mehr zu beachten. Dazu muss man bedenken, dass es Linux als Betriebssystem eigentlich gar nicht in „Reinform“ gibt. Vielmehr handelt es sich um eigenständige Distributionen (zum Beispiel Ubuntu, Debian, Red Hat), die alle auf dem Linux-Kernel basieren. Eine Installation, die unter allen Systemen funktioniert, müsste also mit alle Distributionen zurechtkommen – eine fast nicht zu lösende Aufgabe. Das ist auch nicht notwendig, es stehen alternative Konzepte zur Verfügung:

1. Die meisten Distributionen stellen über ihre eigene Softwareverwaltung fertige Pakte zur Installation bereit. Der Vorteil liegt klar auf der Hand: Die Installation erfolgt komfortabel über den jeweiligen Softwaremanager der Distribution. Eventuelle Abhängigkeiten zwischen den Komponenten (hier zum Beispiel zwischen der IDE Lazarus und Free Pascal) werden automatisch berücksichtigt. Ein Nachteil kann aber entstehen, wenn durch die Distribution nicht die aktuelle Version bereitgestellt wird. Für Ubuntu stand zum Zeitpunkt des Verfassens dieses Beitrages lediglich eine Beta mit der Versionsnummer 0.9 zur Auswahl, während aktuell bereits die Version 1.0 von Lazarus war.
2. Man lädt die aktuellen Installationspakte – passend für die jeweilige Distribution – von der Lazarus-Projektwebseite und installiert die Anwendung selbst. Zu beachten ist, dass alle Pakete heruntergeladen und unter Beachtung der Abhängigkeiten in der richtigen Reihenfolge installiert werden. Für Lazarus sind folgende Pakete zu installieren: fpc, fpc-src und lazarus, diese stehen für die unterschiedlichen Betriebssysteme und Hardwarearchitekturen zum Download bereit. In der aufgeführten Reihenfolge sind die Pakete zu installieren. Es ist darauf zu achten, dass zur aktuellen Version von Lazarus auch die richtige Version des Free-Pascal-Compilers verwendet wird. Daher sollte der Download gemeinsam von der Webseite des Lazarus-Projektes erfolgen.
3. Auch die Quellen von Lazarus sind verfügbar, sodass man eine Kompilierung (Anpassung) der IDE auf einem neuen Zielsystem selbst vornehmen kann.

Ist die Installation abgeschlossen, so steht Lazarus auch auf Linux zur Verfügung. Die Benutzeroberfläche entspricht der Installation unter Microsoft Windows (Abb. 5).

Abb. 5: Lazarus unter Linux

Auch hier können wir zum Test eine erste Anwendung mit grafischer Benutzeroberfläche anlegen und diese direkt aus der IDE starten. Interessanter ist es jedoch, den Weg der plattformübergreifenden Programmentwicklung zu verfolgen. Dazu wird das oben erstellte Projekt aus der Windows-Umgebung direkt in der IDE unter Linux geladen. Wir kompilieren die Anwendung neu und können diese sofort starten und ausführen. Da bei diesem einfachen Programm keine plattformspezifischen Merkmale integriert sind, ist eine Anpassung des Quelltextes nicht notwendig. An dieser Stelle sind wir an einem wichtigen Punkt der plattformübergreifenden Programmierung. Nach Möglichkeit sind Funktionen zu verwenden, die unter allen Zielsystemen zur Verfügung stehen. Damit werden Anpassungen im Quellcode weitgehend vermieden. Das ist jedoch nicht immer möglich, sodass beim Transfer zwischen den Systemen entsprechende Nacharbeiten notwendig sind. Free Pascal bietet jedoch auch die Möglichkeit, die aktuelle Systemumgebung zu ermitteln und dann spezifischen Quellcode für jedes Betriebssystem zu hinterlegen. Dennoch gilt auch bei der Programmierung mithilfe von Lazarus, ein Test der Anwendung auf allen (!) Zielsystemen ist unumgänglich. So manche Besonderheit lässt sich trotz aller Sorgfalt kaum vorhersagen.

Lazarus unter anderen Systemen

Lazarus ist nicht auf die Betriebssysteme von Microsoft Windows und die verschiedenen Distributionen von Linux beschränkt (siehe vorherige Ausführungen). Die IDE kann auch auf anderen Systemen installiert werden. Bezüglich der Programmiersprache Free Pascal (Voraussetzung) gibt es diesbezüglich fast keine Einschränkungen. Free Pascal ist für folgende Betriebssysteme verfügbar: Linux, FreeBSD, Haiku, Mac OS X/iOS/Darwin, DOS, Win32, Win64, WinCE, OS/2, MorphOS, Nintendo GBA, Nintendo DS und Nintendo Wii. An Architekturen werden Intel x86, AMD64/x86-64, PowerPC, PowerPC64, SPARC und ARM unterstützt. Das bedeutet jedoch nicht, dass auf all diesen Systemen auch die Programmierumgebung installiert und ausgeführt werden kann. Neben der Verfügbarkeit von Free Pascal muss u. a. auch Lazarus selber auf dem gewünschten System kompiliert werden können. Aktuell ist dies auch auf Mac OS X und FreeBSD möglich. Die Installation verläuft ähnlich wie bei Linux; wird Hilfe benötigt, so findet man hier eine ausführliche Anleitung.

Ein Streifzug durch die IDE

Blicken wir zum Abschluss des Artikels noch einen Moment auf ein paar (besondere) Eigenschaften/Funktion der IDE, die dem Entwickler die Arbeit erleichtern:

• Quelltext als HTML speichern
• Umfangreiche Hilfe bei der Formatierung des Quelltextes
• Anbindung von Versionskontrollsystemen
• Refactor-Funktionen, wie zum Beispiel das Extrahieren von Prozeduren
• Umfassende Suchfunktionen, inklusive der Unterstützung regulärer Ausdrücke
• Dialoggestützte Einstellmöglichkeiten der Compiler-Optionen
• Verwaltung/Installation von Packages zur Erweiterung der Steuerelemente (visuell/nicht visuell)
• Unterstützung bei der Konvertierung von Delphi-Ressourcen (Projekte, Packages)
• Tool zur Durchführung eines Dateivergleichs
• Anpassungsmöglichkeiten der IDE an eigene Vorstellungen, beispielsweise bezüglich Schriftstil, Farben und des Verhaltens des Formulardesigners
• Arbeit mit Quelltextvorlagen

Weiterführende Informationen

Im Rahmen eines solchen einführenden Beitrages kann man bei den meisten Themen nur an der Oberfläche kratzen. Dennoch sollte deutlich werden, dass Lazarus einiges an Potenzial bietet, insbesondere was die plattformübergreifende Entwicklung anbelangt. Um sich weitergehend in das Thema einzuarbeiten, sind zusätzliche Informationen unumgänglich. Während für die Sprache (Objekt) Pascal eine Reihe von Fachbüchern auf den Markt verfügbar ist, ist die Auswahl für Lazarus und Free Pascal schon deutlich eingeschränkter. Hier ist das Web die erste Informationsquelle. Daneben können jedoch die zwei hier referenzierten Fachbücher – die fast ein Alleinstellungsmerkmal zu den beiden Themen bieten – empfohlen werden. Beide Bücher stammen direkt vom „Kern“ des Free-Pascal- bzw. Lazarus-Entwicklerteams. Sie liefern zum einem Informationen aus erster Hand zu den beiden Open-Source-Projekten und geben zum anderen die technisch notwendigen Einblicke, die für eine erfolgreiche Programmentwicklung unverzichtbar sind.

Kritik

Auch bei Lazarus gibt es einige Kritikpunkte. Neben möglichen Einschränkungen, die sich aus der Handhabung der IDE ergeben, resultiert der Hauptkritikpunkt aus der Konzeption einer plattformübergreifenden Entwicklung selbst. Diese bedingt, dass insbesondere bei den Möglichkeiten der Erstellung der Benutzeroberfläche Kompromisse – im Sinne eines übergreifenden Ansatzes – notwendig sind. Diese Vorgabe führt natürlich dazu, dass betriebssystemspezifische Technologien nicht verwendet werden können. Neben der Benutzeroberfläche gelten diese Einschränkungen auch bei der Verwendung systemnaher Funktionen, wie zum Beispiel die Arbeit mit Dateien oder die Berücksichtigung von Zugriffsrechten.

Fazit

Dieser Beitrag beschäftigte sich mit dem praktischen Einsatz der IDE Lazarus. Aus Sicht des Autors ist die Entwicklungsumgebung auch geeignet, um anspruchsvolle Applikationen umzusetzen. Lazarus setzt dabei auf das bewährte RAD-Konzept und möchte den Entwickler schnell zur Lösung führen. Das gelingt auch durch den Einsatz einer Vielzahl von vorgefertigten Komponenten. Der interessanteste Aspekt für die Verwendung von Lazarus ist zweifelsohne die Programmierung von plattformübergreifenden Anwendungen. Natürlich muss man Einschränkungen in der Gestaltung hinnehmen (Strichwort: Möglichkeiten von WPF unter Windows). Lazarus kann aber auch als kostenfreie Alternative zu den preisintensiven Produkten von Embarcadero (Delphi) angesehen werden. Auch für den Einsteiger kann die IDE punkten. 

Unsere Redaktion empfiehlt:

Relevante Beiträge

Meinungen zu diesem Beitrag

X
- Gib Deinen Standort ein -
- or -