Online mini IDE und Compiler

In diesem Artikel möchte ich den online Service Ideone vorstellen, welchen ich als extrem nützlich empfinde. Der hauptsächliche Nutzen geht aus meiner nachfolgenden kleinen Vorgeschichte sehr schnell hervor.

Kennen Sie das? Sie beschäftigen sich mit einer für Sie neuen Programmiersprache und möchten die Konzepte direkt testen, jedoch haben sie noch keine entsprechende Entwicklungsumgebung installiert! Oder sie rufen sich eine bereits bekannte Programmiersprache erneut in Erinnerung, aber haben keinen Compiler mehr dafür auf Ihrem System! In meinem Fall hat es sich so zugetragen, dass ich in dem Buch “Sieben Wochen, sieben Sprachen” [1] über das mir bereits grob bekannte Färbeproblem gestolpert bin. Die dort propagierte Prolog-Lösung für einen Teil der Bundesstaaten der USA wollte ich auf die deutschen Bundesländer adaptieren. Nachdem ich den Quellcode angepasst hatte, fehlte mir jedoch ein Compiler bzw. Interpreter für Prolog. Da mich lediglich die Lösung für dieses eine Problem interessierte, war ich nicht gewillt eine Prolog IDE auf mein System zu installieren. Glücklicherweise half Ideone weiter, so dass ich nach ein / zwei Fehleranpassungen eine konkrete Farbaufteilung bekam.

Was genau ist Ideone nun? Man könnte es als Pastebin für Sourcecode bezeichnen, welcher serverseitig ausgeführt wird. Für die Nutzung ist keine Registrierung nötig, jedoch möglich. Als  angemeldeter Nutzer können monatlich 1000 Quellcodes/Texte geteilt werden. Sind die eigenen Anforderungen höher, so kann eine größere Anzahl käuflich erworben werden.

Folgendes wird angeboten:

  • Sharing von Quellcode sowie Text mit mehreren Sichtbarkeitsstufen:
    • Public: Jeder kann den geteilten Quellcode einsehen und dieser erscheint unter der Rubrik “Neuster Code”
    • Private: Jeder kann den geteilten Quellcode anhand seiner URL einsehen, aber eine Auflistung in der Rubrik “Neuester Code” erfolgt nicht.
    • User’s: Nur der Ersteller hat auf den Quellcode Zugriff. Dafür ist eine Registrierung nötig und für die Nutzung muss der Benutzer angemeldet sein.
  • Nach dem Sharing kann die URL über 106 Social Media Plattformen und Email weiter verteilt werden:
    • Facebook
    • Twitter
    • Google+
    • Pinterest
    • Delicious
  • Aktuell werden 54 verschiedene Programmiersprachen unterstützt
  • Compilierung und Ausführung des Quellcodes:
    1. Dauer des Compiliervorgangs beschränkt auf 10 Sekunden.
    2. Dauer der Ausführungszeit beschränkt auf 5 Sekunden (Standardwert) und erweiterbar auf 15 Sekunden für angemeldete Benutzer.
    3. Eingabedaten für das Programm können gesetzt werden
      • Direkt auf der Webseite oder
      • als File-Upload
  • Das Setzen von Tags und Notizen
  • Zugriff mittels API

Nachfolgend ist die Eingabemaske für eine Neuanlage am Beispiel des Färbeproblems dargestellt.

 

Nach einem Klick auf ideone it! steht der Quellcode online zur Verfügung: http://ideone.com/Md1BWi

Folgt man obigem Link, so gelangt man zum konkreten Quellcode. Die wichtigsten Optionen hier sind:

      • Klonen eines Quellcodes. Dies führt zur Maske für die Neuanlage, welche bereits mit den zu duplizierenden Daten vorbelegt wurde. Ein Klick auf ideone it! stellt den (eventuell abgeänderten) Quellcode unter einer neuen URL bereit.
      • Editieren des Quellcodes.
      • Herunterladen des Quellcodes als Datei mit passender Dateiendung.
      • Kopieren des Quellcodes in die Zwischenablage.

Weiterhin erscheint der berechnete Output zur Anzeige (vgl. nachfolgende Abbildung):

Der berechnete Output in obiger Abbildung stellt eine mögliche Färbung dar. Die Folgende Zeile

 

Action (; for next solution, a for all solutions, RET to stop) ?

 

deutet auf weitere Ausgaben (Lösungen) hin und findet sich im Output sehr oft wieder. Leider habe ich noch keine Möglichkeit gefunden, die zusätzlichen Lösungen anzuzeigen.

Vermutlich führt genau diese Vielzahl zur nachfolgenden Fehlermeldung, welche auf eine Überschreitung der zulässigen Speicherbeschränkung hindeutet.

 

result: runtime error     time: 0.03s    memory: 68352 kB     signal: 25 (SIGXFSZ)

 

Folgende Lösung wurde berechnet.

 

Ba = green
BaWue = red
Ber = red
Bra = yel
Bre = red
Ham = blue
He = blue
MeVo = blue
Nie = green
NordWes = red
RhePfa = green
SaAn = red
Saa = red
Sach = blue
SchleHol = red
Th = yel

 

Eine grafische Repräsentation erhalten wir, wenn wir eine Landkarte von Deutschland manuell einfärben.

 

Die zusätzlich bereitgestellte API erweitert die Möglichkeiten noch weiter. Als Beispiel sei hier DeuterIDE angeführt, bei welchem es sich um eine Entwicklungsumgebung für Android und BlackBerry handelt. Damit ist es nun möglich auch mobil zu entwickeln und das mit Syntax-Highlighting, Shortcuts für häufig benutze Programmiersymbole und Unterstützung für 54 verschiedene Sprachen. Folgender Screenshot zeigt die GUI.

 

 

Fazit:

Ideone stellt grundsätzlich eine super Möglichkeit für das Teilen von Quellcode dar. Dieser ist für andere nicht nur einfach einzusehen, sondern der jeweils berechnete Output wird direkt mit angezeigt. Auch für das unkomplizierte Kompilieren eignet es sich sehr gut. Dies geht deutlich aus meinem Anwendungsfall hervor. Ohne den Aufwand der Installation einer Prolog Entwicklungsumgebung betreiben zu müssen, bin ich zu einer schnellen Lösung meines Färbungsproblems gekommen.

Durch die Bereitstellung als API sind eine Vielzahl an Szenarien denkbar, von welchen die beschriebene mobile Entwicklungsumgebung ein sehr nützliches Beispiel ist.

 


NeQuellen:

[1] Tate, Bruce (2011): Sieben Wochen, sieben Sprachen. 1. Aufl. Köln: O’Reilly.

Print Friendly

Hinterlasse eine Antwort

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind markiert *

*

Du kannst folgende HTML-Tags benutzen: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong>