Programmierung in Ruby

Der Leitfaden der Pragmatischen Programmierer

Vorwort



Menschen treibt es dazu, etwas zu erschaffen; ich liebe es wirklich, Dinge zu erschaffen. Und weil ich kein guter Maler, Zeichner oder Musiker bin, schreibe ich Software.

Kurz nachdem ich in die Computerei eingewiesen worden war, entwickelte ich mein Interesse an Programmiersprachen. Ich glaubte, das eine ideale Programmiersprache machbar sein müsste und ich wollte ihr Designer sein. Später, nachdem ich etwas mehr an Erfahrung gewonnen hatte, erkannte ich, dass diese ideale, allmächtige Programmiersprache doch schwieriger sein könnte, als ich gedacht hätte. Aber ich hoffte immer noch, eine Sprache zu designen, die für die meisten Sachen geeignet wäre, die ich täglich machte. Das war mein Traum als Student.

Jahre später sprach ich mit Kollegen über Script-Sprachen, über ihre Fähigkeiten und Möglichkeiten. Als ein Fan der Objekt-Orientierung seit über 15 Jahren schien es mir, dass OO-Programmierung auch sehr geeignet wäre für das Scripting. Ich forschte ein wenig im Netz herum, aber die Kandidaten, die ich fand, Perl und Python, waren nicht ganz das, wonach ich suchte. Ich dachte an eine Sprache mit mehr Möglichkeiten als Perl und mehr objekt-orientiert als Python.

Dann erinnerte ich mich an meinen alten Traum und entschied mich, meine eigene Sprache zu entwickeln. Zuerst spiele ich nur ein bißchen während der Arbeit damit herum. Aber langsam wuchs es zu einem Tool heran, das gut genug war, um Perl zu ersetzen. Ich nannte es Ruby --- nach dem kostbaren roten Stein --- und veröffentlichte es im Jahre 1995.

Seitdem haben eine Menge Leute Interesse an Ruby bekommen. Kaum zu glauben, aber in Japan ist Ruby mittlerweile populärer als Python. Ich hoffe, dass es im Rest der Welt auch mal so gut ankommen wird.

Ich glaube, dass das Ziel des Lebens (zumindest teilweise) ist, glücklich zu sein. Aufgrund dieser Überzeugung ist Ruby so designed, dass Programmieren nicht nur einfach sein soll sondern auch noch Spaß macht. Ruby erlaubt einem, sich auf die kreative Seite des Programmierens zu konzentrieren, mit weniger Stress. Wer mir nicht glaubst, lese dieses Buch und probiere Ruby aus. Ich bin sicher, dann wird er/sie mir zustimmen.

Ich bin den Leuten sehr dankbar, die zur Ruby-Community hinzugestoßen sind; sie haben mir sehr viel geholfen. Manchmal habe ich das Gefühl, Ruby sei wie mein Kind, aber tatsächlich ist es das Ergebnis der gemeinsamen Arbeit vieler Leute. Ohne ihre Hilfe wäre Ruby niemals das geworden, was es ist.

Ganz speziell bin ich den Autoren diese Buches dankbar, Dave Thomas und Andy Hunt. Ruby war niemals eine besonders gut dokumentierte Sprache. Weil ich es immer vorgezogen habe, Programme zu schreiben statt Dokumente, sind die Ruby-Handbücher weniger gründlich als sie sein sollten. Man musste schon den Quellcode lesen, um das genaue Verhalten der Sprache zu kennen. Aber nun haben Dave und Andy diese Arbeit für euch getan.

Sie entwickelten Interesse an einer wenig bekannten Sprache aus dem Fernen Osten. Sie untersuchten sie, lasen tausende von Zeilen Quellcode, schrieben unzählige Test-Scripts und E-Mails, klärten das undurchsichtige Verhalten der Sprache, fanden Bugs (und behoben auch einige) und schließlich setzten sie dieses großartige Buch zusammen. Nun ist Ruby sicherlich gut dokumentiert!

Ihre Arbeit an diesem Buch war nicht einfach, Während sie es schrieben, änderte ich die Sprache selber. Aber wir arbeiteten zusammen an den Updates und dieses Buch ist so exakt wie möglich.

Meine Hoffnung ist es, dass beide, Ruby und dieses Buch, dazu dienen, euch das Programmieren einfacher und fröhlicher zu gestalten. Habt Spaß!

Yukihiro Matsumoto, a.k.a. ``Matz''

Japan, Oktober 2000


Extracted from the book "Programming Ruby - The Pragmatic Programmer's Guide"
Übersetzung: Jürgen Katins
Für das englische Original:
© 2000 Addison Wesley Longman, Inc. Released under the terms of the Open Publication License V1.0. That reference is available for download.
Diese Lizenz sowie das Original vom Herbst 2001 bilden die Grundlage der Übersetzung
Es wird darauf hingewiesen, dass sich die Lizenz des englischen Originals inzwischen geändert hat.
Für die deutsche Übersetzung:
© 2002 Jürgen Katins
Der Copyright-Eigner stellt folgende Lizenzen zur Verfügung:
Nicht-freie Lizenz:
This material may be distributed only subject to the terms and conditions set forth in the Open Publication License, v1.0 or later (the latest version is presently available at http://www.opencontent.org/openpub/). Distribution of substantively modified versions of this document is prohibited without the explicit permission of the copyright holder. Distribution of the work or derivative of the work in any standard (paper) book form is prohibited unless prior permission is obtained from the copyright holder.
Freie Lizenz:
Permission is granted to copy, distribute and/or modify this document under the terms of the GNU Free Documentation License, Version 1.1 or any later version published by the Free Software Foundation; with no Invariant Sections, with no Front-Cover Texts, and with no Back-Cover Texts. A copy of the license is included in the section entitled "GNU Free Documentation License".