Webtechnologien, welche Richtung?

W

Windows10Prob

Gast
Hi,


ich bin ein Java-Backendentwickler und möchte mich nun gerne mehr mit Web-Technologien auseinander setzen. Im Web gibt es zig Tausend Meinungen und Ideen.

Relevant erscheinen mir folgende:

JavaScript
TypeScript
AngularJS
Node.JS
JQuery

Nun unterscheiden die sich ja alle syntaktisch doch etwas und auch wohl von dem Einsatzgebiet.

Ich möchte hier gar kein Fanboy-Kampf auslösen, meine Frage ist eigentlich ganz simpel.

Es erscheint mir so, dass alle Technologien auf JS aufbauen. Sprich, ist es sinnvoll erstmal nur JS zu lernen und sich dann Schritt für Schritt an die anderen Sprachen ranzumachen? Oder kann man einfach gleich mit z.B. AngularJS durchstarten und hat keine Verständnisprobleme aufgrund von Definiziten in JS?

Naja und gerne könnt ihr mir natürlich auch sagen, welche der oben genannten Technologien ihr am besten findet und dann bitte auch warum =)

Freue mich über euer Feedback.
Danke
 
Das sind alles nur bestimmte Module welche auf JS aufbauen. Im Endeffekt solltest JS lernen und dich dann in das entsprechende Paket einarbeiten das die Funktionen die du brauchst erfüllt.
 
TypeScript mal außen vor, aber der Rest sind Bibliotheken, Frameworks oder Laufzeitumgebungen für JS.

Das fragst quasi, ob es sinnvoll wäre JSF oder JPA zu lernen ohne sich vorher mit Java zu beschäftigen...
 
Nur um es mal erwähnt zu haben:

Neben Node.js gibt es noch andere relevante Möglichkeiten, das Backend zu erstellen. Fürs Frontend führt an JS/TS im Moment eigentlich kaum ein Weg vorbei.
Fürs Backend gibt es aber eine Reihe von Sprachen, die da je nach Projekt gut geeignet sind, z.B.
Go
Python
Ruby on Rails
Java
PHP

Mit Javascript machst du aber grundsätzlich nichts falsch und wenn du dich ohnehin in JS einarbeitest, kannst du es auch fürs Backend nutzen.
 
Wenn du ein Projekt übernimmst oder übernehmen musst ist es nach wie vor meistens dann doch in PHP (Backend) für Frontend wird html css und JavaScript eingesetzt.

Der mehr oder weniger "Newcomer" für Backend ist wohl node.js (prinzipiell JavaScript).

Außerdem unterscheidet es sich auch ob du WebApps machen willst oder Webseiten - je nach dem ist das eine oder das andere mehr verbreitet oder sinnvoll.

Willst du grundsätzlich in dem Gebiet mal Fuß fassen, kommst du wohl fürs BE um PHP kaum rum...

Die anderen "Sprachen" sind denke ich im direkten Vergleich (übertrieben gesagt) nischen Produkte, was nicht heißt das sie schlecht sind oder vielleicht für den ein oder anderen Zweck nicht sogar besser sind - nur die Verbreitung ist nicht so hoch. (würde ich mal behaupten wollen - kann mich aber auch irren??)

JavaScript zumindest rudimentär zu können bzw. zu verstehen ist quasi fast ein muss - PHP aus dem Grund des Verbreitungsgrades genauso.

:D selbst HTML kann umfangreich werden, wenn du es semantisch korrekt einsetzten willst... :D :D

CSS wird auch immer Umfangreicher und ist mittlerweile auch mit so ner Art von Funktionen gespickt... :D
Von den allein daraus resultierenden Browser-Unzulänglichkeiten mal ganz abgesehen...

Sonst würde ich @Ic3HanDs zustimmen, z. B. jQuery ist Kindergarten (was das Verstehen angeht) im Vergleich zu vanilla js. ;)
 
Wie schon angemerkt, deine Aufzählungen sind ansich nur Frameworks in der Javascript Umgebung.

Ich kann dir ans Herz legen erst einmal vanilla JS, dann jQuery und dann Node.js mit dem Express Framework zu lernen.

Anschließend sollten noch Datenbanken und Builtprozesse (z.B. Gulp) dazu kommen.
Meiner Meinung nach ist es jedoch sehr wichtig die Grundbausteine zu verstehen und nicht direkt mit Node anzufangen, wenn du dabei noch Javascript lernen müsstest.
 
Lern reines JavaScript und streich vorerst den Rest der Liste.

Beste Kurse für praktisches JavaScript:
1. PracticalJS (freier Videokurs)
2. JavaScript30 (ebenso)

Da lernst du die Sachen, die du wirklich für den Anfang benötigst.
 
Naja, "Webtechnologien". Auf Clientseite oder auf Serverseite oder beides?

Clientseitig gibt es ja mehr oder weniger nur noch Javascript (VB wird durch Microsoft aktiv rausgedrängt). Ob man da jetzt eine existierende Bibliothek verwendet oder sich selber eine zusammenstellt... ist ja erstmal egal.

