Die meisten Programmiersprachen haben einige Entwurfsentscheidungen, die ihre Verwendung und Anwendbarkeit beeinflussen.
Beispielsweise:
- Python konzentrierte sich auf die Wartbarkeit / Lesbarkeit von Code und ließ Einrückungen ein Teil der Sprache selbst sein.
- Javas Absicht war es, plattformübergreifend OOP 'einfacher' und 'freundlicher' als C ++ zu machen
- Objective-C wurde als OO-Wrapper für C entwickelt, ohne die Zukunft von C ++ zu kennen
- Erlang ist für hochfehlertolerante und gleichzeitige Systeme konzipiert
- PHP wurde für die dynamische Erstellung von Webseiten entwickelt
- CoffeeScript wurde entwickelt, um die guten Teile von Javascript zu enthüllen, OOP-syntaktischen Zucker hinzuzufügen und die Nuancen (Globals etc.) von JS "hinter den Kulissen" etc. zu verbergen.
Jede Programmiersprache versuchte, eine bestimmte Nische IMHO auszunutzen und zu nutzen. Das Obige sind meine Perspektiven auf die Grundprinzipien der Programmiersprachen, die ihre Entwicklung und weit verbreitete Anwendbarkeit bestimmten. Natürlich gibt es noch viel mehr, aber die Liste ist nur als Beispiel gedacht
Ich habe jedoch Probleme damit, die Grundprinzipien, auf denen Ruby basiert, und seine wachsende Popularität zu verstehen. Was waren die Gründungsprinzipien von Ruby, die es heute populär machen? Oder ist es das Genie eines Mannes, der das Rails-Framework entworfen hat? Wenn das letztere der Grund war, warum Ruby das Entwerfen von Rails besser / einfacher / schneller gemacht hat? In welchem Sinne?
Der am häufigsten genannte Grund für die Erstellung einer neuen Programmiersprache ist "... wollte eine spaßige, schwach getippte Programmiersprache". Das Programmieren macht einfach Spaß, unabhängig von der Sprache (jede Sprache hat einige schlechte Teile, aber man kommt entweder darum herum oder lebt damit).
Welche Nische hat Ruby ausgenutzt (oder tut es), die von den aktuellen Sprachen nicht ausgenutzt wird? Was ist die Stärke von Ruby, die zu seiner breiten Akzeptanz geführt hat? Was hat Ruby gemacht, was vorher nicht gemacht wurde (oder extrem schwierig war)?
Ich bin kein Ruby-Programmierer, sondern nur ein Ruby-Noob und daher die Verwirrung.
Haftungsausschluss : Dies ist KEIN Flammenkrieg und ich suche nicht nach Antworten in Ruby vs. Programmiersprache. Ich suche nach Gestaltungsentscheidungen, auf denen Ruby basiert und die zu einer breiten Akzeptanz geführt haben. Welche Nische erfüllt Ruby damit, populär geworden zu sein, oder wird das nur Rails zugeschrieben?
Hiermit wird die Titelfrage nicht direkt beantwortet, sondern es werden einige Punkte angesprochen (z. B. warum Ruby erstellt wurde).
Zitate von Yukihiro 'Matz' Matsumoto, dem Schöpfer von Ruby, die vielleicht erklären, was seine Kreation inspiriert hat:
Im Grunde wollte Matz eine extrem objektorientierte Sprache, die für das Glück des Programmierers entwickelt wurde.
quelle
+
In1+1
ist eine Methode.Ruby (zusammen mit Schienen) machte die Konvention über Konfiguration populär.
Der alte (nicht rubinrote auf Schienen) Weg war
Mit Konvention über Konfiguration wird die Basisarbeit dafür automatisch erledigt:
contras: Man muss alle Konventionen lernen, deshalb ist es schwieriger, Ruby on Rails im ersten Durchgang zu lernen.
Profis: Wenn Sie die Konventionen kennen, ist es ziemlich einfach, den Code anderer Ruby-on-Rails-Entwickler zu verstehen, da jeder die gleichen Konventionen befolgen muss.
Inzwischen hat die Konvention über die Konfiguration in vielen kodierenden Ökosystemen Einzug gehalten
quelle
Erstens ist Ruby eine "aktuelle Sprache". Vielleicht meinst du "Sprachen, die beliebt waren, als Ruby 1995 erstellt wurde."
Ich mag Ruby aus den gleichen Gründen, aus denen ich Perl mag:
Es ist kraftvoll und ausdrucksstark. Ich kann über eine Zeile Ruby-Code anstelle von fünf Zeilen Java oder C ++ schreiben. Es gibt keine Wiederholung, die nicht mit minimalem Aufwand herausgerechnet werden kann.
Es ist dynamisch. Methoden und Eigenschaften können zur Laufzeit erstellt werden, sodass ich Objekte um extern definierte Dinge wie Datenbanktabellen wickeln kann, ohne die Definition dieser Dinge zu duplizieren und ohne die Anwendung neu zu erstellen.
Es gibt ein ausgezeichnetes Buch über die Sprache ( Programming Ruby ), das sowohl lesbar als auch umfassend ist.
Es gibt ein einziges Repository für Public-Domain-Pakete und eine praktische Befehlszeilenschnittstelle zum Repository.
Aber ich mag Ruby besser als Perl, weil es besser lesbar ist.
Es gibt zahlreiche Seiten, die Ruby mit Python vergleichen. Ich mag sie beide. Ich bevorzuge Ruby, habe aber nur begrenzte Erfahrungen mit Python.
quelle