SlideShare ist ein Scribd-Unternehmen logo
Ruby on Rails
                                              Dozent
                                               Dipl.-Inf. (FH)
                                         Julian Fischer




Dipl.-Inf. (FH) Julian Fischer - fischer@avarteq.de - www.avarteq.de - www.railshoster.de - www.enterprise-rails.de

                                                        1
Einführung


Dipl.-Inf. (FH) Julian Fischer - fischer@avarteq.de - www.avarteq.de - www.railshoster.de - www.enterprise-rails.de

                                                        2
Was ist
        Ruby on Rails?


Dipl.-Inf. (FH) Julian Fischer - fischer@avarteq.de - www.avarteq.de - www.railshoster.de - www.enterprise-rails.de

                                                        3
Was ist Ruby on Rails?




Dipl.-Inf. (FH) Julian Fischer - fischer@avarteq.de - www.avarteq.de - www.railshoster.de - www.enterprise-rails.de

                                                        4
Was ist Ruby on Rails?
• Ruby = Programmiersprache




    Dipl.-Inf. (FH) Julian Fischer - fischer@avarteq.de - www.avarteq.de - www.railshoster.de - www.enterprise-rails.de

                                                            4
Was ist Ruby on Rails?
• Ruby = Programmiersprache
• Ruby on Rails
  = Web- und Persistenzframework für Ruby




    Dipl.-Inf. (FH) Julian Fischer - fischer@avarteq.de - www.avarteq.de - www.railshoster.de - www.enterprise-rails.de

                                                            4
Was ist Ruby on Rails?




Dipl.-Inf. (FH) Julian Fischer - fischer@avarteq.de - www.avarteq.de - www.railshoster.de - www.enterprise-rails.de

                                                        5
Was ist Ruby on Rails?
• Ruby on Rails (kurz Rails)
  = Web- und Persistenzframework für Ruby




    Dipl.-Inf. (FH) Julian Fischer - fischer@avarteq.de - www.avarteq.de - www.railshoster.de - www.enterprise-rails.de

                                                            5
Was ist Ruby on Rails?
• Ruby on Rails (kurz Rails)
  = Web- und Persistenzframework für Ruby
• Was ist Ruby?
  Ruby = Programmiersprache




    Dipl.-Inf. (FH) Julian Fischer - fischer@avarteq.de - www.avarteq.de - www.railshoster.de - www.enterprise-rails.de

                                                            5
Eigenschaften von
  Ruby on Rails

Dipl.-Inf. (FH) Julian Fischer - fischer@avarteq.de - www.avarteq.de - www.railshoster.de - www.enterprise-rails.de

                                                        6
Eigenschaften von Rails




 Dipl.-Inf. (FH) Julian Fischer - fischer@avarteq.de - www.avarteq.de - www.railshoster.de - www.enterprise-rails.de

                                                         7
Eigenschaften von Rails
• Basiert auf einer MVC-Architektur




    Dipl.-Inf. (FH) Julian Fischer - fischer@avarteq.de - www.avarteq.de - www.railshoster.de - www.enterprise-rails.de

                                                            7
Eigenschaften von Rails
• Basiert auf einer MVC-Architektur
• MVC = Model View Controller




    Dipl.-Inf. (FH) Julian Fischer - fischer@avarteq.de - www.avarteq.de - www.railshoster.de - www.enterprise-rails.de

                                                            7
Eigenschaften von Rails
• Basiert auf einer MVC-Architektur
• MVC = Model View Controller
• Trennung der Verantwortlichkeiten



    Dipl.-Inf. (FH) Julian Fischer - fischer@avarteq.de - www.avarteq.de - www.railshoster.de - www.enterprise-rails.de

                                                            7
Eigenschaften von Rails




 Dipl.-Inf. (FH) Julian Fischer - fischer@avarteq.de - www.avarteq.de - www.railshoster.de - www.enterprise-rails.de

                                                         8
Eigenschaften von Rails




 Dipl.-Inf. (FH) Julian Fischer - fischer@avarteq.de - www.avarteq.de - www.railshoster.de - www.enterprise-rails.de

                                                         9
Eigenschaften von Rails
• Basiert auf einer MVC-Architektur




    Dipl.-Inf. (FH) Julian Fischer - fischer@avarteq.de - www.avarteq.de - www.railshoster.de - www.enterprise-rails.de

                                                            9
Eigenschaften von Rails
• Basiert auf einer MVC-Architektur
• MVC in Rails:




    Dipl.-Inf. (FH) Julian Fischer - fischer@avarteq.de - www.avarteq.de - www.railshoster.de - www.enterprise-rails.de

                                                            9
Eigenschaften von Rails
• Basiert auf einer MVC-Architektur
• MVC in Rails:
                Model                                             ActiveRecord

                  View                                               ActionView

         Controller                                         ActionController

    Dipl.-Inf. (FH) Julian Fischer - fischer@avarteq.de - www.avarteq.de - www.railshoster.de - www.enterprise-rails.de

                                                            9
Eigenschaften von Rails




 Dipl.-Inf. (FH) Julian Fischer - fischer@avarteq.de - www.avarteq.de - www.railshoster.de - www.enterprise-rails.de

                                                        10
Eigenschaften von Rails
• MVC-Architektur




    Dipl.-Inf. (FH) Julian Fischer - fischer@avarteq.de - www.avarteq.de - www.railshoster.de - www.enterprise-rails.de

                                                           10
Eigenschaften von Rails
• MVC-Architektur
 • Model




    Dipl.-Inf. (FH) Julian Fischer - fischer@avarteq.de - www.avarteq.de - www.railshoster.de - www.enterprise-rails.de

                                                           10
Eigenschaften von Rails
• MVC-Architektur
 • Model
   • = Datenmodell



   Dipl.-Inf. (FH) Julian Fischer - fischer@avarteq.de - www.avarteq.de - www.railshoster.de - www.enterprise-rails.de

                                                          10
Eigenschaften von Rails
• MVC-Architektur
 • Model
   • = Datenmodell
   • = Geschäftsobjekte                                                   (z.B. Person)




    Dipl.-Inf. (FH) Julian Fischer - fischer@avarteq.de - www.avarteq.de - www.railshoster.de - www.enterprise-rails.de

                                                           10
Eigenschaften von Rails
• MVC-Architektur
 • Model
   • = Datenmodell
   • = Geschäftsobjekte                                                   (z.B. Person)


   • = Persistent                                  (SQL-DB Binding)




    Dipl.-Inf. (FH) Julian Fischer - fischer@avarteq.de - www.avarteq.de - www.railshoster.de - www.enterprise-rails.de

                                                           10
