Java nachholen oder neue Programmiersprache lernen?

...komplette Frage anzeigen

9 Antworten

Kommt man heute ohne Java-Kenntnisse heute im IT-Bereich aus (...)

Ja, denn nicht überall wird mit Java gearbeitet und prinzipiell geht es nur darum, die Werkzeuge zu beherrschen, die für die letztendliche Arbeit erforderlich sind. Wenn du in einem Unternehmen unterkommst, welches Webseiten mit PHP entwickelt, musst du PHP lernen. Wenn sie allerdings mit Ruby On Rails arbeiten, wird dir PHP wieder nichts nützen.

(...) oder würde es von Vorteil sein, Java nachzuholen (...)

Diese Frage ist allerdings ebenso mit Ja zu beantworten. Es ist vorteilhaft, bereits eine Programmiersprache zu beherrschen, zumal der Umstieg auf andere Sprachen dann einfacher ist. Aufgrund der Sprachelemente von Java, die auch in anderen Sprachen fast genauso bekannt sind (Bsp.: Kontrollstrukturen wie if-else, switch) würde es dir besonders leicht fallen, auf bspw. C# oder C zu wechseln - die Sprachen haben in ihrer Syntax einige Gemeinsamkeiten. Generell ist Java eine Sprache, die sich für den Anfang gut eignet, denn sie ist streng spezifiziert und bietet einen guten Überblick über Techniken und Muster, die auch in vielen anderen Sprachen Anwendung finden (z.B. OOP).

(...) und dann eines der Webprogrammiersprachen zu lernen?

Zuallererst kommt es darauf an, in welchen Informatikbereich du später wechseln möchtest. In die Webentwicklung? Wenn ja, wird es nicht reichen, eine Sprache zu lernen.

Neben den Standardwerkzeugen HTML und CSS käme mindestens noch eine Programmiersprache hinzu (JavaScript). Mit Kenntnissen über Java wären die Kenntnisse über eine Sprache, die serverseitig eingesetzt werden kann, bereits vorhanden. Allerdings hängt es nun, wie gesagt, wieder auf das Unternehmen an. Ob die ihre Logik auf dem Webserver mit VB.NET, JavaScript oder Tcl zusammenwurschteln, wirst du spätestens beim Bewerbungsgespräch erfahren.

Fazit:

Java nachholen oder neue Programmiersprache lernen?

Es ist egal, welche Programmiersprache du lernst. Wenn du bereits im Voraus weißt, in welcher Richtung du dich spezialisieren möchtest, ist es von Vorteil, sich mit möglichen Verdächtigen bereits auseinanderzusetzen (Bsp.: Webentwicklung - PHP, Automatisierungsinformatik - BASIC, C, usw.).

Zuletzt dennoch ein aber:

An meiner Uni (...)

Wenn du deine Prüfungen bestehen willst, kann es ganz gut sein, dass du gezwungen sein wirst, Java zu lernen.

Java ist noch immer eine der meistgenutzten Programmiersprachen, allein schon, weil es unglaublich viele Java-Entwickler und einen Haufen an "Bestandscode" gibt. Es wird Dich sehr viel eher weiterbringen, als HTML5, CSS, JavaScript und SAP. Zudem lernst Du damit auch "richtig" programmieren.

Java unterstützt die gängigen Features einer modernen Programmiersprache. (Seit Version 1.8, die ziemlich neu erschienen ist, beispielsweise auch Lambda-Expressions, etc.) Danach kann man recht einfach neue Sprachen erlernen.

Falls Du unbedingt Sprachen lernen möchtest, die derzeit sehr "im Trend"/gefragt sind, solltest Du Dich eher mit Go, Dart, Clojure, evtl. noch Scala beschäftigen. Diese Sprachen werden derzeit vor allem bei Neuentwicklungen eingesetzt.

Du kannst aber auch erst einmal programmieren lernen (in einer beliebigen, dafür geeigneten Sprache - oft werden hierfür Java oder Python verwendet - in diesem Fall würde ich Java vorziehen bzw. damit anfangen, weil die Sprache statisch typisiert ist, was gerade dann gut ist, wenn man noch lernt, weil der Compiler Fehler präziser melden kann) und dann später weitere Sprachen lernen. Diesen Ansatz würde ich empfehlen. Wenn man grundsätzlich programmieren kann (in einer beliebigen, hinreichend modernen, höheren Programmiersprache), erlernt man weitere/neue Programmiersprachen häufig ziemlich schnell.

Von einem guten Programmierer wird erwartet, dass er auch für ihn neue Programmiersprachen schnell lernen kann und die erste Programmiersprache ist die schwerste, von der kannst du dich schnell auf andere Programmiersprachen umstellen (wenn du nicht auch gleich das Paradigma wechselst, also z.B. von objektorientierter auf funktionale Programmierung. Java-Kenntnisse sind also nicht verkehrt. Wenn du einen Job suchst, in dem du bis zur Rente immer mehr oder weniger das gleiche machst, dann werde nicht Informatiker, sondern z.B. Busfahrer. :)

Wenn die Websprachen dich interessieren, dann kannst du die natürlich auch lernen, Java würde ich aber nicht aus den Augen verlieren.

