Start der Rails-Rezepte-Serie

Heute beginnen wir mit einer Reihe von Rails-Rezepten in unserem Tutorials-Bereich.

Die Rezepte stammen aus dem deutschsprachingen Rail Kochbuch aus dem O’Reilly Verlag.
Wir möchten uns an dieser Stelle dafür bedanken, dass O’Reilly uns die Rezepte zur Verfügung stellt.

Den Start wird die Rails-Einführung machen und in den nächsten Tagen folgen weiter Auszüge.

Entwickeln mit Rails

2.0 Einführung

Rails ist darauf ausgerichtet, die Webentwicklung produktiver und einträglicher zu machen. Tatsächlich wird behauptet, dass Sie mit Rails bis zu 10-mal produktiver sein können als mit anderen Frameworks. Sie müssen selbst entscheiden, ob Rails einträglicher ist, aber wenn Sie produktiver sind, können Sie mehr Zeit damit verbringen, Sie interessierende Probleme zu lösen, anstatt das Rad ständig neu zu erfinden und Infrastruktur zu schaffen. Die Produktivitätsvorteile erkennen Sie am besten, wenn Sie sich eine komfortable Entwicklungsumgebung schaffen. Ihr primäres Entwicklungswerkzeug wird ein Texteditor oder eine integrierte Entwicklungsumgebung (Integrated Development Environment, IDE) sein. Dieses Werkzeug gut zu beherrschen erlaubt es Ihnen, sich effektiv innerhalb der Quelldateien der Anwendung zu bewegen. Sie benötigen außerdem Werkzeuge, um mit Rails über die Kommandozeile kommunizieren zu können, d.h., Sie müssen eine geeignete Terminal- oder Konsolenanwendung auswählen.
Dieses Kapitel enthält Rezepte, die Ihnen dabei helfen, Ihre Rails-Entwicklungsumgebung auszuwählen und den Ausgangspunkt einer Rails-Anwendung anzulegen. Wir behandeln auch einige hilfreiche Lösungen für gängige Probleme, denen man bei der Rails-Entwicklung häufig begegnet, etwa zur Generierung der Ruby-Dokumentation (RDoc) für Ihre Anwendung oder zur Entwicklung mit dem aktuellsten Rails (Edge Rails).

Sobald Sie bereit sind, neue Rails-Projekte anzulegen und zu bearbeiten, und alle Entwicklungs-Tools am richtigen Platz sind, können Sie damit beginnen herauszufinden, was Ihnen das Framework zu bieten hat.

2.1 Ein Rails-Projekt anlegen

Problem

Sie haben Rails auf Ihrem System installiert und wollen Ihr erstes Rails-Projekt anlegen.

Lösung

Wir gehen davon aus, dass Sie Ruby, RubyGems, Rails und eine der von Rails unterstützten Datenbanken (MySQL ist am weitesten verbreitet; PostgreSQL ist weniger populär, aber eine ausgezeichnete Wahl) installiert haben. Um eine neue Rails-Anwendung anzulegen, führen Sie den Befehl rails aus und übergeben ihm den Pfad auf die neue Anwendung als Argument. Um Ihre neue Anwendung zum Beispiel unter /var/www/cookbook anzulegen (wobei das cookbook-Verzeichnis noch nicht existiert), geben Sie den folgenden Befehl in einem Terminal-Fenster ein:

$ rails /var/www/cookbook
 
Der rails-Befehl legt das Verzeichnis für Ihr Projekt mit dem von Ihnen angegebenen Pfad an. Er erzeugt außerdem eine Reihe von Unterverzeichnissen, die den Projektcode nach der Funktion organisieren, die er innerhalb der MVC-Umgebung übernimmt. Der rails-Befehl kennt darüber hinaus verschiedene Kommandozeilenoptionen. Diese können Sie sich ansehen, indem Sie Folgendes eingeben:
$ rails --help
 
Die wichtigste dieser Optionen ist –database=database_type, wobei database_type einer der folgenden sein kann: mysql, oracle, postgresql, sqlite2 oder sqlite3. Um beispielsweise PostgreSQL anstelle der Standard-Datenbank (MySQL) zu verwenden, geben Sie den folgenden Befehl ein:

$ rails /var/www/cookbook --database=postgresql
 

Diskussion

Nachdem Sie ein Projekt mit Rails angelegt haben, sollten Sie sich die Struktur der generierten Verzeichnisse sowie die erzeugten Dateien ansehen. Ihr neues Rails-Projekt enthält eine nette README-Datei, die die Rails-Grundlagen beschreibt, etwa wie man an die Dokumentation gelangt, Rails debuggt, die Rails-Konsole, Breakpunkte und vieles mehr.
Ein neues Rails-Projekt enthält die folgenden Verzeichnisse:
app
enthält den gesamten anwendungsspezifischen Code dieser Anwendung. Der größte Teil der Rails-Entwicklung findet innerhalb des app-Verzeichnisses statt.
app/controllers
enthält die Controller-Klassen, die alle von ActionController::Base erben. Jede dieser Dateien sollte nach dem Modell benannt werden, das sie kontrollieren, gefolgt von _controller.rb (z.B. cookbook_controller.rb), damit ein automatisches Abbilden der URLs möglich ist.