Model - Beispiel




Dipl.-Inf. (FH) Julian Fischer - fischer@avarteq.de - www.avarteq.de - www.railshoster.de - www.enterprise-rails.de

                                                       11
Model - Beispiel
class SubHostingBillingPosition < HostingBillingPosition
  belongs_to :hosting

  def to_s
    ret = super
    ret += " "
    ret += hosting.id.to_s
    ret += " " + start_date.to_s
    ret += " " + end_date.to_s
  end
end




         Dipl.-Inf. (FH) Julian Fischer - fischer@avarteq.de - www.avarteq.de - www.railshoster.de - www.enterprise-rails.de

                                                                11
Eigenschaften von Rails




 Dipl.-Inf. (FH) Julian Fischer - fischer@avarteq.de - www.avarteq.de - www.railshoster.de - www.enterprise-rails.de

                                                        12
Eigenschaften von Rails
• MVC-Architektur




    Dipl.-Inf. (FH) Julian Fischer - fischer@avarteq.de - www.avarteq.de - www.railshoster.de - www.enterprise-rails.de

                                                           12
Eigenschaften von Rails
• MVC-Architektur
   • View




    Dipl.-Inf. (FH) Julian Fischer - fischer@avarteq.de - www.avarteq.de - www.railshoster.de - www.enterprise-rails.de

                                                           12
Eigenschaften von Rails
• MVC-Architektur
   • View
    • = User Interface



    Dipl.-Inf. (FH) Julian Fischer - fischer@avarteq.de - www.avarteq.de - www.railshoster.de - www.enterprise-rails.de

                                                           12
Eigenschaften von Rails
• MVC-Architektur
   • View
    • = User Interface
    • Visuelle Darstellung der
                Geschäftsobjekte



    Dipl.-Inf. (FH) Julian Fischer - fischer@avarteq.de - www.avarteq.de - www.railshoster.de - www.enterprise-rails.de

                                                           12
Eigenschaften von Rails




 Dipl.-Inf. (FH) Julian Fischer - fischer@avarteq.de - www.avarteq.de - www.railshoster.de - www.enterprise-rails.de

                                                        13
Eigenschaften von Rails
• MVC-Architektur




    Dipl.-Inf. (FH) Julian Fischer - fischer@avarteq.de - www.avarteq.de - www.railshoster.de - www.enterprise-rails.de

                                                           13
Eigenschaften von Rails
• MVC-Architektur
   • View - Mögliche Ausgabeformate




    Dipl.-Inf. (FH) Julian Fischer - fischer@avarteq.de - www.avarteq.de - www.railshoster.de - www.enterprise-rails.de

                                                           13
Eigenschaften von Rails
• MVC-Architektur
   • View - Mögliche Ausgabeformate
      • HTML



    Dipl.-Inf. (FH) Julian Fischer - fischer@avarteq.de - www.avarteq.de - www.railshoster.de - www.enterprise-rails.de

                                                           13
Eigenschaften von Rails
• MVC-Architektur
   • View - Mögliche Ausgabeformate
      • HTML
      • XML


    Dipl.-Inf. (FH) Julian Fischer - fischer@avarteq.de - www.avarteq.de - www.railshoster.de - www.enterprise-rails.de

                                                           13
Eigenschaften von Rails
• MVC-Architektur
   • View - Mögliche Ausgabeformate
      • HTML
      • XML
      • PDF

    Dipl.-Inf. (FH) Julian Fischer - fischer@avarteq.de - www.avarteq.de - www.railshoster.de - www.enterprise-rails.de

                                                           13
Eigenschaften von Rails
• MVC-Architektur
   • View - Mögliche Ausgabeformate
      • HTML
      • XML
      • PDF
      • JSON
    Dipl.-Inf. (FH) Julian Fischer - fischer@avarteq.de - www.avarteq.de - www.railshoster.de - www.enterprise-rails.de

                                                           13
Eigenschaften von Rails
• MVC-Architektur
   • View - Mögliche Ausgabeformate
      • HTML
      • XML
      • PDF
      • JSON
      • ...
    Dipl.-Inf. (FH) Julian Fischer - fischer@avarteq.de - www.avarteq.de - www.railshoster.de - www.enterprise-rails.de

                                                           13
View - Beispiel




Dipl.-Inf. (FH) Julian Fischer - fischer@avarteq.de - www.avarteq.de - www.railshoster.de - www.enterprise-rails.de

                                                       14
View - Beispiel
<% for column in Branding.content_columns %>
<p>
  <b><%= column.human_name %>:</b> <%=h @branding.send(column.name) %>
</p>
<% end %>

<%= link_to 'Edit', :action => 'edit', :id => @branding %> |
<%= link_to 'Back', :action => 'list' %>




         Dipl.-Inf. (FH) Julian Fischer - fischer@avarteq.de - www.avarteq.de - www.railshoster.de - www.enterprise-rails.de

                                                                14
Eigenschaften von Rails




 Dipl.-Inf. (FH) Julian Fischer - fischer@avarteq.de - www.avarteq.de - www.railshoster.de - www.enterprise-rails.de

                                                        15
Eigenschaften von Rails
• MVC-Architektur




    Dipl.-Inf. (FH) Julian Fischer - fischer@avarteq.de - www.avarteq.de - www.railshoster.de - www.enterprise-rails.de

                                                           15
Eigenschaften von Rails
• MVC-Architektur
   • Controller




    Dipl.-Inf. (FH) Julian Fischer - fischer@avarteq.de - www.avarteq.de - www.railshoster.de - www.enterprise-rails.de

                                                           15
Eigenschaften von Rails
• MVC-Architektur
   • Controller
    • Handhabung der Benutzerinteraktion
                (HTTP-Requests)




    Dipl.-Inf. (FH) Julian Fischer - fischer@avarteq.de - www.avarteq.de - www.railshoster.de - www.enterprise-rails.de

                                                           15
Eigenschaften von Rails
• MVC-Architektur
   • Controller
    • Handhabung der Benutzerinteraktion
                (HTTP-Requests)


    • Zugriff auf Modelle

    Dipl.-Inf. (FH) Julian Fischer - fischer@avarteq.de - www.avarteq.de - www.railshoster.de - www.enterprise-rails.de

                                                           15
Eigenschaften von Rails
• MVC-Architektur
   • Controller
    • Handhabung der Benutzerinteraktion
                (HTTP-Requests)


    • Zugriff auf Modelle
    • Aufbereitung der Daten
    Dipl.-Inf. (FH) Julian Fischer - fischer@avarteq.de - www.avarteq.de - www.railshoster.de - www.enterprise-rails.de

                                                           15
Eigenschaften von Rails
• MVC-Architektur
   • Controller
    • Handhabung der Benutzerinteraktion
                (HTTP-Requests)


    • Zugriff auf Modelle
    • Aufbereitung der Daten
    • Entscheidung, welche View
                darzustellen ist
    Dipl.-Inf. (FH) Julian Fischer - fischer@avarteq.de - www.avarteq.de - www.railshoster.de - www.enterprise-rails.de

                                                           15
Controller - Beispiel




Dipl.-Inf. (FH) Julian Fischer - fischer@avarteq.de - www.avarteq.de - www.railshoster.de - www.enterprise-rails.de

                                                       16
Controller - Beispiel
class BrandingsController < ApplicationController
  def index
    list
    render :action => 'list'
  end

[...]

  def edit
    @branding = Branding.find(params[:id])
  end

  def update
    @branding = Branding.find(params[:id])
    if @branding.update_attributes(params[:branding])
      flash[:notice] = 'Branding was successfully updated.'
      redirect_to :action => 'show', :id => @branding
    else
      render :action => 'edit'
    end
  end

[...]
           Dipl.-Inf. (FH) Julian Fischer - fischer@avarteq.de - www.avarteq.de - www.railshoster.de - www.enterprise-rails.de

                                                                  16
Warum Ruby on Rails?


  Dipl.-Inf. (FH) Julian Fischer - fischer@avarteq.de - www.avarteq.de - www.railshoster.de - www.enterprise-rails.de

                                                         17
Warum Rails?




Dipl.-Inf. (FH) Julian Fischer - fischer@avarteq.de - www.avarteq.de - www.railshoster.de - www.enterprise-rails.de

                                                       18
Warum Rails?
• Vorgegebene Projektstruktur




    Dipl.-Inf. (FH) Julian Fischer - fischer@avarteq.de - www.avarteq.de - www.railshoster.de - www.enterprise-rails.de

                                                           18
Warum Rails?
• Vorgegebene Projektstruktur
 • Jedes Rails Projekt hat das gleiche
    Verzeichnis-Layout




    Dipl.-Inf. (FH) Julian Fischer - fischer@avarteq.de - www.avarteq.de - www.railshoster.de - www.enterprise-rails.de

                                                           18
Warum Rails?
• Vorgegebene Projektstruktur
 • Jedes Rails Projekt hat das gleiche
    Verzeichnis-Layout
    • Erleichterte Einarbeitung in fremde
          Projekte




    Dipl.-Inf. (FH) Julian Fischer - fischer@avarteq.de - www.avarteq.de - www.railshoster.de - www.enterprise-rails.de

                                                           18
Warum Rails?
• Vorgegebene Projektstruktur
 • Jedes Rails Projekt hat das gleiche
    Verzeichnis-Layout
    • Erleichterte Einarbeitung in fremde
          Projekte
    • Motiviert zur Einhaltung der
          „Good practices“

    Dipl.-Inf. (FH) Julian Fischer - fischer@avarteq.de - www.avarteq.de - www.railshoster.de - www.enterprise-rails.de

                                                           18
Warum Rails?




Dipl.-Inf. (FH) Julian Fischer - fischer@avarteq.de - www.avarteq.de - www.railshoster.de - www.enterprise-rails.de

                                                       19
Warum Rails?
• Good practices, z.B.




    Dipl.-Inf. (FH) Julian Fischer - fischer@avarteq.de - www.avarteq.de - www.railshoster.de - www.enterprise-rails.de

                                                           19
Warum Rails?
• Good practices, z.B.
 • testgetriebene Entwicklung




    Dipl.-Inf. (FH) Julian Fischer - fischer@avarteq.de - www.avarteq.de - www.railshoster.de - www.enterprise-rails.de

                                                           19
Warum Rails?
• Good practices, z.B.
 • testgetriebene Entwicklung
 • MVC



    Dipl.-Inf. (FH) Julian Fischer - fischer@avarteq.de - www.avarteq.de - www.railshoster.de - www.enterprise-rails.de

                                                           19
Warum Rails?
• Good practices, z.B.
 • testgetriebene Entwicklung
 • MVC
 • ...


    Dipl.-Inf. (FH) Julian Fischer - fischer@avarteq.de - www.avarteq.de - www.railshoster.de - www.enterprise-rails.de

                                                           19
Warum Rails?




Dipl.-Inf. (FH) Julian Fischer - fischer@avarteq.de - www.avarteq.de - www.railshoster.de - www.enterprise-rails.de

                                                       20
Warum Rails?
• Werkzeuge




   Dipl.-Inf. (FH) Julian Fischer - fischer@avarteq.de - www.avarteq.de - www.railshoster.de - www.enterprise-rails.de

                                                          20
Warum Rails?
• Werkzeuge
 • Ruby - Rake




    Dipl.-Inf. (FH) Julian Fischer - fischer@avarteq.de - www.avarteq.de - www.railshoster.de - www.enterprise-rails.de

                                                           20
Warum Rails?
• Werkzeuge
 • Ruby - Rake
 • Ruby - Gems



   Dipl.-Inf. (FH) Julian Fischer - fischer@avarteq.de - www.avarteq.de - www.railshoster.de - www.enterprise-rails.de

                                                          20
Warum Rails?
• Werkzeuge
 • Ruby - Rake
 • Ruby - Gems
 • Rails - Plugins


    Dipl.-Inf. (FH) Julian Fischer - fischer@avarteq.de - www.avarteq.de - www.railshoster.de - www.enterprise-rails.de

                                                           20
Warum Rails?
• Werkzeuge
 • Ruby - Rake
 • Ruby - Gems
 • Rails - Plugins
 • Rails - Generators

    Dipl.-Inf. (FH) Julian Fischer - fischer@avarteq.de - www.avarteq.de - www.railshoster.de - www.enterprise-rails.de

                                                           20
Warum Rails?




Dipl.-Inf. (FH) Julian Fischer - fischer@avarteq.de - www.avarteq.de - www.railshoster.de - www.enterprise-rails.de

                                                       21
Warum Rails?
• Community




   Dipl.-Inf. (FH) Julian Fischer - fischer@avarteq.de - www.avarteq.de - www.railshoster.de - www.enterprise-rails.de

                                                          21
Warum Rails?
• Community
 • Aktive und wachsende
   Entwicklergemeinschaft




    Dipl.-Inf. (FH) Julian Fischer - fischer@avarteq.de - www.avarteq.de - www.railshoster.de - www.enterprise-rails.de

                                                           21
Warum Rails?
• Community
 • Aktive und wachsende
   Entwicklergemeinschaft
 • Viele frei verfügbare Plugins, Code-
   Stücke, usw.




    Dipl.-Inf. (FH) Julian Fischer - fischer@avarteq.de - www.avarteq.de - www.railshoster.de - www.enterprise-rails.de

                                                           21
Demo!


Dipl.-Inf. (FH) Julian Fischer - fischer@avarteq.de - www.avarteq.de - www.railshoster.de - www.enterprise-rails.de

                                                       22

Weitere ähnliche Inhalte

KEY
Ruby on rails vorlesung 4 Rails Views
KEY
Ruby on Rails Vorlesung 5 Rails Controller
PPTX
Relais & Châteaux Präsentation an der Pressekonferenz 2012 im Zürcher Hürlima...
PPT
Tipología de textos
PPT
Vorträge 50 ak tagung 12-04
PPT
Präsentation Policies Zukunftskonferenz 22 03 2012
PDF
Facebook, Google, Youtube & co
PDF
Top 10 der Datenbankbedrohungen
Ruby on rails vorlesung 4 Rails Views
Ruby on Rails Vorlesung 5 Rails Controller
Relais & Châteaux Präsentation an der Pressekonferenz 2012 im Zürcher Hürlima...
Tipología de textos
Vorträge 50 ak tagung 12-04
Präsentation Policies Zukunftskonferenz 22 03 2012
Facebook, Google, Youtube & co
Top 10 der Datenbankbedrohungen

Andere mochten auch (20)

PPSX
Grupo 5 mañanas carolina y núria
PPTX
NEGUETROPIA...
PDF
Jóvenes, universidad y política
PPTX
La historia de la internet
PPT
Anpassungen energieeffizienz
PPTX
Internet
PDF
Beauty & Wellness - Dolce Vita Hotel Lindenhof****s, Naturns - Südtirol
PPTX
VFAS Schweiz
PDF
Encuesta keller marzo 2015 i
PDF
SeHF 2014 | CatchMyPain: Eine mHealth Lösung für Patienten und Leistungserbri...
PPTX
Principales Navegadores De Internet
PPT
Ebene3 - Online Kommunikation
PPTX
El plagio
PPTX
Reflexión sobre un niño de 3°basico
DOCX
Ángela maría guzmán
PPT
Gestalt: Principios básicos
DOCX
Pacem in terris encíclica del papa juan xxiii
PPTX
Rèptils aquàtics 1
PPSX
diapositivas
Grupo 5 mañanas carolina y núria
NEGUETROPIA...
Jóvenes, universidad y política
La historia de la internet
Anpassungen energieeffizienz
Internet
Beauty & Wellness - Dolce Vita Hotel Lindenhof****s, Naturns - Südtirol
VFAS Schweiz
Encuesta keller marzo 2015 i
SeHF 2014 | CatchMyPain: Eine mHealth Lösung für Patienten und Leistungserbri...
Principales Navegadores De Internet
Ebene3 - Online Kommunikation
El plagio
Reflexión sobre un niño de 3°basico
Ángela maría guzmán
Gestalt: Principios básicos
Pacem in terris encíclica del papa juan xxiii
Rèptils aquàtics 1
diapositivas
Anzeige

Ähnlich wie Ruby On Rails Vorlesung 1 Rails Überblick (9)

KEY
Ruby on rails vorlesung 2 Ruby
PDF
Ruby on Rails in a metro session
KEY
Julian Fischer Ruby On Rails
KEY
Ruby on rails vorlesung 3 Mehr Ruby
PDF
Rack-Middleware
PDF
ASP.NET MVC 2 - Eine Einführung
PDF
Infopark CMS Fiona mit Ruby on Rails
PDF
OpenLaszlo - Advanced RIAs for the OpenWeb
PDF
Performanter, hochskalierbarer Web 2.0-Dienst in Ruby
Ruby on rails vorlesung 2 Ruby
Ruby on Rails in a metro session
Julian Fischer Ruby On Rails
Ruby on rails vorlesung 3 Mehr Ruby
Rack-Middleware
ASP.NET MVC 2 - Eine Einführung
Infopark CMS Fiona mit Ruby on Rails
OpenLaszlo - Advanced RIAs for the OpenWeb
Performanter, hochskalierbarer Web 2.0-Dienst in Ruby
Anzeige