Du hast schon gute Antworten bekommen. Hier noch eine Rangliste, wo Du nachschauen kannst, wie aktuell und angesagt die wichtigsten Programmiersprachen gerade sind.

https://www.tiobe.com/tiobe-index/

(Bitte nicht absolut verstehen. Das ist nur eine Orientierungshilfe. Die Methode, nach der die Rangliste ermittelt wird, ist nicht die einzig denkbare.)

Und falls Du neugierig auf Programmiersprachen bist: Hier kannst Du Codebeispiele von vielen Programmiersprachen miteinander vergleichen:

http://rosettacode.org/wiki/Rosetta_Code

Schau im Menü unter "Explore". Z.B bei "Tasks" die Programme für die Bernoulli-Zahlen:

http://rosettacode.org/wiki/Bernoulli_numbers

Ob Javakenntnisse gefordert sind hängt wirklich von der jeweiligen Stelle ab. Allerdings habe ich nicht das Gefühl, dass Java-Kenntnisse im IT-Bereich selten gefordert werden. Immerhin ist Java ja, dicht gefolgt von C/C++, die meistgebrauchte Programmiersprache.

Ich arbeite mich auch gerade in Java ein. Kann nur sagen, dass die Sprache gut zu lernen ist. C finde ich beispielsweise deutlich anstrengender.


Als Erweiterung zu dem hier bislang Aufgezähltem, würde ich gerne noch die Sprache "GO" anführen. Das ist bzw. entwickelt sich im Cloudumfeld (Docker, Kubernetes, etc.) zur Nummer-1. Vor allem im Github, wo gerade im Open Source die Luzi abgeht, ist GO absolut angesagt.

Java wird nie wirklich aussterben, denn was letztendlich als Marktstandard gilt, sind die Skills der Hunderttausenden Entwickler in den Offshore Stätten in Indien, Malaysia etc.

Ich persönlich finde die Java EE Frameworks veraltet, vor allem im Web(+Services) Umfeld. Wenn ich sehe, wie schnell man auf der NodeJS Plattform ist. Da stehen schon komplexe Web-Portale, während andere gerade noch an ihren JSF Controller Beans schreiben. Da helfen auch alle tolle Notations nichts.

FireEraser 05.08.2017, 11:17

Das liegt daran, dass Java EE ein ganz anderes Ziel verfolgt als NodeJS. NodeJS ist eher gut für rapid development geeignet, während eigentlich ganz Java mehr auf Stabilität und Übersichtlichkeit fokussiert ist. Demnach kann man eine Website mit NodeJS viel schneller zusammen klatschen, aber bei langjähriger Verwendung und komplexeren Projekten zahlt sich Java eher aus.

1

Das kommt wirklich sehr auf die Stelle an, aber Java ist nach wie vor eine der meistgenutzten Programmiersprachen.

Mal ganz nebenbei: HTML und CSS sind keine Programmiersprachen und lassen sich dazu sehr leicht erlernen, das kannst du auch nebenher machen. JavaScript ist auch sehr einfach, wenn man erstmal Java kann, man muss sich vor allem bei der Objektorientierung umstellen.

Mal abseits von dem, was die anderen geschrieben haben (die Antworten fand ich übrigens nicht schlecht, das nur so am Rande):

Du solltest Dir vor allem mal genauer überlegen, in welchem Bereich Du eigentlich später arbeiten willst.

Meines Erachtens vorgibt es da nämlich durchaus sowas wie eine Art "Fundamentalentscheidungg": Willst Du eher im Frontend-Bereich arbeiten? Oder willst Du eher Backend machen? Oder willst Du tatsächlich "Allrounder" sein?

Die Frage ist insofern nicht uninteressant, als dass sowohl die Frontend- wie auch die Backend-Technologien mittlerweile eine Komplexität erreicht haben, dass eigentlich kein seriöser Mensch mehr von sich behaupten kann, dass er beides vollumfänglich beherrschen würde.

Oder andersrum: wenn Du "Allrounder" sein willst, dann gehst Du ein hohes Risiko ein, größere Projekte mangels Detailwissen nicht mehr gestemmt zu bekommen.

Es ist dennoch natürlich grundsätlzich wichtig, ein klein wenig Überblick über beide Bereiche zu haben. Selbst wenn man vor hat, sich später auf den anderen Bereich zu konzentrieren.

Kommt auf den Einsatzbereich an.
Was du beschrieben hast sind in erster Linie Frontend Technologien. Java ist Backend.
Soweit ich weiss, wird für Webserver eher wenig Java verwendet, aber Java ist die reguläre Programmiersprache für Android Apps.

FireEraser 05.08.2017, 11:12

Du widerspricht dich hier selbst. Java soll Backend sein, aber auch Android? Android ist Frontend. Java ist eine enorm vielseitig einsetzbare Sprache, sowohl im Frontend als auch im Backend, für Webserver ist Java auch sehr relevant, siehe Java EE.

1
abbrechen 05.08.2017, 12:11

Webserver Backend und Android Frontend, war etwas unklar. Jedoch wirst du Java nicht im Web-Frontend finden.

1
FireEraser 05.08.2017, 12:23

So passt es besser zusammen :)

0

Was möchtest Du wissen?