Qooxdoo IDE mit Lazarus

Für alles, was in den übrigen Lazarusthemen keinen Platz, aber mit Lazarus zutun hat.
Antworten
stacho
Beiträge: 32
Registriert: Do 26. Nov 2009, 22:29

Qooxdoo IDE mit Lazarus

Beitrag von stacho »

Hallo Lazarus-Gemeinde,

seit Delphi 1 mit ich nun als Hobby-Entwickler mit Pascal unterwegs. Nun beschäftige mich schon einige Zeit damit, welche sinnvolle Alternative zur Web-Entwicklung für mich in Frage kommt. Ich habe mir dabei jquery, bzw. jquery ui, extjs, dojo, und qooxdoo angesehen.

Mir ist klar, dass diese Toolkits/Frameworks teilweise nicht miteinander vergleichbar sind. Aber lange Reede-kurzer Sinn. Ich möchte mich weiter mit Qooxdoo beschäftigen und hier keine Diskussion über das richtige Webframework starten.

Qooxdoo bietet mit seinem SDK die Möglichkeit desktopähnliche Webanwendungen oder mobile Anwendungen zu schreiben. Weiterhin gibt es die Möglichkeit der Einbindung in Webseites ähnlich wie jquery und die Erstellung von serverseitigem Javascript.

Qooxdoo wird professionell von 1&1 weiterentwickelt und liegt zurzeit in der Version 4.1 vor. Für standalone-Desktop(Web)-Anwendungen oder Mobile anwendungen braucht man sich nur mit Javascript auseinander setzen. Es sind erstmal keine html- und css-Kenntnisse notwendig.

Der objektorientierte-Aufbau der Sprache sollte für Leute aus der Object-Pascal-Ecke leicht zu verstehen sein.

Was mir jedoch fehlt, ist eine deutschsprachige Community und eine wie von Lazarus/Delphi gewohnte IDE. Diese möchte ich jetzt mit Lazarus realisieren. Evtl. kann man dann ja später Pascal als Sprache drübersetzen. Aber das ist erstmal nicht im Fokus.

Nun die große Frage in die Runde: Wer macht mit?

Benutzeravatar
theo
Beiträge: 10497
Registriert: Mo 11. Sep 2006, 19:01

Re: Qooxdoo IDE mit Lazarus

Beitrag von theo »

Gab es nicht schon mal was in der Art mit ExtJs?
https://www.youtube.com/watch?v=Y_x_n5_OJQI

stacho
Beiträge: 32
Registriert: Do 26. Nov 2009, 22:29

Re: Qooxdoo IDE mit Lazarus

Beitrag von stacho »

Ja theo das gibt es.

ExtPascal wird aber nicht wirklich weiter entwickelt. Es ist auch ein ganz schöner Krampf, das unter Lazarus zum Laufen zu bringen. Es verwendet Indy für den internen Server.
Das Projekt dürfte auch tot sein, da Sencha Lizenzgebühren verlangt, wenn man einen Designer auf Basis von ExtJs baut.

Die Lizenzkosten für die Komerzielle ExtJs-Lizenzen sind übrigens gepfeffert seit Sencha nur noch 5-Developer-Lizenzen verkauft.

Ein Ableger ist übrigens Uni-GUI. http://www.unigui.com/ - Läuft nur unter Delphi.
Raudus http://www.raudus.com/ ist auch damit gestartet, verwendet aber wohl mittlerweile seine eigene Js-Basis. Leider closed source.

Alle diese Varianten laufen nur auf Servern wo man mind. cgi’s installieren dürfen muss. Mir geht es hier erstmal um die Client-Seite.
Die Server-Logik möchte ich getrennt behandeln.

Benutzeravatar
theo
Beiträge: 10497
Registriert: Mo 11. Sep 2006, 19:01

Re: Qooxdoo IDE mit Lazarus

Beitrag von theo »

Was möchtest du nun genau haben? Eine IDE?
Dann fang doch mal an. Wenn dein Ansatz appetitlich aussieht, springt vielleicht jemand auf.

stacho
Beiträge: 32
Registriert: Do 26. Nov 2009, 22:29

Re: Qooxdoo IDE mit Lazarus

Beitrag von stacho »

Ich erzähle mal, wo ich gerade stehe

Ich arbeite unter Windows, aber es sollte das Ziel sein, dass das Programm auch auf mind. Linux läuft.

Die ersten Steps:

1. Qooxdoo Projektstruktur aus der IDE heraus erstellen
2. Code Editor mit Syntax-Highliter und Code-Vervollständigung
3. Designer

Zu 1:

Qooxdoo verwendet Phyton-Skripte um
• Ein Anwendungsgerippe zu erstellen. Dabei werden Ordner-Strukturen und und grundlegende js-Dateien erstellt.
• Source-Code erstellen. Dieser Schritt ist immer notwendig, wenn man eine neue Klasse erstellt.
• Build erstellen. Dieser Schritt erstellt komprimiertes Javascript was aber schwer zu debuggen ist.

Das Ausführen dieser Skripte ist schon fast gelöst. Ich habe mich hieran orientiert:http://forum.lazarus.freepascal.org/index.php?topic=18463.0

Zu 2:

Ich habe mir erstmal ein DIE-Gerippe aus Lazarus-Standardkomponenten zusammengehauen.
qxPasIDE.jpg
Sieht altbacken aus, aber so dürfte es leicht zu portieren sein. Mit dem Design können sich andere beschäftigen.

Für den Code-Editor setze ich mich zurzeit mit SynEdit auseinander. Zurzeit habe ich den JsHighlighter in Verwendung.
Ich denke da muss ich aber wohl einen eigenen Qooxdoo-Highlighter bauen. Dazu beschäftige ich mich gerade mit dem Auslesen der Qooxdoo-API.
Diese stellt alle Funktionen, Klassen, Eigenschaften usw. als json-Files zur Verfügung.

Zu 3:
Hier ist noch nicht viel passiert. Ich versuche erstmal zur Übung mit fpcef3 Siehe http://www.lazarusforum.de/viewtopic.php?f=18&t=7676 eine Kommunikation zwischen Javascript in Chromium und der Anwendung hinzubekommen.

Antworten