2009-05-28 6 views

Antwort

31

Neue Programmiersprachen, ähnlich wie gesprochene Sprachen, können neue Perspektiven eröffnen. Neue Sprachen zu lernen - vor allem solche, die sich von denen unterscheiden, die Sie gewohnt sind (und Erlang wird wahrscheinlich zu dieser Rechnung passen) - können Ihnen eine Menge verschiedener Dinge beibringen, die Sie nicht einmal über die Programmierung wussten: wissen Sie . Also ja, ich denke du solltest es unbedingt, auch wenn du gerade genug lernst um daran zu basteln und ein Gefühl für die neue Sprache zu bekommen.

+5

Mehr als gesprochene Sprachen, würde ich sagen. Ich bin mir nicht sicher, ob ein Rubyist so viel von Lua lernen kann, aber zum Beispiel Erlang? Lispeln? C? Völlig unterschiedliche Denkweisen. Außerdem ist Ruby nicht für jede Anwendung perfekt. Manchmal möchten Sie wirklich C. – Chuck

+0

Aber wenn Sie immer noch "Ruby viel mögen", ist es wahrscheinlich wert, weiter auf der Lernkurve zu bekommen. (Nicht rubinspezifisch - gilt für alle Sprachen.) – dkretz

2

Auf der anderen Seite gibt es etwas zu sagen, um eine Sprache gut zu kennen. Sie können viel mehr mit fundierten Kenntnissen einer einzelnen Sprache als mit Oberflächenkenntnissen von einem Dutzend tun.

+2

"Wenn du NUR einen Hammer kennst, schaust du auf JEDES Problem, als ob es ein Nagel wäre" –

+0

Und wenn du nur weißt, was ein Hammer ist, kannst du nicht hineinfahren etwas. ;) –

+0

Ich denke du könntest noch ein Auto fahren. –

10

Das Erlernen einer funktionalen Sprache kann besonders vorteilhaft sein. Sich mit dem funktionalen Stil der Programmierung vertraut zu machen, ist ein todsicherer Schritt auf dem Weg zu einem besseren Programmierer. Lisp (oder seine Derivate) ist insbesondere eine gute Sprache zum Lernen. Hier ist eine Liste der letzten Faden auf, so dass Sie einen kleinen Einblick in diese Richtung könnte bieten:

  1. Why do people think functional programming will catch on?
  2. What’s a good Functional language to learn?
  3. Benefits of learning scheme?
1

ich immer für die bloße Herausforderung das Erlernen neuer Sprachen genießen von es. Es hält mein Gehirn fit. Ich habe auch festgestellt, dass es gute Vorstellungsgespräche gibt, um sagen zu können: "Ich bin flexibel. Ich bin anpassungsfähig an das, was auch immer Ihre Bedürfnisse in der Zukunft sein mögen. Und ich kann es mit meiner langen Liste von Sprachen beweisen."

2

Wenn Sie wie Ruby viel sollten Sie auf jeden Fall eine andere Sprache lernen ... ein ohnesigils wenn möglich.

+1

Oh sie sind nicht wie Perlsiegel, giv'em eine Pause. Sie sind nur für das Scoping gedacht, nicht für die ungarische Notation. – guns

6

Abgesehen von den (sehr zufrieden) allgemeine Gründe zu wollen, eine andere Sprache lernen, wenn man wie Ruby eine Menge zu

  • Smalltalk lernen wollen könnte, die sehr eine Sprache ist, sehr ähnlich wie Rubin, aber in reinerer Form.

  • Lernen Sie eine Sprache, die sehr, sehr unterschiedliche — sagen etwas, das auf algebraische Datentypen und Funktionen basiert eher als Objekte und Methoden, und etwas mit einem statischen Typ System eher als ein dynamischer Typ System — sondern etwas, das, wie Ruby, werden leistungsfähige Methoden der Programmgestaltung und generischen Programmierung unterstützen. Gute Kandidaten wären Standard ML und Haskell.

  • Lernen Sie eine Sprache, die sehr, sehr unterschiedliche — etwas sagen, das Sie jedes Bit, Adresse und Wort im Speicher — etwas steuern macht, dass Sie die Kontrolle über die Hardware zu verstehen und nehmen zwingt. Mit anderen Worten, lernen Sie   C.

In Bezug auf die anderen Sprachen, die Sie erwähnen,

  • Lua ist klein und sehr elegant gestaltet und umgesetzt. Das mag den Rubyisten in dir ansprechen. Aber im Gegensatz zu Ruby ist es nicht sehr weltanschaulich; es ist mehr eine Sammlung von Einzelteilen. Ich schlage vor, dass Sie Lua eher schätzen und genießen werden, nachdem Sie zuerst in drei oder vier anderen Sprachen gearbeitet haben.

  • Erlang ist interessant, aber ich habe ein Bauchgefühl, es ist entweder zu unterschiedlich (rein funktional, verteilt) oder nicht verschieden genug (dynamisches Typsystem). Aber wenn es Sie anspricht, gehen Sie darauf ein.

0

Meine Hauptsprache ist PHP. Ich bin ein Script-Sprachfan, trotzdem habe ich in C#, Java, Python, Ruby und sogar OO JavaScript Bücher getaucht, um neue Mechanismen, Denkweisen zu finden. Ich habe z. B. ziemlich viele Stunts in Java gefunden, die ich in meiner ganztägigen Arbeit umsetzen konnte. Wenn Sie also lernen oder nur neue Sprachen lernen, können Sie Ihre Perspektive erweitern.

2

Scheint mir, dass ein Profi lernt die Werkzeuge, die er braucht zu verwenden. Frameworks, Container, Sprachen, alles ist faires Spiel. Ich begann in Pascal, ging zu C und dann zu C++. Dann in Java konvertiert. Heutzutage ist es meist Java mit viel Javascript und etwas PHP. Einfach genug oder? Nun, ich muss auch Bash Scripting und Perl lernen. Abgesehen von all dem anderen Mist, auf den ich aufpassen muss (wenn du sagst, dass du die gesamte Web-Authentifizierung verstehst, werde ich dich als Lügner bezeichnen). Da draußen gibt es viele Sachen. Springe hinein. Sei bereit, verschiedene Dinge auszuprobieren.