Auf dieser Website werden Cookies gesetzt, die für den sicheren Betrieb technisch erforderlich sind. Siehe: Datenschutz

JAX 08: Ruby - Programming Language of the Future

by Thomas,
assono GmbH, Standort Kiel,

A picture named M2

Stefan Tilkov:
Ruby ? die Programmiersprache der Zukunft
(Ruby ? Programming Language of the Future)

Why Ruby?

  • it's different
  • it supports growth
  • it's expressive
  • it's concise
  • we can afford it
  • Rails!
  • it's fun

Quick Intro

  • Type system: dynamic, strong, implicit
  • interpreted (mostly...)
  • very dynamic
  • strong metaprogramming support
  • purely object-oriented

code examples...

  • loops
  • lists and operations on lists
  • hashes

comparison von Java code and Ruby code
to sort an array by lenght of elements

  • methods
  • classes

#{variableName} in string literals is
replaced by the variable's value

  • inheritance
  • modules (kind of container for methods)
  • "getters" and "setters" (properties!)
  • Attribute Accessor: short cut for properties (nice smile.gif )

Metaprogramming with Ruby

Structures "Person", :first_name,
:last_name creates new class

Creating objects and classes by name

Kernel.const_get('String').new "Teststring"
creates String object

Test =

Indivual object methods

class << t1

object_method ...

Classes and constants

Runtime Definitions

Methods adding methods

Adding methods to existing classes like
String: (Re)opening classes

method_missing: Method called, when
a missing method is called, with name of called method as argument

short, declarative notation is "expanded"
to many method definitions

Ruby language implemenations

  • MRI = Matz's Ruby Interpreter
  • YARV = Yet anthother Ruby VM
  • Rubinius: "Ruby in Ruby"
  • JRuby: "Ruby in Java"

Ruby vs. other dynamic languages


  • many libraries
  • "write only" reputation
  • weak (wierd) OO features
  • very fast


  • great community
  • extensive libraries
  • extremely fast


  • JVM version of Python
  • neglected for a long time
  • now supported by Sun


  • designed for the JVM
  • supposedly easier for Java developers


Ruby: nice, concise, object-oriented

Killer feature: metaprogramming support

Killer framework: Ruby on Rails

Event Technical article JavaScript Other

You have questions about this article? Contact us:

Sie wollen eine individuelle Beratung oder einen Workshop? Read more

More interesting entries

Any questions? Contact us.

If you want to know more about our offers, you can contact us at any time. There are several ways to contact us for a non-binding first consultation.

assono GmbH

Location Kiel (headquarters)
assono GmbH
Lise-Meitner-Straße 1–7
24223 Schwentinental

Location Hamburg
assono GmbH
Bornkampsweg 58
22761 Hamburg

Phone numbers:
Human resources department: +49 4307 900 407
Marketing department: +49 4307 900 402

E-Mail adresses: