Zum Hauptinhalt springen
Nicht aus der Schweiz? Besuchen Sie lehmanns.de

Ruby on Rails 2

Das Entwickler-Handbuch
Media-Kombination
699 Seiten
2008
Galileo Press
978-3-89842-779-1 (ISBN)

Lese- und Medienproben

Ruby on Rails 2 - Hussein Morsy, Tanja Otto
CHF 55,85 inkl. MwSt
zur Neuauflage
  • Titel erscheint in neuer Auflage
  • Artikel merken
Zu diesem Artikel existiert eine Nachauflage
Das erste Handbuch zu Ruby on Rails 2! Die zahlreichen und komplexen Möglichkeiten des Frameworks, das auch im Enterprice-Bereich häufig eingesetzt wird, werden ausführlich behandelt. Dennoch bleibt das Buch stets verständlich und praxisbezogen, da Rails anhand mehrerer Realworld-Beispiele erläutert wird.

Alle Beispielapplikationen sind dabei systematisch aufgebaut: von einer einfachen bis zu einer komplexen Anwendung inklusive TestDrivenDevelopment. Tipps und Tricks, eine umfassende Befehlsreferenz und eine Einführung in die Sprache Ruby lassen dann keine Wünsche mehr offen.

Das erste Handbuch zu Ruby on Rails 2! Die zahlreichen und komplexen Möglichkeiten des Frameworks, das auch im Enterprice-Bereich häufig eingesetzt wird, werden ausführlich behandelt. Dennoch bleibt das Buch stets verständlich und praxisbezogen, da Rails anhand mehrerer »Realworld«-Beispiele erläutert wird.Alle Beispielapplikationen sind dabei systematisch aufgebaut: von einer einfachen bis zu einer komplexen Anwendung inklusive TestDrivenDevelopment. Tipps und Tricks, eine umfassende Befehlsreferenz und eine Einführung in die Sprache Ruby lassen dann keine Wünsche mehr offen.

Hussein Morsy arbeitet als Berater, Entwickler und Trainer in Düsseldorf und leitet seit 1997 die Agentur visualsoft.de. Zu seinen Kunden zählen große Unternehmen wie Vodafone, BASF und die Lufthansa. Er ist offiziell zertifizierter Macromedia Dreamweaver- und MySQL-Entwickler.

1;Auf einen Blick;4
2;Inhalt;6
3;Geleitwort des Fachgutachters;20
4;Einleitung;22
5;TEIL I Grundlagen;26
5.1;1 Einführung;28
5.1.1;1.1 Wie entstand Rails?;28
5.1.2;1.2 Warum Ruby?;29
5.1.3;1.3 Model View Controller;31
5.1.4;1.4 Datenbankpersistenz;32
5.1.5;1.5 Konvention statt Kon.guration;32
5.1.6;1.6 Das DRY-Prinzip;33
5.1.7;1.7 Das neue Web 2.0;33
5.1.8;1.8 Neues in Rails 2.0.x;34
5.1.9;1.9 Update auf Rails 2.0.x;37
5.2;2 Installation;42
5.2.1;2.1 Allgemeines;42
5.2.2;2.2 Installation unter Mac OS X;43
5.2.3;2.3 Installation unter Windows;49
5.2.4;2.4 Installation unter Linux;54
5.2.5;2.5 Editoren und Entwicklungsumgebungen;56
5.3;3 Erste Schritte;60
5.3.1;3.1 Eine Rails-Applikation erstellen;60
5.3.2;3.2 Der lokale Rails-Server;61
5.3.3;3.3 Grundgerüst mit Scaffolds erstellen;62
5.3.4;3.4 Die Applikation im Browser aufrufen;64
5.3.5;3.5 HTTP-Authenti.zierung;65
5.4;4 Einführung in Ruby;68
5.4.1;4.1 Was ist Ruby?;68
5.4.2;4.2 Ruby-Code ausführen;69
5.4.3;4.3 Grundlagen;72
5.4.4;4.4 Zahlen;89
5.4.5;4.5 Zeichenketten;92
5.4.6;4.6 Symbole;111
5.4.7;4.7 Reguläre Ausdrücke;112
5.4.8;4.8 Arrays;117
5.4.9;4.9 Hashes;131
5.4.10;4.10 Datum und Zeit;140
5.4.11;4.11 Module;148
6;TEIL II Beispiel-Applikationen;152
6.1;5 Eine einfache Bookmarkverwaltung;154
6.1.1;5.1 Rails-Projekt erstellen;155
6.1.2;5.2 Weitere Views anlegen;164
6.1.3;5.3 Layout;166
6.1.4;5.4 Model;172
6.1.5;5.5 CRUD Create Read Update Delete;181
6.1.6;5.6 Fehlerbehandlung in Formularen;193
6.1.7;5.7 Flash-Messages;198
6.1.8;5.8 Refaktorisierung mit Helper und Partials;201
6.1.9;5.9 Authenti.zierung;207
6.1.10;5.10 Routing;217
6.1.11;5.11 RESTful Rails;224
6.1.12;5.12 Darstellungsformate in RESTful Rails;231
6.1.13;5.13 Ajax;233
6.2;6 Test-Driven Development;242
6.2.1;6.1 Was ist TDD?;242
6.2.2;6.2 Vorstellung des Projekts;244
6.2.3;6.3 Projekt erstellen und kon.gurieren;246
6.2.4;6.4 Unit-Tests;247
6.2.5;6.5 Functional-Tests erstellen;270
6.2.6;6.6 Autotest;283
6.2.7;6.7 Referenz;284
7;TEIL III Das Rails-Framework;288
7.1;7 Rails-Projekte erstellen;290
7.1.1;7.1 Generieren eines Rails-Projektes;290
7.1.2;7.2 Verzeichnisstruktur einer Rails-Applikation;293
7.1.3;7.3 Namenskonventionen;295
7.1.4;7.4 Datenbank-Kon.guration;297
7.1.5;7.5 Umgebungseinstellungen;300
7.1.6;7.6 Generatoren;305
7.1.7;7.7 Rails-Konsole;309
7.1.8;7.8 Lokaler Server;310
7.1.9;7.9 Logging;311
7.1.10;7.10 Debugging;312
7.1.11;7.11 Rake;315
7.1.12;7.12 EdgeRails;320
7.1.13;7.13 Ein Rails-Projekt in Subversion überführen;320
7.2;8 Templatesystem mit ActionView;326
7.2.1;8.1 ERB-Templates;327
7.2.2;8.2 Erstellung von Templates;329
7.2.3;8.3 Helper;330
7.2.4;8.4 Layouts;352
7.2.5;8.5 Formulare;354
7.2.6;8.6 Partials;390
7.2.7;8.7 Alternative Template-Systeme;397
7.3;9 Steuerzentrale mit ActionController;400
7.3.1;9.1 Grundlagen;400
7.3.2;9.2 Aufgaben des Controllers;402
7.3.3;9.3 Filter;415
7.3.4;9.4 Routing;418
7.4;10 Datenbankzugriff mit ActiveRecord;426
7.4.1;10.1 Einführung;426
7.4.2;10.2 Eine ActiveRecord-Model-Klasse generieren;436
7.4.3;10.3 Rake-Tasks zum Verwalten von Datenbanken;441
7.4.4;10.4 Getter- und Setter-Methoden;445
7.4.5;10.5 Erstellen, bearbeiten und löschen;447
7.4.6;10.6 Suchen;450
7.4.7;10.7 Datenbankschema und Migrations;460
7.4.8;10.8 Migration-Skripte;461
7.4.9;10.9 Migration-Befehle im Detail;468
7.4.10;10.10 Assoziationen;476
7.4.11;10.11 Validierung;504
7.4.12;10.12 Statistische Berechnungen;516
7.4.13;10.13 Callbacks;517
7.4.14;10.14 Vererbung;519
7.5;11 E-Mails verwalten mit ActionMailer;524
7.5.1;11.1 Beispielprojekt: Kontaktformular;524
7.5.2;11.2 HTML-E-Mails;536
7.5.3;11.3 E-Mails mit Anhängen;537
7.5.4;11.4 Kon.guration;537
7.6;12 Nützliche Helfer mit ActiveSupport;540
7.6.1;12.1 Zahlen;541
7.6.2;12.2 Zeichenketten;546
7.6.3;12.3 Arrays;547
7.6.4;12.4 Hashes;548
7.6.5;12.5 Datentypunabhängig;549
7.7;13 Ajax on Rails;552
7.7.1;13.1 Grundla

In diesem Kapitel zeigen wir am Beispiel eines Verwaltungssystems für Flüge, wie man eine testgesteuerte Applikation entwickelt.

6 Test-Driven Development (S. 241-242)

In diesem Kapitel zeigen wir Ihnen, wie man eine Applikation mit der testgesteuerten (Test-Driven Development) Technik entwickeln kann. Hierbei wird nicht erst nach der Programmierung der Code getestet, sondern umgekehrt. Diese Programmiertechnik wird von immer mehr Entwicklern eingesetzt.

6.1 Was ist TDD?

Eine Rails-Applikation besteht aus mehreren Teilen, die miteinander interagieren. Die Models, Controller und Views sind gemeinsam durch ihre Interaktion für die Darstellung der Inhalte verantwortlich. Wenn an einer Stelle, zum Beispiel im Model, etwas geändert wird, kann das Konsequenzen an anderen Stellen haben. Wird zum Beispiel ein Datenbankfeld umbenannt, muss in letzter Konsequenz auch der View entsprechend angepasst werden.

Das heißt, mit steigender Komplexität wird es immer schwieriger, die Ursachen für mögliche Fehler zu finden.

Und genau an diesem Punkt setzt Test-Driven Development (TDD) an. Es wird eine Annahme getroffen und entsprechender Testcode programmiert, der dann überprüft, ob der Code der Applikation auch der Annahme entspricht. Wir legen also im Testcode fest, was wir von dem Teil der Applikation, den wir gerade testen, erwarten.

Wenn zum Beispiel ein Preis ermittelt werden soll, erwarten wir unter bestimmten Bedingungen einen bestimmten Wert. Ob der ermittelte Wert dem erwarteten Wert entspricht, überprüfen wir mit dem Testcode. Das Interessante dabei ist, dass der Testcode nicht am Ende eines Projektes entwickelt wird, sondern bevor man eine Zeile Code der eigentlichen Applikation entwickelt hat. Das heißt, wir beginnen mit dem Testcode, der uns dann vorgibt, was wir für unsere Applikation zu programmieren haben. Praktisch heißt das, wir treffen eine Annahme, programmieren den entsprechenden Testcode und führen diesen aus. Schlägt er fehl, korrigieren und/oder erweitern wir unseren Code der Applikation, bis der Testcode funktioniert.

Erscheint lt. Verlag 28.3.2008
Reihe/Serie Galileo Computing
Sprache deutsch
Maße 240 x 168 mm
Gewicht 1345 g
Themenwelt Informatik Programmiersprachen / -werkzeuge Ruby
Mathematik / Informatik Informatik Web / Internet
Schlagworte AJAX • Framework • HC/Informatik, EDV/Internet • MVC • Rails • Rails Praxis • Ruby • Ruby On Rails • Web-Framework
ISBN-10 3-89842-779-X / 389842779X
ISBN-13 978-3-89842-779-1 / 9783898427791
Zustand Neuware
Informationen gemäß Produktsicherheitsverordnung (GPSR)
Haben Sie eine Frage zum Produkt?