Serverseitig kann man aber verwenden, was man will. Zum Beispiel halt JAVA.

JAVA zu Javascript hat nur das Problem, daß letzteres zwar ein bißchen aussieht wie ersteres und auch so heißt, aber nicht mal ansatzweise so viel geht damit. Typen gibt's nicht, Klassen gibt's nicht, OO gibt es ebenfalls nicht... steht zwar bei beiden JAVA im Namen, aber Javascript hat mit JAVA nix zu tun.

Entsprechend bringt es imo überhaupt nix, jetzt irgendwie mit ... "Javascript für blutige Anfänger" oder sowas anzufangen. Die Kunst wird eher werden, seine JAVA-Kenntnisse soweit runterzublöden, daß man an JavaSCRIPT nicht komplett verzweifelt, weil die aus JAVA banalst einfach zu lösenden Dinge unter JS schlicht nicht funktionieren.

Was man sich auf jeden Fall angucken muß für Webanwendungen sind das Document Object Model (DOM) und das Browser Object Model (BOM). Da führt kein Weg drumherum. Die braucht man immer, egal welche Sprache man zur Hand nimmt.
 
Welch grober Unfug. Ich bin beileibe kein Fan von JS und dessen Ökosystem, aber das was du hier für ein Bild davon zeichnest, ist zum einen überholt (schau dir mal ECMAScript 6 Features an) und zum anderen konnte man auch vorher prima mit JS arbeiten ohne "echte" Klassen zu haben. OO ist auch nicht der Weisheit letzter Schluss.

Abgesehen davon gibt es mit TypeScript inzwischen auch eine gute Alternative, die selbst für einen dogmatischen Java-Entwickler akzeptabel sein sollte.
 
Tumbleweed schrieb:
Welch grober Unfug. Ich bin beileibe kein Fan von JS und dessen Ökosystem, aber das was du hier für ein Bild davon zeichnest, ist zum einen überholt (schau dir mal ECMAScript 6 Features an) und zum anderen konnte man auch vorher prima mit JS arbeiten ohne "echte" Klassen zu haben. OO ist auch nicht der Weisheit letzter Schluss.

Abgesehen davon gibt es mit TypeScript inzwischen auch eine gute Alternative, die selbst für einen dogmatischen Java-Entwickler akzeptabel sein sollte.

Das stimmt nicht. Man ist erst ein guter Programmierer wenn man immer wieder betont, dass JavaScript und PHP scheiße sind, aber kein Weg an ihnen vorbei führt.
 
Der Grund warum Javascript so verbreitet ist ja der asynchrone, event driven Ansatz. Macht beim client Sinn, serverseitig auch da gute Rohperfomance. Am Ende machen die big player die Grundarbeit (v8, libs) und man kann sich, wie es die Zeit erfordert, auf seine Aufgabe konzentrieren mit der einzigen Auflage den Datenfluss nicht zu blockieren. Manche nennen das callback orgie, aber solange man die Stationen des Datenflusses modelliert hat, braucht man nur kurze und einfache Funktionen. Ist ja auch eines der Vorteile, der Programmierer an der Stelle ist auch einfacher zu finden und zu ersetzen

Zum ursprünglichen Thema:
ich würde auch auf das Thema Infrastruktur eingehen, also was bieten cloud anbieter für fertige Lösungsansätze an und in den Kontext ansetzen
 
Sparta8 schrieb:
Das stimmt nicht. Man ist erst ein guter Programmierer wenn man immer wieder betont, dass JavaScript und PHP scheiße sind, aber kein Weg an ihnen vorbei führt.

Das sind dann halt die 100 lauten random internet people, die für 90% des beschissen PHP-Codes verantwortlich sind, da sie es nicht nur immer wieder betonen, sondern sich auch nicht mit dem Thema beschäftigen (sonst würden sie es ja nicht andauernd betonen) und deswegen nur mittelmäßige Arbeit darin abliefern. Denn eines ist klar: In ca. 83% aller Webseiten steckt PHP im Backend und 95% Javascript im Frontend. Und wenn ein Javascript Framework verwendet wird, dann jQuery.

haters gonna hate... isso, macht sie jedoch nicht zu besseren Menschen oder intelligenteren Entwicklern.
 
RalphS schrieb:
JAVA zu Javascript hat nur das Problem, daß letzteres zwar ein bißchen aussieht wie ersteres und auch so heißt, aber nicht mal ansatzweise so viel geht damit. Typen gibt's nicht, Klassen gibt's nicht, OO gibt es ebenfalls nicht... steht zwar bei beiden JAVA im Namen, aber Javascript hat mit JAVA nix zu tun.

Entsprechend bringt es imo überhaupt nix, jetzt irgendwie mit ... "Javascript für blutige Anfänger" oder sowas anzufangen. Die Kunst wird eher werden, seine JAVA-Kenntnisse soweit runterzublöden, daß man an JavaSCRIPT nicht komplett verzweifelt, weil die aus JAVA banalst einfach zu lösenden Dinge unter JS schlicht nicht funktionieren.

