SlideShare ist ein Scribd-Unternehmen logo
1 von 12
on 
Eine Einführung
Ruby (Sprache) auf Rails (Webframework) 
● MVC Architektur 
● Konvention statt Konfiguration 
● DRY-Prinzip 
● Weniger Code 
● Gute Testbarkeit 
● Ruby und Gems 
● Open Source
Ruby 
● Dynamisch Typisierte Sprache 
● Rein objektorientiert 
● Viele Einflüsse: Perl, Smalltalk, 
LISP 
● Wichtige Elemente: 
○ Introspektion 
○ Code-Blöcke und Lambdas 
○ Erweiterung von Klassen at 
runtime
Rails MVC
Controller 
● Kontrollfluss Steuern 
(Action) 
● HTTP-Request 
Bearbeiten 
● Aufruf per Reflection 
=> keine Konfiguration 
● Views Erzeugen 
● Der View Daten über 
Instanzvariablen bereit 
stellen.
Controller 
● Zugriff auf Parameter, Session, Cookies über params Hash 
● Filter, Filterketten (Aspektorientierte 
Programmierung) 
○ Login, Autorisierung etc 
○ before_action :require_login 
● Layout Zuweisung 
○ Applikation 
○ Controller 
○ Action 
○ Dynamisch bestimmen
Model 
● Domainobjekte 
● Active Record Pattern 
● Tabellenname = plural (Modelname) 
● Beziehen Attribute aus Datenbanktabelle 
● “Getter” und “Setter” werden dynamisch erzeugen 
● Modell-Relationen deklarativ: belongs_to, has_many 
● Vererbung: Single Table Inheritance
Assoziationen 
1:1 has_one 
1:N has_many 
N:M 
has_many_and_belongs_to_many 
alternativ has_many :though 
Bsp: book.chapters.first.title
Views 
● Präsentation von 
Modelling in HTML-Templates 
● Daten über 
Instanzvariablen 
● Embedded Ruby <% 
...%>
REST 
Rails Style
Datenbank Migrationen 
● Datenbank unabhängige 
Definition des Schemas 
● Versionskontroller 
● Up-/Down-Migration auf 
bestimmte Version (jetzt 
eher change) 
● Daten bleiben erhalten 
bzw können modifiziert 
werden.
Live Coding Session 
Die berühmte 15 minute blog 
application

Weitere ähnliche Inhalte

Andere mochten auch

Principales necesidades de las personas con fibromialgia
Principales necesidades de las personas con fibromialgia Principales necesidades de las personas con fibromialgia
Principales necesidades de las personas con fibromialgia fibroebre
 
Lissabon bulgariens bester leseförderer
Lissabon   bulgariens bester lesefördererLissabon   bulgariens bester leseförderer
Lissabon bulgariens bester lesefördererAnne Gilleran
 
Ensayo (electiva v) ninoska jimenez
Ensayo (electiva v) ninoska jimenezEnsayo (electiva v) ninoska jimenez
Ensayo (electiva v) ninoska jimenezNinoskaJimenez
 
Monografia de marcelo vivanco
Monografia de marcelo vivancoMonografia de marcelo vivanco
Monografia de marcelo vivancoMarcelo804
 
Clase 7 organizacion carola
Clase 7   organizacion carolaClase 7   organizacion carola
Clase 7 organizacion carolaEugenioRaulMed
 
Windenergieprojekt2
Windenergieprojekt2Windenergieprojekt2
Windenergieprojekt2hafizbara
 
Täglich eine dosis_ Serie 3
Täglich eine dosis_ Serie 3Täglich eine dosis_ Serie 3
Täglich eine dosis_ Serie 3hafizbara
 
brandnooz Nooz Magazin Ausgabe 04/2015
brandnooz Nooz Magazin Ausgabe 04/2015brandnooz Nooz Magazin Ausgabe 04/2015
brandnooz Nooz Magazin Ausgabe 04/2015brandnooz
 
devolo dLAN® 650 mit range+ Technology: Das einfache Heimnetzwerk vielfach zu...
devolo dLAN® 650 mit range+ Technology: Das einfache Heimnetzwerk vielfach zu...devolo dLAN® 650 mit range+ Technology: Das einfache Heimnetzwerk vielfach zu...
devolo dLAN® 650 mit range+ Technology: Das einfache Heimnetzwerk vielfach zu...resultsrelations
 
Alle Grafiken aus dem Buch "Mehr als 0 und 1" unter CC-BY-SA
Alle Grafiken aus dem Buch "Mehr als 0 und 1" unter CC-BY-SA Alle Grafiken aus dem Buch "Mehr als 0 und 1" unter CC-BY-SA
Alle Grafiken aus dem Buch "Mehr als 0 und 1" unter CC-BY-SA Beat Döbeli Honegger
 
MODALIDADES DEL COMERCIO ELECTRONICO
MODALIDADES DEL COMERCIO ELECTRONICOMODALIDADES DEL COMERCIO ELECTRONICO
MODALIDADES DEL COMERCIO ELECTRONICOLa Mivi Noguera
 
Portafolio de evaluación
Portafolio de evaluaciónPortafolio de evaluación
Portafolio de evaluaciónmayalasamaniego
 

Andere mochten auch (18)

Nicolas maquiavelo
Nicolas maquiaveloNicolas maquiavelo
Nicolas maquiavelo
 
Principales necesidades de las personas con fibromialgia
Principales necesidades de las personas con fibromialgia Principales necesidades de las personas con fibromialgia
Principales necesidades de las personas con fibromialgia
 
Lissabon bulgariens bester leseförderer
Lissabon   bulgariens bester lesefördererLissabon   bulgariens bester leseförderer
Lissabon bulgariens bester leseförderer
 
Ensayo (electiva v) ninoska jimenez
Ensayo (electiva v) ninoska jimenezEnsayo (electiva v) ninoska jimenez
Ensayo (electiva v) ninoska jimenez
 
Monografia de marcelo vivanco
Monografia de marcelo vivancoMonografia de marcelo vivanco
Monografia de marcelo vivanco
 
Clase 7 organizacion carola
Clase 7   organizacion carolaClase 7   organizacion carola
Clase 7 organizacion carola
 
Partner von Tesla Motors
Partner von Tesla MotorsPartner von Tesla Motors
Partner von Tesla Motors
 
Windenergieprojekt2
Windenergieprojekt2Windenergieprojekt2
Windenergieprojekt2
 
Täglich eine dosis_ Serie 3
Täglich eine dosis_ Serie 3Täglich eine dosis_ Serie 3
Täglich eine dosis_ Serie 3
 
brandnooz Nooz Magazin Ausgabe 04/2015
brandnooz Nooz Magazin Ausgabe 04/2015brandnooz Nooz Magazin Ausgabe 04/2015
brandnooz Nooz Magazin Ausgabe 04/2015
 
devolo dLAN® 650 mit range+ Technology: Das einfache Heimnetzwerk vielfach zu...
devolo dLAN® 650 mit range+ Technology: Das einfache Heimnetzwerk vielfach zu...devolo dLAN® 650 mit range+ Technology: Das einfache Heimnetzwerk vielfach zu...
devolo dLAN® 650 mit range+ Technology: Das einfache Heimnetzwerk vielfach zu...
 
Empresas
EmpresasEmpresas
Empresas
 
Marktinfo Slowenien 2015
Marktinfo Slowenien 2015Marktinfo Slowenien 2015
Marktinfo Slowenien 2015
 
FUTBOL EN TODAS SUS CATEGORÍAS
FUTBOL EN TODAS SUS CATEGORÍASFUTBOL EN TODAS SUS CATEGORÍAS
FUTBOL EN TODAS SUS CATEGORÍAS
 
Informatica
InformaticaInformatica
Informatica
 
Alle Grafiken aus dem Buch "Mehr als 0 und 1" unter CC-BY-SA
Alle Grafiken aus dem Buch "Mehr als 0 und 1" unter CC-BY-SA Alle Grafiken aus dem Buch "Mehr als 0 und 1" unter CC-BY-SA
Alle Grafiken aus dem Buch "Mehr als 0 und 1" unter CC-BY-SA
 
MODALIDADES DEL COMERCIO ELECTRONICO
MODALIDADES DEL COMERCIO ELECTRONICOMODALIDADES DEL COMERCIO ELECTRONICO
MODALIDADES DEL COMERCIO ELECTRONICO
 
Portafolio de evaluación
Portafolio de evaluaciónPortafolio de evaluación
Portafolio de evaluación
 

Ruby on Rails; Eine minimale Einführung

  • 2. Ruby (Sprache) auf Rails (Webframework) ● MVC Architektur ● Konvention statt Konfiguration ● DRY-Prinzip ● Weniger Code ● Gute Testbarkeit ● Ruby und Gems ● Open Source
  • 3. Ruby ● Dynamisch Typisierte Sprache ● Rein objektorientiert ● Viele Einflüsse: Perl, Smalltalk, LISP ● Wichtige Elemente: ○ Introspektion ○ Code-Blöcke und Lambdas ○ Erweiterung von Klassen at runtime
  • 5. Controller ● Kontrollfluss Steuern (Action) ● HTTP-Request Bearbeiten ● Aufruf per Reflection => keine Konfiguration ● Views Erzeugen ● Der View Daten über Instanzvariablen bereit stellen.
  • 6. Controller ● Zugriff auf Parameter, Session, Cookies über params Hash ● Filter, Filterketten (Aspektorientierte Programmierung) ○ Login, Autorisierung etc ○ before_action :require_login ● Layout Zuweisung ○ Applikation ○ Controller ○ Action ○ Dynamisch bestimmen
  • 7. Model ● Domainobjekte ● Active Record Pattern ● Tabellenname = plural (Modelname) ● Beziehen Attribute aus Datenbanktabelle ● “Getter” und “Setter” werden dynamisch erzeugen ● Modell-Relationen deklarativ: belongs_to, has_many ● Vererbung: Single Table Inheritance
  • 8. Assoziationen 1:1 has_one 1:N has_many N:M has_many_and_belongs_to_many alternativ has_many :though Bsp: book.chapters.first.title
  • 9. Views ● Präsentation von Modelling in HTML-Templates ● Daten über Instanzvariablen ● Embedded Ruby <% ...%>
  • 11. Datenbank Migrationen ● Datenbank unabhängige Definition des Schemas ● Versionskontroller ● Up-/Down-Migration auf bestimmte Version (jetzt eher change) ● Daten bleiben erhalten bzw können modifiziert werden.
  • 12. Live Coding Session Die berühmte 15 minute blog application