# Zweitprogrammiersprache gesucht



## kirdie (27. Sep 2011)

Ich programmiere seit Jahren nur noch in Java und würde gerne wissen:

- lohnt es sich, eine zweite Programmiersprache zu lernen?
- wenn ja, welche wäre da gut geeignet?

Ausschließen möchte ich schonmal C, C++, Basic, Pascal und Delphi 
Ansprechen würde mich etwas mit wenig Boilerplatecode, ordentlicher IDE-Unterstützung und mächtiger Standardbibliothek. Ausserdem soll es function pointer haben, da mich deren Fehlen bei Java nerft 
Und sie muss nicht unbedingt für Businessprogramme geeignet sein aber vielleicht gut für typische Knobelaufgaben wie z.B. von Projekt Euler oder so.


----------



## Landei (27. Sep 2011)

Lohnen tut es sich immer, man bekommt einen anderen Blickwinkel auf die Probleme - oder anders herum: "Wenn du nur einen Hammer hast, sieht jedes Problem wie ein Nagel aus". 

Wie wäre es mal mit einer funktionionalen Sprache? Ich würde spontan Haskell oder Erlang vorschlagen.

Der Ausdruck zur Berechnung von Euler-Problem #1 sähe z.B. in Haskell so aus:


```
sum $ filter ((>1).(`gcd` 15)) [1..999]
```


----------



## daybyter (2. Okt 2011)

PHP vielleicht? Weniger zum Spielen, aber eine Website braucht man ja öfters mal...


----------



## Landei (2. Okt 2011)

PHP hat nichts, was Java nicht auch hat, nur die HTML-Einbindung ist neu.


----------



## freak_007 (2. Okt 2011)

Mit C/C++ kannst du Java Bindings machen, aber leider gibt's die meisten eh schon.
Gruß,
Freak

Edit: Mächtige Standardbibliothek kann man nicht unbedingt sagen, weil du andere Bibliotheken benutzen musst um ein Gui zu erstellen, sonst ist alles drin. Datei IO, String formatierungen, usw.


----------



## ARadauer (2. Okt 2011)

Ich denke es kommt drauf an was du damit machen möchtest.
Wenn du dich viel im Web Bereich bewegst ist sicher PHP die beste Wahl. Man kommst schnell rein und kann schnell viele Sachen damit umsetzen.


----------



## lol² (2. Okt 2011)

Ich sehs wie Landei. PHP hat außer der Tatsache, dass es auf jedem noch so billigen Hoster verfügbar ist, keine Vorteile gegenüber anderen serverseitig einsetzbaren Sprachen. Außerdem ist der Markt mit mittelmäßigen PHPlern ziemlich übersättigt, was sich auch im Lohnniveau niederschlägt. Und nicht zu vergessen: Die Sprache und die Standardbibliothek ist einfach nur Frickelkram. Wenn man von einer "ausgewachsenen" Sprache kommt sollte man die ersten Wochen schon mal einen Kübel bereitstellen, falls einen der Brechreiz überkommt.

Als Ergänzung zu Java würde sich persönlich folgendes vorschlagen

Skriptsprachen wie Python, Ruby und nicht zu vergessen die guten alten Shell-Skripte
"höhere" Sprachen für die JVM z.B. Scala, Groovy, Clojure
 (nicht hauen *g*) C#


----------



## ThreadPool (2. Okt 2011)

Persönlich würde ich Landei's Vorschlag beherzigen und eine Sprache lernen die weder so aussieht wie Java noch sich verhält wie Java. D.h. eine etwas weiter verbreitete funktionale Sprache wie Haskell oder eher eine Multiparadigmensprache wie den Common Lisp-Dialekt mit Konzentration auf eher funktionale Anwendung.


----------



## daybyter (3. Okt 2011)

Ich wollte halt pragmatisch sein, und was vorschlagen, was er vielleicht auch mal beruflich in absehbarer Zeit nutzen kann.

Wenn es um persönliche Vorlieben geht, hätte ich auch eher was wie Scheme vorgeschlagen, aber das wird ja leider wenig gefragt.

Was wäre mit UML? Ok, es ist nicht wirklich eine Programmiersprache (so ein bischen, wenn man die Actions mit einbezieht), aber brauchen kann man das doch immer mal?

Ciao,
Andreas


----------



## XHelp (3. Okt 2011)

daybyter hat gesagt.:


> Ok, es ist nicht wirklich eine Programmiersprache (so ein bischen, wenn man die Actions mit einbezieht), aber brauchen kann man das doch immer mal


Ne, auch nicht mit Aktivitäten. Es heißt ja auch UML und nicht UPL. Und den Aufwand eine neue Programmiersprache zu lernen oder UML zu verstehen kannst du auch nicht wirklich vergleichen.


----------



## guest0815 (3. Okt 2011)

daybyter hat gesagt.:


> Ich wollte halt pragmatisch sein, und was vorschlagen, was er vielleicht auch mal beruflich in absehbarer Zeit nutzen kann.


Nur will man beruflich sowas wie PHP nutzen? Ich jedenfalls nicht. Auch als Entwickler sollte man einen gewissen Stolz haben ...


> Was wäre mit UML? Ok, es ist nicht wirklich eine Programmiersprache (so ein bischen, wenn man die Actions mit einbezieht), aber brauchen kann man das doch immer mal?


Als Entwickler sollte man eh die für die übliche Arbeit relevante Untermenge von UML einigermaßen können. Von daher ist das nicht mehr erwähnenswert.

Und wie schon gesagt wurde: UML-Diagramme sind kein Programmiersprachenersatz, sondern dienen der Modellierung, dem Verständnis und der Kommunikation. Sie zeigen immer nur einen bestimmten Ausschnitt oder Blickwinkel des Systems. Gute Diagramme bringen kurz aber knackig ihre Aussage rüber. Sie sind nie allumfassend und stellen immer eine Abstraktion dar.


----------



## schalentier (3. Okt 2011)

Code School - RailsForZombies

:-D


----------



## ARadauer (3. Okt 2011)

guest0815 hat gesagt.:


> Nur will man beruflich sowas wie PHP nutzen? Ich jedenfalls nicht. Auch als Entwickler sollte man einen gewissen Stolz haben ...



Dass nicht, privat ist es aber sehr praktisch.


----------



## guest0815 (3. Okt 2011)

ARadauer hat gesagt.:


> Dass nicht, privat ist es aber sehr praktisch.


Privat hat man doch weit mehr Freiheitsgrade, sich die Technologie auszusuchen. Da wäre, zumindest für mich, PHP so ziemlich das Letzte, was ich nehmen würde. Ein Tomcat ist im privaten LAN in nullkommanix aufgesetzt, und schon steht einem die riesige Auswahl an Sprachen und Frameworks für die JVM offen. Auch der klassische Apache HTTP Server lässt sich mit wenigen Handgriffen zu Python, Ruby und Co. überreden.

OK, wenn du eine eigene Seite im WWW anbieten willst, kannst du dann halt nicht mehr jeden 08/15-Billigheimer nehmen. Aber die paar Euronen mehr wäre mir die entspanntere Entwicklung schon wert.


----------