app/models
enthält die Modelle, deren Namen die Form cookbook.rb haben sollten. Die Modellklassen erben größtenteils von ActiveRecord::Base.

app/views

enthält die Template-Dateien für den View. Der Name muss beispielsweise cookbook/index.rhtml für die Aktion CookBookController#index lauten. Alle Views verwenden die eRuby-Syntax. Dieses Verzeichnis kann auch Stylesheets, Images und so weiter enthalten. Diese können über symbolische Links mit public verbunden werden.

app/helpers
enthält View-Helper. Die Namen sollten die Form weblog_helper.rb aufweisen.
app/apis

enthält API-Klassen für Webdienste.
config
enthält Konfigurationsdateien für die Rails-Umgebung, die Routing-Map, die Datenbank und andere Abhängigkeiten.

components

enthält eigenständige Mini-Anwendungen, die Controller, Modelle und Views bündeln.
db
enthält das Datenbankschema in schema.rb. db/migrate enthält die Folge von Migrations für Ihr Schema.

lib
enthält anwendungsspezifische Bibliotheken – d.h. grundsätzlich jede Art von eigenem Code, der nicht unter Controller, Modelle oder Helfer fällt. Dieses Verzeichnis liegt im Ladepfad.
public

Das ist das für jeden verfügbare Verzeichnis. Es enthält Unterverzeichnisse für Images, Stylesheets und JavaScript-Skripten. Es enthält außerdem die Dispatcher und die Standard-HTML-Dateien.

script
enthält Helfer-Skripten für die Automatisierung und Generierung.
test

enthält Unit-Tests und funktionale Tests, zusammen mit Fixtures.
vendor
enthält externe Bibliotheken, von denen die Anwendung abhängig ist. Es enthält auch das Plugins-Unterverzeichnis. Dieses Verzeichnis liegt im Ladepfad.

Rails Cookbook (Cookbooks (O’Reilly))

“Rails Cookbook” is packed with the solutions you need to be a proficient developer with Rails, the leading framework for building the new generation of Web 2.0 applications. Recipes range from the basics, like installing Rails and setting up your development environment, to the latest techniques, such as developing RESTful web services. With applications that are code light, feature-full and built to scale quickly, Rails has revolutionized web development.

“The Rails Cookbook” addresses scores of real-world challenges; each one includes a tested solution, plus a discussion of how and why it works, so that you can adapt the techniques to similar situations. Topics include: modeling data with the ActiveRecord library; setting up views with ActionView and RHTML templates; building your application’s logic into ActionController; testing and debugging your Rails application; building responsive web applications using JavaScript and Ajax; ensuring that your application is security and performs well; deploying your application with Mongrel and Apache; using Capistrano to automate deployment; using the many Rails plugins; and, working with graphics. Whether you’re new to Rails or an experienced developer, you’ll discover ways to test, debug and secure your applications, incorporate Ajax, use caching to improve performance, and put your application into production. Want to get ahead of the Web 2.0 curve? This valuable cookbook will save you hundreds of hours when developing applications with Rails.

  • Taschenbuch: 534 Seiten
  • Verlag: (2007-01-16 )
  • Preis: 21.63 €
  • Sprache: english
  • ISBN-10: 0596527314
  • Autor(en): Rob Orsini
  • kaufen

Ruby Cookbook (Cookbooks (O’Reilly))

Oreilly erweitert seine Cookbook Reihe um eine Ruby-Rezeptesammlung. In Tradition der bisher veröffentlichten Kochbücher (Java, Perl, PHP,..) wird im September das erste Kochbuch zu Ruby unter dem Namen „Ruby Cookbook“ erscheinen.

Ganz in Manier der Reihe soll es Problemlösungen anhand von Beispielen bieten. Aus der Beschreibung kann man entnehmen, dass neben den Basis-Elementen der Sprache auch Problemlösungen zu den Themen wie Rails, XML, Internet Programmierung, verteilte Programmierung, Threads, System Administration und eigene Erweiterungen der Sprache angeboten werden.
Wie bereits auf unsere News-Seite [link] veröffentlicht wird dieses Buch bereits jetzt in der „Rough Cuts Version“ angeboten. Somit hat der zukünftige Leser die Gelegenheit vor der Veröffentlichung Einfluss auf den Inhalt der endgültigen Version zu nehmen.

  • Taschenbuch: 906 Seiten
  • Verlag: (2006-02-09 )
  • Preis: 25.66 €
  • Sprache: german
  • ISBN-10: 0596523696
  • Autor(en): Leonard Richardson
  • kaufen

Programmieren mit Ruby

Mit einem Vorwort von Yukihiro “matz” Matsumoto, dem Schöpfer von Ruby – p. Ruby ist eine neue und rein objektorientierte Skript-Sprache, die in Japan entwickelt wurde und auch in Europa und den USA die immer mehr Anhänger gewinnt. Sie zeichnet sich aus durch eine eine eingängige, gut lesbare Syntax, viele eleganten Programmier-Konstrukte sowie mächtige Funktionen zur Stringverarbeitung.

