Ruby (Programmiersprache)

aus GlossarWiki, der Glossar-Datenbank der Fachhochschule Augsburg
Wechseln zu:Navigation, Suche

1 Definition

Ruby ist eine objektorientierte Skriptsprache, die Syntaxelemente von Perl mit Features von Smalltalk kombiniert.

2 Geschichte

Ruby wurde in Japan von Yukihiro "Matz" Matsumoto entwickelt und 1995 in der ersten Version veröffentlicht.

3 Interpreter

Abgesehen vom Original-Interpreter MRI (Matz-Ruby-Interpreter) gibt es inzwischen Portierungen für Java (JRuby) oder .NET (IronRuby). Damit lassen sich mit Ruby alle Klassen und Bibliotheken der zugrunde liegenden Plattform verwenden.

4 Integration

Die Integration von JRuby geht sogar so weit, dass sich mit Ruby on Rails JEE-konforme Webanwendungen entwickeln lassen, die man in einem JEE-Container deployen kann. Noch bessere Bytecode-Kompatibilität für Java bietet Groovy.

5 Features

  • plattformübergreifend verwendbar
  • strenges objektorientiertes Prardigma: Alle Datentypen sind Objekte (auch Primitive)
  • Unterstüzung von regulären Ausdrücken auf Sprachebene
  • Automatisches Garbage Collection
  • Metaprogrammierung
  • Packetmanager RubyGems

6 Ruby Shell

Bei jeder Ruby-Installation ist eine Shell enthalten. Die „irb“-Shell („Interactive Ruby“) kann verwendet werden, um schnell und einfach Ausdrücke zu testen.

7 Beispiele

Integer:

  irb(main):001:0> n = 2 * 3 + 2
  => 8
  irb(main):002:0> n.class
  => Fixnum

String:

  irb(main):001:0>n = "Hallo " * 3
  => "Hallo Hallo Hallo"
  irb(main):002:0> n.class
  => String
  irb(main):003:0> n[0,5]
  => "Hallo

Schleifen:

  irb(main):001:0> a = 0
  => 0
  irb(main):002:0> 1.upto(5) do |i| a = a + i end
  => 1
  irb(main):003:0> a
  => 15

Listen und Iterator:

  irb(main):001:0> a = [ "a", "b", 2, "z", "21" ]
  => ["a", "b", 2, "z", "21"]
  irb(main):002:0> a.pop
  => "21"
  irb(main):003:0> a
  => ["a", "b", 2, "z"]
  irb(main):004:0> a.each do |c| puts c.class end
  String
  String
  Fixnum
  String
  => ["a", "b", 2, "z"]


Metaprogrammierung:


JRuby: Verwendung von Swing mit JRuby

require "java"
frame = javax.swing.JFrame.new()
frame.setSize 200, 200
frame.add javax.swing.JLabel.new("hallo welt")
frame.setVisible true


8 Quellen

  • Ruby-Website
  • Armin Roehrl und Stefan Schmiedl (2004): Big in Japan. Linux-Magazin Sonderheft Scripting Edition, Linux New Media AG
  • JRuby
  • Groovy

9 Siehe auch


Dieser Artikel ist GlossarWiki-konform.
In diesem Artikel sollten die Quellenangaben überarbeitet werden.
Bitte die Regeln der GlossarWiki-Quellenformatierung beachten.