Ruby On Rails Vorlesung 1 Rails Überblick

  • 1. Ruby on Rails Dozent Dipl.-Inf. (FH) Julian Fischer Dipl.-Inf. (FH) Julian Fischer - fischer@avarteq.de - www.avarteq.de - www.railshoster.de - www.enterprise-rails.de 1
  • 2. Einführung Dipl.-Inf. (FH) Julian Fischer - fischer@avarteq.de - www.avarteq.de - www.railshoster.de - www.enterprise-rails.de 2
  • 3. Was ist Ruby on Rails? Dipl.-Inf. (FH) Julian Fischer - fischer@avarteq.de - www.avarteq.de - www.railshoster.de - www.enterprise-rails.de 3
  • 4. Was ist Ruby on Rails? Dipl.-Inf. (FH) Julian Fischer - fischer@avarteq.de - www.avarteq.de - www.railshoster.de - www.enterprise-rails.de 4
  • 5. Was ist Ruby on Rails? • Ruby = Programmiersprache Dipl.-Inf. (FH) Julian Fischer - fischer@avarteq.de - www.avarteq.de - www.railshoster.de - www.enterprise-rails.de 4
  • 6. Was ist Ruby on Rails? • Ruby = Programmiersprache • Ruby on Rails = Web- und Persistenzframework für Ruby Dipl.-Inf. (FH) Julian Fischer - fischer@avarteq.de - www.avarteq.de - www.railshoster.de - www.enterprise-rails.de 4
  • 7. Was ist Ruby on Rails? Dipl.-Inf. (FH) Julian Fischer - fischer@avarteq.de - www.avarteq.de - www.railshoster.de - www.enterprise-rails.de 5
  • 8. Was ist Ruby on Rails? • Ruby on Rails (kurz Rails) = Web- und Persistenzframework für Ruby Dipl.-Inf. (FH) Julian Fischer - fischer@avarteq.de - www.avarteq.de - www.railshoster.de - www.enterprise-rails.de 5
  • 9. Was ist Ruby on Rails? • Ruby on Rails (kurz Rails) = Web- und Persistenzframework für Ruby • Was ist Ruby? Ruby = Programmiersprache Dipl.-Inf. (FH) Julian Fischer - fischer@avarteq.de - www.avarteq.de - www.railshoster.de - www.enterprise-rails.de 5
  • 10. Eigenschaften von Ruby on Rails Dipl.-Inf. (FH) Julian Fischer - fischer@avarteq.de - www.avarteq.de - www.railshoster.de - www.enterprise-rails.de 6
  • 11. Eigenschaften von Rails Dipl.-Inf. (FH) Julian Fischer - fischer@avarteq.de - www.avarteq.de - www.railshoster.de - www.enterprise-rails.de 7
  • 12. Eigenschaften von Rails • Basiert auf einer MVC-Architektur Dipl.-Inf. (FH) Julian Fischer - fischer@avarteq.de - www.avarteq.de - www.railshoster.de - www.enterprise-rails.de 7
  • 13. Eigenschaften von Rails • Basiert auf einer MVC-Architektur • MVC = Model View Controller Dipl.-Inf. (FH) Julian Fischer - fischer@avarteq.de - www.avarteq.de - www.railshoster.de - www.enterprise-rails.de 7
  • 14. Eigenschaften von Rails • Basiert auf einer MVC-Architektur • MVC = Model View Controller • Trennung der Verantwortlichkeiten Dipl.-Inf. (FH) Julian Fischer - fischer@avarteq.de - www.avarteq.de - www.railshoster.de - www.enterprise-rails.de 7
  • 15. Eigenschaften von Rails Dipl.-Inf. (FH) Julian Fischer - fischer@avarteq.de - www.avarteq.de - www.railshoster.de - www.enterprise-rails.de 8
  • 16. Eigenschaften von Rails Dipl.-Inf. (FH) Julian Fischer - fischer@avarteq.de - www.avarteq.de - www.railshoster.de - www.enterprise-rails.de 9
  • 17. Eigenschaften von Rails • Basiert auf einer MVC-Architektur Dipl.-Inf. (FH) Julian Fischer - fischer@avarteq.de - www.avarteq.de - www.railshoster.de - www.enterprise-rails.de 9
  • 18. Eigenschaften von Rails • Basiert auf einer MVC-Architektur • MVC in Rails: Dipl.-Inf. (FH) Julian Fischer - fischer@avarteq.de - www.avarteq.de - www.railshoster.de - www.enterprise-rails.de 9
  • 19. Eigenschaften von Rails • Basiert auf einer MVC-Architektur • MVC in Rails: Model ActiveRecord View ActionView Controller ActionController Dipl.-Inf. (FH) Julian Fischer - fischer@avarteq.de - www.avarteq.de - www.railshoster.de - www.enterprise-rails.de 9
  • 20. Eigenschaften von Rails Dipl.-Inf. (FH) Julian Fischer - fischer@avarteq.de - www.avarteq.de - www.railshoster.de - www.enterprise-rails.de 10
  • 21. Eigenschaften von Rails • MVC-Architektur Dipl.-Inf. (FH) Julian Fischer - fischer@avarteq.de - www.avarteq.de - www.railshoster.de - www.enterprise-rails.de 10
  • 22. Eigenschaften von Rails • MVC-Architektur • Model Dipl.-Inf. (FH) Julian Fischer - fischer@avarteq.de - www.avarteq.de - www.railshoster.de - www.enterprise-rails.de 10
  • 23. Eigenschaften von Rails • MVC-Architektur • Model • = Datenmodell Dipl.-Inf. (FH) Julian Fischer - fischer@avarteq.de - www.avarteq.de - www.railshoster.de - www.enterprise-rails.de 10
  • 24. Eigenschaften von Rails • MVC-Architektur • Model • = Datenmodell • = Geschäftsobjekte (z.B. Person) Dipl.-Inf. (FH) Julian Fischer - fischer@avarteq.de - www.avarteq.de - www.railshoster.de - www.enterprise-rails.de 10
  • 25. Eigenschaften von Rails • MVC-Architektur • Model • = Datenmodell • = Geschäftsobjekte (z.B. Person) • = Persistent (SQL-DB Binding) Dipl.-Inf. (FH) Julian Fischer - fischer@avarteq.de - www.avarteq.de - www.railshoster.de - www.enterprise-rails.de 10
  • 26. Model - Beispiel Dipl.-Inf. (FH) Julian Fischer - fischer@avarteq.de - www.avarteq.de - www.railshoster.de - www.enterprise-rails.de 11
  • 27. Model - Beispiel class SubHostingBillingPosition < HostingBillingPosition belongs_to :hosting def to_s ret = super ret += " " ret += hosting.id.to_s ret += " " + start_date.to_s ret += " " + end_date.to_s end end Dipl.-Inf. (FH) Julian Fischer - fischer@avarteq.de - www.avarteq.de - www.railshoster.de - www.enterprise-rails.de 11
  • 28. Eigenschaften von Rails Dipl.-Inf. (FH) Julian Fischer - fischer@avarteq.de - www.avarteq.de - www.railshoster.de - www.enterprise-rails.de 12
  • 29. Eigenschaften von Rails • MVC-Architektur Dipl.-Inf. (FH) Julian Fischer - fischer@avarteq.de - www.avarteq.de - www.railshoster.de - www.enterprise-rails.de 12
  • 30. Eigenschaften von Rails • MVC-Architektur • View Dipl.-Inf. (FH) Julian Fischer - fischer@avarteq.de - www.avarteq.de - www.railshoster.de - www.enterprise-rails.de 12
  • 31. Eigenschaften von Rails • MVC-Architektur • View • = User Interface Dipl.-Inf. (FH) Julian Fischer - fischer@avarteq.de - www.avarteq.de - www.railshoster.de - www.enterprise-rails.de 12
  • 32. Eigenschaften von Rails • MVC-Architektur • View • = User Interface • Visuelle Darstellung der Geschäftsobjekte Dipl.-Inf. (FH) Julian Fischer - fischer@avarteq.de - www.avarteq.de - www.railshoster.de - www.enterprise-rails.de 12
  • 33. Eigenschaften von Rails Dipl.-Inf. (FH) Julian Fischer - fischer@avarteq.de - www.avarteq.de - www.railshoster.de - www.enterprise-rails.de 13
  • 34. Eigenschaften von Rails • MVC-Architektur Dipl.-Inf. (FH) Julian Fischer - fischer@avarteq.de - www.avarteq.de - www.railshoster.de - www.enterprise-rails.de 13
  • 35. Eigenschaften von Rails • MVC-Architektur • View - Mögliche Ausgabeformate Dipl.-Inf. (FH) Julian Fischer - fischer@avarteq.de - www.avarteq.de - www.railshoster.de - www.enterprise-rails.de 13
  • 36. Eigenschaften von Rails • MVC-Architektur • View - Mögliche Ausgabeformate • HTML Dipl.-Inf. (FH) Julian Fischer - fischer@avarteq.de - www.avarteq.de - www.railshoster.de - www.enterprise-rails.de 13
  • 37. Eigenschaften von Rails • MVC-Architektur • View - Mögliche Ausgabeformate • HTML • XML Dipl.-Inf. (FH) Julian Fischer - fischer@avarteq.de - www.avarteq.de - www.railshoster.de - www.enterprise-rails.de 13
  • 38. Eigenschaften von Rails • MVC-Architektur • View - Mögliche Ausgabeformate • HTML • XML • PDF Dipl.-Inf. (FH) Julian Fischer - fischer@avarteq.de - www.avarteq.de - www.railshoster.de - www.enterprise-rails.de 13
  • 39. Eigenschaften von Rails • MVC-Architektur • View - Mögliche Ausgabeformate • HTML • XML • PDF • JSON Dipl.-Inf. (FH) Julian Fischer - fischer@avarteq.de - www.avarteq.de - www.railshoster.de - www.enterprise-rails.de 13
  • 40. Eigenschaften von Rails • MVC-Architektur • View - Mögliche Ausgabeformate • HTML • XML • PDF • JSON • ... Dipl.-Inf. (FH) Julian Fischer - fischer@avarteq.de - www.avarteq.de - www.railshoster.de - www.enterprise-rails.de 13
  • 41. View - Beispiel Dipl.-Inf. (FH) Julian Fischer - fischer@avarteq.de - www.avarteq.de - www.railshoster.de - www.enterprise-rails.de 14
  • 42. View - Beispiel <% for column in Branding.content_columns %> <p> <b><%= column.human_name %>:</b> <%=h @branding.send(column.name) %> </p> <% end %> <%= link_to 'Edit', :action => 'edit', :id => @branding %> | <%= link_to 'Back', :action => 'list' %> Dipl.-Inf. (FH) Julian Fischer - fischer@avarteq.de - www.avarteq.de - www.railshoster.de - www.enterprise-rails.de 14
  • 43. Eigenschaften von Rails Dipl.-Inf. (FH) Julian Fischer - fischer@avarteq.de - www.avarteq.de - www.railshoster.de - www.enterprise-rails.de 15
  • 44. Eigenschaften von Rails • MVC-Architektur Dipl.-Inf. (FH) Julian Fischer - fischer@avarteq.de - www.avarteq.de - www.railshoster.de - www.enterprise-rails.de 15
  • 45. Eigenschaften von Rails • MVC-Architektur • Controller Dipl.-Inf. (FH) Julian Fischer - fischer@avarteq.de - www.avarteq.de - www.railshoster.de - www.enterprise-rails.de 15
  • 46. Eigenschaften von Rails • MVC-Architektur • Controller • Handhabung der Benutzerinteraktion (HTTP-Requests) Dipl.-Inf. (FH) Julian Fischer - fischer@avarteq.de - www.avarteq.de - www.railshoster.de - www.enterprise-rails.de 15
  • 47. Eigenschaften von Rails • MVC-Architektur • Controller • Handhabung der Benutzerinteraktion (HTTP-Requests) • Zugriff auf Modelle Dipl.-Inf. (FH) Julian Fischer - fischer@avarteq.de - www.avarteq.de - www.railshoster.de - www.enterprise-rails.de 15
  • 48. Eigenschaften von Rails • MVC-Architektur • Controller • Handhabung der Benutzerinteraktion (HTTP-Requests) • Zugriff auf Modelle • Aufbereitung der Daten Dipl.-Inf. (FH) Julian Fischer - fischer@avarteq.de - www.avarteq.de - www.railshoster.de - www.enterprise-rails.de 15
  • 49. Eigenschaften von Rails • MVC-Architektur • Controller • Handhabung der Benutzerinteraktion (HTTP-Requests) • Zugriff auf Modelle • Aufbereitung der Daten • Entscheidung, welche View darzustellen ist Dipl.-Inf. (FH) Julian Fischer - fischer@avarteq.de - www.avarteq.de - www.railshoster.de - www.enterprise-rails.de 15
  • 50. Controller - Beispiel Dipl.-Inf. (FH) Julian Fischer - fischer@avarteq.de - www.avarteq.de - www.railshoster.de - www.enterprise-rails.de 16
  • 51. Controller - Beispiel class BrandingsController < ApplicationController def index list render :action => 'list' end [...] def edit @branding = Branding.find(params[:id]) end def update @branding = Branding.find(params[:id]) if @branding.update_attributes(params[:branding]) flash[:notice] = 'Branding was successfully updated.' redirect_to :action => 'show', :id => @branding else render :action => 'edit' end end [...] Dipl.-Inf. (FH) Julian Fischer - fischer@avarteq.de - www.avarteq.de - www.railshoster.de - www.enterprise-rails.de 16
  • 52. Warum Ruby on Rails? Dipl.-Inf. (FH) Julian Fischer - fischer@avarteq.de - www.avarteq.de - www.railshoster.de - www.enterprise-rails.de 17
  • 53. Warum Rails? Dipl.-Inf. (FH) Julian Fischer - fischer@avarteq.de - www.avarteq.de - www.railshoster.de - www.enterprise-rails.de 18
  • 54. Warum Rails? • Vorgegebene Projektstruktur Dipl.-Inf. (FH) Julian Fischer - fischer@avarteq.de - www.avarteq.de - www.railshoster.de - www.enterprise-rails.de 18
  • 55. Warum Rails? • Vorgegebene Projektstruktur • Jedes Rails Projekt hat das gleiche Verzeichnis-Layout Dipl.-Inf. (FH) Julian Fischer - fischer@avarteq.de - www.avarteq.de - www.railshoster.de - www.enterprise-rails.de 18
  • 56. Warum Rails? • Vorgegebene Projektstruktur • Jedes Rails Projekt hat das gleiche Verzeichnis-Layout • Erleichterte Einarbeitung in fremde Projekte Dipl.-Inf. (FH) Julian Fischer - fischer@avarteq.de - www.avarteq.de - www.railshoster.de - www.enterprise-rails.de 18
  • 57. Warum Rails? • Vorgegebene Projektstruktur • Jedes Rails Projekt hat das gleiche Verzeichnis-Layout • Erleichterte Einarbeitung in fremde Projekte • Motiviert zur Einhaltung der „Good practices“ Dipl.-Inf. (FH) Julian Fischer - fischer@avarteq.de - www.avarteq.de - www.railshoster.de - www.enterprise-rails.de 18
  • 58. Warum Rails? Dipl.-Inf. (FH) Julian Fischer - fischer@avarteq.de - www.avarteq.de - www.railshoster.de - www.enterprise-rails.de 19
  • 59. Warum Rails? • Good practices, z.B. Dipl.-Inf. (FH) Julian Fischer - fischer@avarteq.de - www.avarteq.de - www.railshoster.de - www.enterprise-rails.de 19
  • 60. Warum Rails? • Good practices, z.B. • testgetriebene Entwicklung Dipl.-Inf. (FH) Julian Fischer - fischer@avarteq.de - www.avarteq.de - www.railshoster.de - www.enterprise-rails.de 19
  • 61. Warum Rails? • Good practices, z.B. • testgetriebene Entwicklung • MVC Dipl.-Inf. (FH) Julian Fischer - fischer@avarteq.de - www.avarteq.de - www.railshoster.de - www.enterprise-rails.de 19
  • 62. Warum Rails? • Good practices, z.B. • testgetriebene Entwicklung • MVC • ... Dipl.-Inf. (FH) Julian Fischer - fischer@avarteq.de - www.avarteq.de - www.railshoster.de - www.enterprise-rails.de 19
  • 63. Warum Rails? Dipl.-Inf. (FH) Julian Fischer - fischer@avarteq.de - www.avarteq.de - www.railshoster.de - www.enterprise-rails.de 20
  • 64. Warum Rails? • Werkzeuge Dipl.-Inf. (FH) Julian Fischer - fischer@avarteq.de - www.avarteq.de - www.railshoster.de - www.enterprise-rails.de 20
  • 65. Warum Rails? • Werkzeuge • Ruby - Rake Dipl.-Inf. (FH) Julian Fischer - fischer@avarteq.de - www.avarteq.de - www.railshoster.de - www.enterprise-rails.de 20
  • 66. Warum Rails? • Werkzeuge • Ruby - Rake • Ruby - Gems Dipl.-Inf. (FH) Julian Fischer - fischer@avarteq.de - www.avarteq.de - www.railshoster.de - www.enterprise-rails.de 20
  • 67. Warum Rails? • Werkzeuge • Ruby - Rake • Ruby - Gems • Rails - Plugins Dipl.-Inf. (FH) Julian Fischer - fischer@avarteq.de - www.avarteq.de - www.railshoster.de - www.enterprise-rails.de 20
  • 68. Warum Rails? • Werkzeuge • Ruby - Rake • Ruby - Gems • Rails - Plugins • Rails - Generators Dipl.-Inf. (FH) Julian Fischer - fischer@avarteq.de - www.avarteq.de - www.railshoster.de - www.enterprise-rails.de 20
  • 69. Warum Rails? Dipl.-Inf. (FH) Julian Fischer - fischer@avarteq.de - www.avarteq.de - www.railshoster.de - www.enterprise-rails.de 21
  • 70. Warum Rails? • Community Dipl.-Inf. (FH) Julian Fischer - fischer@avarteq.de - www.avarteq.de - www.railshoster.de - www.enterprise-rails.de 21
  • 71. Warum Rails? • Community • Aktive und wachsende Entwicklergemeinschaft Dipl.-Inf. (FH) Julian Fischer - fischer@avarteq.de - www.avarteq.de - www.railshoster.de - www.enterprise-rails.de 21
  • 72. Warum Rails? • Community • Aktive und wachsende Entwicklergemeinschaft • Viele frei verfügbare Plugins, Code- Stücke, usw. Dipl.-Inf. (FH) Julian Fischer - fischer@avarteq.de - www.avarteq.de - www.railshoster.de - www.enterprise-rails.de 21
  • 73. Demo! Dipl.-Inf. (FH) Julian Fischer - fischer@avarteq.de - www.avarteq.de - www.railshoster.de - www.enterprise-rails.de 22