So ein Blödsinn, Schau dir JS ES 6 an... Und auch vorher konnte man in JS Klassen imlementieren.
Und es geht nichtmal ansatzweise so viel wie mit Java? :D
Warum setzen dann Giganten wie Netflix auf NodeJS? Weil die alle kein Java oder PHP können oder daran gedacht haben das damit zu implementieren? Nein, weils einfach super skalierbar ist und asynchrone Arbeiten mit JS schnell und einfach zu implementieren sind. Man schaue sich nur mal Callbacks, Promises, async/await an.
Serverseitig WILL man genau diese Vorteile nutzen und immer mehr große Unternehmen wechseln von Java oder PHP auf NodeJS, eben aus diesen Gründen.
Vor 10 Jahren hätte ich dir recht gegeben, da war das alles noch etwas anders, aber heutzutage ist das einfach schlichtweg falsch.

Dynamische Webseiten mit einer Sprache zu entwickeln hat ebenfalls Vorteile. Serverseitige NodeJS Template Engines wie PUG, HBS, EJS bekommen einfach ein JSON Objekt mitgeliefert und schwups - alles dynamisch gerendert, je nach Useranfrage.
 
Na wenn ihr meint, darf ja jeder so sehen, wie er will. Ich hab nix gegen PHP - werkel selbst damit --- bin nur kein Freund von MySQL, aber das hat ja hiermit nix zu tun.

Formulieren wir es ein bissel anders: Ich werkel in JAVA und in JS und will jedesmal von letzerem in ersteres zurück, nicht unähnlich -- wenn auch nicht so rabiat schlimm --- wie wenn ich was in vbscript bauen muß (würg).

Mir persönlich, aber das wirklich nur persönlich und ich bin zweitausend Prozent sicher daß YM(W)V: allein die Tatsache, daß es X viele Frameworks für JS gibt, dem Umstand geschuldet sind, daß es JS selber nicht kann. Wäre das anders, würde man nicht in 100k-Größenordnungen (generischen) Plattformcode benötigen, nur um sein Problem umgesetzt zu kriegen.

Javascript hat aber genau EINEN Vorteil: Es läuft im Browser. Viel mehr Optionen hat man da nicht.
 
RalphS schrieb:
allein die Tatsache, daß es X viele Frameworks für JS gibt, dem Umstand geschuldet sind, daß es JS selber nicht kann.
Ich glaube, du missverstehst da was. JS (gerade seit ES6) kann vieles, nur die Browser hinken in der Unterstützung sehr vieler Sprachfeatures Monate oder sogar Jahre hinterher. Und genau da kommen Transpiler ins Spiel.

Vanilla JS zu lernen (also vermutlich ES5) ist Blödsinn, da man damit heutzutage überhaupt nicht mehr direkt in Berührung kommen muss. Dank Transpilern wie Babel kann man ES6/7 Syntax verwenden, welcher gerade für Java-Entwickler erheblich eingängiger ist.

Schau dir als Einstieg lieber einen der vielen Boilerplates an:
https://github.com/thoughtram/es6-babel-browserify-boilerplate
https://github.com/metagrover/ES6-boilerplate

Bzwg. wenn du direkt mit React einsteigen willst, dann:
https://github.com/react-boilerplate/react-boilerplate
https://github.com/facebook/create-react-app

Plain HTML/JS sollte man sich im Jahre 2018 nicht mehr antun.
 
Zuletzt bearbeitet:
RalphS schrieb:
Na wenn ihr meint, darf ja jeder so sehen, wie er will. Ich hab nix gegen PHP - werkel selbst damit --- bin nur kein Freund von MySQL, aber das hat ja hiermit nix zu tun.

Formulieren wir es ein bissel anders: Ich werkel in JAVA und in JS und will jedesmal von letzerem in ersteres zurück, nicht unähnlich -- wenn auch nicht so rabiat schlimm --- wie wenn ich was in vbscript bauen muß (würg).

Mir persönlich, aber das wirklich nur persönlich und ich bin zweitausend Prozent sicher daß YM(W)V: allein die Tatsache, daß es X viele Frameworks für JS gibt, dem Umstand geschuldet sind, daß es JS selber nicht kann. Wäre das anders, würde man nicht in 100k-Größenordnungen (generischen) Plattformcode benötigen, nur um sein Problem umgesetzt zu kriegen.

Javascript hat aber genau EINEN Vorteil: Es läuft im Browser. Viel mehr Optionen hat man da nicht.

Absolut korrekt, die JS Frameworks sprudeln nur so heraus - und die Begründung Einiger hier, dass JS toll ist und man sich ja nur die Verbreitung im Web ansehen muss. Naja es gibt ja auch keine Alternative fürs Frontend als JS? Ok laut o.g. Link gibts noch zu 5% Flash, super :D
 
ECMAScript und die Runtimes wie V8/Node.js sind mittlerweile so ausgereift, dass man so ziemlich alles machen kann und damit saubere Software-Architekturen aufbauen kann. Das ist nunmal Fakt. Wer was anderes behauptet, hat die Entwicklung der letzten 5 Jahre vermutlich nicht mitbekommen.
 
Zurück
Oben