Mit Ruby kann man effizient Skripte entwickeln, aber auch umfangreiche Anwendungsprogramme schreiben, ohne dass die Übersichtlichkeit leidet. Dieses Buch liefert eine kompakte Einführung in die Sprache, ihre Konstrukte und ihre Möglichkeiten. Illustriert wird dies in mehreren Beispielprojekten, in denen echte Praxisprobleme in Ruby gelöst werden.

Das Buch ist in 5 Teile gegliedert: 1) Ruby kennen lernen: Bei diesem ersten Rendezvous zeigen die Autoren einige kurze Code-Fragmente, die “typisch Ruby” sind, und wie man sie ausprobieren kann. 2) Die “Einführung in Ruby” enthält das Ruby-Handwerkszeug, von Zahlen und Strings über Schleifen, Arrays und Hash-Tabellen bis hin zu Iteratoren, Continuations und Threads. 3) Objektorientiertes Programmieren in Ruby: Dieser Teil bietet einen kurzen Einstieg in objektorientiertes Arbeiten mit Ruby und erklärt, wie man mit Objekten, Klassen und Modulen umgeht. Er schließt mit einem Ausblick auf Design Patterns (Entwurfsmuster), Metaprogrammierung und Reflexion. 4) Im “Kochbuch” geht es um Ruby-Anwendungen, die bei der täglischen Arbeit eines Programmierers wichtig sind: CGI, XML, SOAP, Datenbanken, grafische Oberflächen und mehr … 5) Schließlich: ein Anhang mit “Schnellkursen” für Umsteiger aus den Sprachen, Perl, Java und C++. Das Buch wendet sich an professionelle Software-Entwickler und fortgeschrittene Hobby-Programmierer, die die neuen Möglichkeiten und Stärken von Ruby für ihre Arbeit nutzen wollen und einen schnellen Einstieg suchen.END E

Der Autor über sein Buch

Ruby praxisorientiert erlernen

Ruby ist eine neue und rein objektorientierte Skript-Sprache, die immer mehr Anhänger gewinnt. Sie zeichnet sich aus durch eine eine eingängige, gut lesbare Syntax, viele eleganten Programmier-Konstrukte sowie mächtige Funktionen zur Stringverarbeitung. Mit Ruby kann man effizient Skripte entwickeln, aber auch größere Programme schreiben, ohne dass die Übersichtlichkeit leidet.

Dieses Buch liefert eine kompakte Einführung in die Sprache, ihre Konstrukte und ihre Möglichkeiten. Illustriert wird dies in mehreren Beispielprojekten, in denen echte Praxisprobleme mit Ruby gelöst werden. Aus dem Inhalt:

– Wieso Ruby? Eine umfangreiche Code-Gallerie überzeugt sicherlich auch skeptische Leser von der Eleganz Rubys. – Einführung in Ruby: Erste Gehversuche mit grundlegenden Sprachelementen wie Zahlen, Strings, Hash-Tabellen und Arrays. – Ruby, 100% objektorientiert: von einfachen Klassen/Objekten und Modulen, über Mix-ins bis zu Entwurfsmustern – Ein Kochbuch mit Anwendungen: CGI-Skripte, XML-Bearbeitung, Datenbanken, Client/Server-Programmierung und vieles mehr – Praxis pur: Was man über Ruby schon immer wissen wollte. – Anhang: Schnelleinstieg für Perl- und Java Programmierer.

Das Buch wendet sich an professionelle Software-Entwickler und fortgeschrittene Hobby-Programmierer, die die neuen Möglichkeiten und Stärken von Ruby für ihre Arbeit nutzen wollen und einen kompakten Einstieg suchen.

Ruby ist auf fast allen gängigen Rechnerplattformen verfügbar, u.a. DOS, Windows, Linux und viele Unix-Versionen, MacOS und BeOS.

  • Taschenbuch: Seiten
  • Verlag: (2002-03-01 )
  • Preis: 36.00 €
  • Sprache: german
  • ISBN-10: 3898641511
  • Autor(en): A. Roehrl
  • kaufen

Verkauf von Ruby Büchern stieg um 1552%

Als Tim O’Reilly, Gründer des gleichnamigen Verlags, Informationen für einen Reporter bzgl. der Verkaufsentwicklung von Java und C# Büchern raussuchen wollte, ist ihm etwas weitaus interessanteres aufgefallen. Der Verkauf von Bücher über Ruby hat einen rasanten Zuwachs von 1552% zu verzeichnen.

In einer Auswertung über die verkauften Bücher der letzten 12 Wochen sind folgende Werte herausgekommen:
Java: – 4%
Perl: -3%
C#: + 16%
Phython: +20%
Ruby: +1552% (in Worten: eintausendfünfhundertzweiundfünfzig)

Tim schreibt auch, dass dieser erhebliche Zuwachs sicherlich auch in Verbindung mit der steigenden Popularität von Rails steht.

Den gesamten Beitrag findet man unter
http://radar.oreilly.com/archives/2005/12/ruby_book_sales_surpass_python.html.