Hinweis der Redaktion

  • #13: H&amp;#xE4;ufige Rollenverteilung: PM und Kunde ermitteln Anforderungen, Grafiker fertigt &amp;#x201E;Screens&amp;#x201C; an. Screens = Photoshop-Files: Webseite als einzelne Grafik. HTMLer zerschneidet Grafik und erstellt HTML/CSS (Barrierefrei, browsersicher, ...), Programmierer realisieren das Verhalten der Anwendung
  • #14: Active Record: OR-Relationales Mapping, Speichern von Datens&amp;#xE4;tzen in DB, Laden aus DB, Ruby Action View: HTML mit eingebettetem Ruby (&amp;#xE4;hnlich JSP, PHP, embedded Perl, ...) Action Controller: Ruby
  • #15: Active Record: OR-Relationales Mapping, Speichern von Datens&amp;#xE4;tzen in DB, Laden aus DB, Ruby Action View: HTML mit eingebettetem Ruby (&amp;#xE4;hnlich JSP, PHP, embedded Perl, ...) Action Controller: Ruby
  • #16: Active Record: OR-Relationales Mapping, Speichern von Datens&amp;#xE4;tzen in DB, Laden aus DB, Ruby Action View: HTML mit eingebettetem Ruby (&amp;#xE4;hnlich JSP, PHP, embedded Perl, ...) Action Controller: Ruby
  • #22: Verberbung Belongs_to: 1:n Beziehung mit Model &amp;#x201E;Hosting&amp;#x201C; &amp;#xDC;berschriebene toString-Methode in Ruby (Analog Java)
  • #23: HTMLer Setzt vorgegebene Grafik in HTML/CSS um
  • #24: HTMLer Setzt vorgegebene Grafik in HTML/CSS um
  • #25: HTMLer Setzt vorgegebene Grafik in HTML/CSS um
  • #26: HTMLer Setzt vorgegebene Grafik in HTML/CSS um
  • #27: HTMLer Setzt vorgegebene Grafik in HTML/CSS um
  • #28: HTMLer Setzt vorgegebene Grafik in HTML/CSS um
  • #29: HTMLer Setzt vorgegebene Grafik in HTML/CSS um
  • #30: HTMLer Setzt vorgegebene Grafik in HTML/CSS um
  • #31: HTMLer Setzt vorgegebene Grafik in HTML/CSS um
  • #32: HTMLer Setzt vorgegebene Grafik in HTML/CSS um
  • #33: HTMLer Setzt vorgegebene Grafik in HTML/CSS um
  • #34: HTMLer Setzt vorgegebene Grafik in HTML/CSS um
  • #35: Ausf&amp;#xFC;hrende Rolle: Programmierer
  • #36: Ausf&amp;#xFC;hrende Rolle: Programmierer
  • #37: Ausf&amp;#xFC;hrende Rolle: Programmierer
  • #38: Ausf&amp;#xFC;hrende Rolle: Programmierer
  • #39: Ausf&amp;#xFC;hrende Rolle: Programmierer
  • #40: Ausf&amp;#xFC;hrende Rolle: Programmierer
  • #41: Ausf&amp;#xFC;hrende Rolle: Programmierer
  • #43: LIVE: Rails Projekt generieren, Projektstruktur demonstrieren
  • #44: LIVE: Rails Projekt generieren, Projektstruktur demonstrieren
  • #45: LIVE: Rails Projekt generieren, Projektstruktur demonstrieren
  • #46: LIVE: Rails Projekt generieren, Projektstruktur demonstrieren
  • #47: LIVE: Rails Projekt generieren, Projektstruktur demonstrieren
  • #48: LIVE: Rails Projekt generieren, Projektstruktur demonstrieren
  • #49: LIVE: Rails Projekt generieren, Projektstruktur demonstrieren
  • #50: LIVE: Rails Projekt generieren, Projektstruktur demonstrieren
  • #51: Rake: Analog make / ant -&gt; Automatisierung von Entwicklungsprozessen (z.B. Ausf&amp;#xFC;hrung von DB-Migrationen) Gems: Ruby Bibliotheken, &amp;#xE4;hnlich wie Java-Jars, organisiert wie Perl-Pakete, Debian Pakete, ... Plugins: Rails Funktionalit&amp;#xE4;ten, &amp;#xE4;hnlich wie AOP Generators: Erzeugt h&amp;#xE4;ufig ben&amp;#xF6;tigte Code-Ger&amp;#xFC;ste (z.B. HTML-Grundger&amp;#xFC;st, ...)
  • #52: Rake: Analog make / ant -&gt; Automatisierung von Entwicklungsprozessen (z.B. Ausf&amp;#xFC;hrung von DB-Migrationen) Gems: Ruby Bibliotheken, &amp;#xE4;hnlich wie Java-Jars, organisiert wie Perl-Pakete, Debian Pakete, ... Plugins: Rails Funktionalit&amp;#xE4;ten, &amp;#xE4;hnlich wie AOP Generators: Erzeugt h&amp;#xE4;ufig ben&amp;#xF6;tigte Code-Ger&amp;#xFC;ste (z.B. HTML-Grundger&amp;#xFC;st, ...)
  • #53: Rake: Analog make / ant -&gt; Automatisierung von Entwicklungsprozessen (z.B. Ausf&amp;#xFC;hrung von DB-Migrationen) Gems: Ruby Bibliotheken, &amp;#xE4;hnlich wie Java-Jars, organisiert wie Perl-Pakete, Debian Pakete, ... Plugins: Rails Funktionalit&amp;#xE4;ten, &amp;#xE4;hnlich wie AOP Generators: Erzeugt h&amp;#xE4;ufig ben&amp;#xF6;tigte Code-Ger&amp;#xFC;ste (z.B. HTML-Grundger&amp;#xFC;st, ...)
  • #54: Rake: Analog make / ant -&gt; Automatisierung von Entwicklungsprozessen (z.B. Ausf&amp;#xFC;hrung von DB-Migrationen) Gems: Ruby Bibliotheken, &amp;#xE4;hnlich wie Java-Jars, organisiert wie Perl-Pakete, Debian Pakete, ... Plugins: Rails Funktionalit&amp;#xE4;ten, &amp;#xE4;hnlich wie AOP Generators: Erzeugt h&amp;#xE4;ufig ben&amp;#xF6;tigte Code-Ger&amp;#xFC;ste (z.B. HTML-Grundger&amp;#xFC;st, ...)
  • #55: Rake: Analog make / ant -&gt; Automatisierung von Entwicklungsprozessen (z.B. Ausf&amp;#xFC;hrung von DB-Migrationen) Gems: Ruby Bibliotheken, &amp;#xE4;hnlich wie Java-Jars, organisiert wie Perl-Pakete, Debian Pakete, ... Plugins: Rails Funktionalit&amp;#xE4;ten, &amp;#xE4;hnlich wie AOP Generators: Erzeugt h&amp;#xE4;ufig ben&amp;#xF6;tigte Code-Ger&amp;#xFC;ste (z.B. HTML-Grundger&amp;#xFC;st, ...)
  • #56: Rake: Analog make / ant -&gt; Automatisierung von Entwicklungsprozessen (z.B. Ausf&amp;#xFC;hrung von DB-Migrationen) Gems: Ruby Bibliotheken, &amp;#xE4;hnlich wie Java-Jars, organisiert wie Perl-Pakete, Debian Pakete, ... Plugins: Rails Funktionalit&amp;#xE4;ten, &amp;#xE4;hnlich wie AOP Generators: Erzeugt h&amp;#xE4;ufig ben&amp;#xF6;tigte Code-Ger&amp;#xFC;ste (z.B. HTML-Grundger&amp;#xFC;st, ...)
  • #57: Rake: Analog make / ant -&gt; Automatisierung von Entwicklungsprozessen (z.B. Ausf&amp;#xFC;hrung von DB-Migrationen) Gems: Ruby Bibliotheken, &amp;#xE4;hnlich wie Java-Jars, organisiert wie Perl-Pakete, Debian Pakete, ... Plugins: Rails Funktionalit&amp;#xE4;ten, &amp;#xE4;hnlich wie AOP Generators: Erzeugt h&amp;#xE4;ufig ben&amp;#xF6;tigte Code-Ger&amp;#xFC;ste (z.B. HTML-Grundger&amp;#xFC;st, ...)
  • #58: Rake: Analog make / ant -&gt; Automatisierung von Entwicklungsprozessen (z.B. Ausf&amp;#xFC;hrung von DB-Migrationen) Gems: Ruby Bibliotheken, &amp;#xE4;hnlich wie Java-Jars, organisiert wie Perl-Pakete, Debian Pakete, ... Plugins: Rails Funktionalit&amp;#xE4;ten, &amp;#xE4;hnlich wie AOP Generators: Erzeugt h&amp;#xE4;ufig ben&amp;#xF6;tigte Code-Ger&amp;#xFC;ste (z.B. HTML-Grundger&amp;#xFC;st, ...)