8 Stimmen

Was ist Ruby on Rails?

Ich bin ein Front-End-Entwickler (HTML,CSS,JS & jQuery) Ich weiß ein wenig von PHP. Ich versuche zu begreifen, was Ruby/Ruby on Rails ist.

Auf http://rubyonrails.org/  Es heißt: "Ruby on Rails ist ein Open-Source-Web-Framework, das für das Glück der Programmierer optimiert ist".

Was ist das Besondere an Ruby/Ruby on Rails, und wie kann ich als Person davon profitieren, es zu lernen?

Meine einfache Frage ist: Wessen Schwester ist es? PHP, mySQL, ASP, coldFusion, jsp, apache?

Was bewirkt es?

0 Stimmen

6 Stimmen

Da bin ich anderer Meinung; das sind andere Fragen.

1 Stimmen

Ich stimme nicht mit S. Lott überein.

23voto

Andres Jaan Tack Punkte 21928

Die Sprache

Rubinrot ist eine neuere Programmiersprache, die den größten Teil ihres Erbes mit Perl und Smalltalk teilt. Wie Ruby aussieht (und wie Sie es selbst ausprobieren können), können Sie sehen unter tryruby.org .

Genauso wie Sie mit PHP Webseiten schreiben können, können Sie das Gleiche mit Ruby tun.

Der Rahmen

Ruby on Rails ist eine Reihe von Softwaretools, die es Ihnen erleichtern, eine Website in Ruby zu schreiben. Die wichtigsten Dinge, die sie zu erleichtern versuchen ("make easy") sind:

  1. Speichern von Bezugsdaten (z. B. Blogeinträge und die dazugehörigen Kommentare) in einer Datenbank.
  2. Annahme von Webanfragen und programmatisch darauf reagieren (z. B. das Passwort eines Benutzers überprüfen)
  3. HTML zusammenstellen mit Ihren Daten, mit Layouts und Vorlagen, die es einfacher machen.

"Rails", wie es kurz genannt wird, ist mit extremen Vorurteilen gegenüber bestimmten Anwendungsmodellen, insbesondere MVC, ausgestattet. Das bedeutet, dass im Gegensatz zu PHP, wo jede .php Quelldatei ist Freiwild für jedes Stück Code, der meiste Code in einer Rails-Anwendung wird an einem bestimmten, konventionellen Ort geschrieben. Wenn Leute Rails mit PHP vergleichen, weisen sie oft auf diesen Umstand hin.

Es gibt vieles, was ich nicht behandelt habe, aber das sind die grundlegenden Funktionen von Rails. Um zu sehen, wie es aussieht, würde ich vorschlagen, sich den berüchtigten Film anzusehen, Screencast "Ein Weblog erstellen...". .

0 Stimmen

Großartige Antwort! Allerdings bin ich mir nicht sicher, ob man Ruby als eine "neue" Sprache bezeichnen kann. Ja, im Vergleich zu Fortran ist sie neu. Aber sie ist auch älter als PHP, C#, VB.NET, und fast so alt wie Java (in der Tat Releases im gleichen Jahr), von denen man keine typischerweise als "neu" bezeichnen würde.

2 Stimmen

Wow, ich schätze, es ist 1995 erschienen. Interessant. Ich frage mich, warum ich dachte, es sei so viel neuer.

0 Stimmen

Wie Python ist auch Ruby eine Sprache, die erst lange Zeit nach ihrer Entstehung an Popularität gewann. Vor 2004 hatte ich noch nie etwas von Ruby gehört, aber von Java hatte ich mit Sicherheit schon gehört!

4voto

duffymo Punkte 298898

Es ist ein Framework für Ruby, dessen Schwerpunkt auf CRUD-basierten Webanwendungen liegt. Es enthält eine Reihe von Annahmen (auch bekannt als "Konventionen"), die es einfach und schnell machen, Tabellen mit 1:1, 1:m und m:n Beziehungen, Objekte, Controller und Webseiten für die Darstellung und Bearbeitung dieser Daten im Web zu erstellen.

Rubinrot ist nur eine weitere objektorientierte Sprache, wie Java, C++ oder C#. Erfunden wurde sie von einem Herrn aus Japan.

0 Stimmen

Danke, ich stelle eine einfache Frage: was ist Ruby? ist es die gleiche Art von Sprache wie PHP ASP? Server db generierte Inhalte?

0 Stimmen

Ruby gehört zur gleichen Kategorie wie PHP, einer dynamischen, interpretierten Skriptsprache, die jedoch objektorientiert ist und über einige clevere Funktionen verfügt, die Rails einfach zu bedienen machen.

0 Stimmen

Außerdem ist zu beachten, dass Ruby im Gegensatz zu Java, C++ oder C# dynamisch ist. Das bedeutet eine Menge Dinge, am bemerkenswertesten ist, dass die Klasse in Ruby geöffnet und geändert werden können Klassen on fly.

4voto

Seburdis Punkte 788

Wenn Sie nach einem Vergleich für jemanden suchen, der von PHP kommt, können Sie sich das so vorstellen CakePHP für Ruby. Es handelt sich um eine Reihe von vorentwickelten Low-Level-Klassen und -Systemen, die dann zur Verwendung in vielen verschiedenen Systemen erweitert werden können. Es bündelt auch eine Menge anderer hilfreicher Werkzeuge und eine Plugin-Architektur. Es verwendet Ruby und eine HTML-Schablonensprache, die auf Ruby (erb) und nicht auf PHP basiert.

3voto

nowk Punkte 32199

Das ist vielleicht nicht die beste Analogie, aber es ist so, als würde man HTML/CSS/JS verwenden, um eine zusammenhängende Einheit mit bestimmten Dingen an bestimmten Stellen anzuzeigen. Rails bietet ein Framework, das es Ihnen ermöglicht, in einer organisierten Umgebung mit bestimmten Dingen an bestimmten Stellen zu arbeiten. Außerdem bietet es Funktionen, die eine schnellere Entwicklung ermöglichen.

Im Allgemeinen:

Html würde den Inhalt enthalten, den Sie anzeigen möchten, während CSS helfen würde, das spezifische Aussehen dieses Inhalts zu kontrollieren, während JS Ihnen erlauben würde, den besagten Inhalt zu manipulieren oder mit ihm zu interagieren.

Rails verwendet MVC (Model, View, Controller), um eine ähnliche Organisation zu schaffen. Dabei werden Datenobjekte im Allgemeinen als Modelle kategorisiert, während Ansichten die Anzeige der Daten steuern. Und Controller würden den Fluss dieser Daten von der Ansicht zum Modell und umgekehrt erleichtern.

Rails ist nicht das einzige Spiel in der Stadt. Schauen Sie sich also um, denn es gibt noch andere großartige Frameworks, und finden Sie dasjenige, das am besten zu Ihrem Stil und Ihren Sprachbedürfnissen passt.

2voto

khelll Punkte 22794

Philosophie und Design

Ruby on Rails soll folgende Schwerpunkte setzen Konvention vor Konfiguration (CoC), und das Prinzip der raschen Entwicklung von Wiederholen Sie sich nicht (DRY).

"Convention over Configuration" bedeutet, dass ein Entwickler nur unkonventionelle Aspekte der Anwendung angeben muss. Wenn es zum Beispiel eine Klasse "Sale" im Modell gibt, heißt die entsprechende Tabelle in der Datenbank standardmäßig "Sales". Nur wenn man von dieser Konvention abweicht, z. B. die Tabelle "verkaufte Produkte" nennt, muss der Entwickler Code für diese Namen schreiben. Im Allgemeinen führt dies zu weniger Code und weniger Wiederholungen.

"Wiederhole dich nicht" bedeutet, dass die Informationen an einer einzigen, eindeutigen Stelle zu finden sind. Bei der Verwendung des ActiveRecord-Moduls von Rails muss der Entwickler zum Beispiel keine Datenbankspaltennamen in den Klassendefinitionen angeben. Stattdessen kann Ruby on Rails diese Informationen anhand des Klassennamens aus der Datenbank abrufen.

_Entnommen aus wikipedia_

CodeJaeger.com

CodeJaeger ist eine Gemeinschaft für Programmierer, die täglich Hilfe erhalten..
Wir haben viele Inhalte, und Sie können auch Ihre eigenen Fragen stellen oder die Fragen anderer Leute lösen.

Powered by:

X