Event-Based Components mit Ruby

Erstellt am 25. August 2012 von Ralfwestphal @ralfw

Zunehmend bin ich begeistert von dem, was so in der Softwarewelt passiert – aber erst spät in der .NET Welt ankommt. .NET ist immer noch cool – aber was mal leading edge war, fühlt sich für mich immer behäbiger an. Microsoft ist ein Flaschenhals (geworden) und schon gar nicht führend in vielen Aspekten der Softwareentwicklung.

Mono bringt manchmal Erleichterung, zum Beispiel beim Thema Infrastruktur in der Cloud oder iOS Programmierung. Doch noch mehr weitet sich der Horizont mit anderen Plattformen. Deshalb habe ich jetzt mal einen Vorstoß in Richtung Ruby gewagt.

  • F# ist interessant, reizvoll, verlockend… aber am Ende doch zu Microsoft. In der weiten, weiten Welt passiert damit zu wenig.
  • Java ist keine Option. Dazu bedarf es kaum einer Erklärung, oder?
  • Python ist mir inzwischen schon zu alt.
  • Scala mag ein würdiger Java-Nachfolger und hochaktuell sein, aber fühlt sich für mich immer noch zu instabil an. Bleeding edge will ich mir nicht antun. Dafür habe ich keine Zeit.
  • Clojure ist mir ebenfalls noch zu blutig.

Was bleibt ist, ist aus meiner Sicht Ruby. Es mag schon einen Hauch in die Jahre gekommen zu sein. Clojure is the new exciting kid on the block. Aber für mich ist Ruby gerade gut abgehangen. Tools und Technologien sind stabil, scheint mir.

Auf meinem Macbook Air ist Ruby schon installiert. Da kann ich auf der Kommandozeile mit einer REPL rumspielen. Zusätzlich habe ich mir RubyMine von JetBrains installiert. Das ist ne solide IDE für meine Zwecke.

Also bin ich jetzt im Lern- und Bastelmodus. Eine neue Welt kennenlernen. In kleinen Schritten. Aber natürlich nicht ohne Flow-Design!

Wenn schon ein Ausflug auf eine neue Plattform, dann muss ich Flow-Design Entwürfe dort leicht umsetzen können. Geht das mit Ruby? Ja, das geht. Hier das Listing der Implementation eines ganz einfachen Flows:

Ich habe den Flow bewusst mit Event-Based Components realisiert, um ein Gefühl für den Unterschied zu C# zu bekommen. Ich bin begeistert! Das macht Laune mit Ruby. Es geht ganz einfach, wie Sie sehen.

Nach ein paar Stunden zugebracht mit der Lektüre von Ruby Büchern und Rumspielen mit der IDE ist mein derzeitiges Urteil: Ruby fühlt sich schlank an und bietet manches, was ich lange in C# vermisst habe, z.B. geschachtelte Funktionen.

Wenn das so weitergeht, dann kann es sein, dass Sie hier im Blog ab und an Ruby-Code zu lesen bekommen :-)