Welche Sprache für's backend?

8 Antworten

Vom Fragesteller als hilfreich ausgezeichnet

Meine JavaScript-Erfahrung beschränkt sich auf einige UI-Spielereien.
Aber ich habe mal einen erfahrenen JavaScript-Entwickler gehört, der meinte, es wäre ein großer Fehler gewesen, ein Backend mit JavaScript aufzubauen.
Die Begründung war einfach: Ja, man kommt anfangs schnell zum Ziel und muss sich nicht so sehr mit vielen Regeln herum schlagen, aber später kommt komplexere Fehlersuche und die wird dann zur Hölle.

Selber bestätigen kann ich das mangels Erfahrung nicht, aber vorstellen kann ich es mir definitiv :D

Wenn Du nun zig Jahre Erfahrung mit JavaScript hast: Nimm JavaScript.
Wenn Du noch recht neu (so klingt es), dann lass es lieber bleiben.
Es gibt andere Sprachen, die dafür besser geeignet sind.

Ich persönlich würde eigentlich immer auf C# setzen, einfach weil mir ASP.NET Core extrem viel Arbeit ab nimmt und das Tooling generell sehr gut ist. Außerdem ist es eine eher strenge Sprache und ich mag strenge Sprachen - der Compiler sagt mir den Fehler dann vor dem Start ^^
Nachteil ist aber, dass die Einstiegshürde wegen der komplexen Prinzipien recht hoch ist. Die Prinzipien sind gut und wichtig, da sie eine langfristig wartbare und qualitativ hochwertige Anwendung fördern (teilweise fast schon erzwingen), aber man muss sie auch richtig befolgen. Tut man das nicht und versucht drum herum zu arbeiten, rennt man nur gegen Mauern.

Für Java und PHP gibt's aber sicher auch Frameworks, die in eine ähnliche Richtung schlagen, aber die kenne ich nicht und ASP.NET hat zum Senkrechtstart angesetzt.

Generell gilt aber die Regel:
Viel Erfahrung (mehr als ein paar Jahre) ist mehr wert, als ein schickes Tool. Dennoch sollte man die Augen nach besseren Technologien offen halten und auch ein eingespieltes Team langsam aber sicher darauf umstellen.

PS:

Es hängt natürlich auch davon ab, in welche Richtung Du gehen willst.
Wenn Du eigentlich im Web-Frontend bleiben willst und dein Projekt nur ein "Ausreißer" ist, bist Du mit JavaScript nicht falsch.
C# und Andere ticken ganz anders, da geht also viel Zeit rein, von der Du dann im Web-Frontend nur wenig hast. Wobei sich das mit WebAssemblies ändern kann, aber noch ist das Thema eher klein.


BenIEbelt 
Fragesteller
 05.02.2022, 15:45

Vielen Dank für die freundliche und ausführliche Antwort.

Ja, man kommt anfangs schnell zum Ziel und muss sich nicht so sehr mit vielen Regeln herum schlagen

Find ich super und pusht mich beim lernen zur Zeit enorm, weil ich meine Ideen schnell umsetzen kann.

Dabei geht es mir in erster Linie mehr darum einen Einblick in die Programmierwelt zu bekommen und verschiedenes zu verstehen.

Ich habe vor etwas mehr als einem Monat erst mit dem ganzen begonnen, die meiste Zeit ging bei der Wahl der Sprache verloren.. Es gab so viele unterschiedliche Meinungen wie man denn beginnen sollte, dass ich echt verwirrt war. Also fing ich mit Java an und hatte schnell festgestellt, dass coden süchtig machen kann =D

Um anfangs schnelle Erfolge zu erzielen und auch ein optisch schönes Ergebnis liefern zu können, hab ich dann Html-css-Javascript und Python für mich entdeckt

.. aber später kommt komplexere Fehlersuche und die wird dann zur Hölle.

..ehrlich gesagt hab ich jetzt noch mehr Lust bekommen damit zu coden =)

0

Eigentlich egal, das womit du zurecht kommst. Es gibt Frameworks für Python und mit JavaScript funktioniert das auch gut.

go-lang ist auch eine schöne Sprache, vor allem für Microservices. Aber vielleicht etwas komplizierter? Muss man halt Pointer blicken und so, aber ist trotzdem ne GC Sprache.

PHP ist ne 🤢 Sprache, aber es gibt code monkey jobs dafür. Und vielleicht manche vernünftigeren Projeke über Frameworks. Aber ich persönlich würde nie wieder freiwillig PHP machen, nachdem ich es in meiner Ausbildung lernen musste.

Meine Empfehlung: Bleib bei JS. Lern Nodejs, git, npm, vielleicht docker.

Honorable Mention für C# / asp.net wobei ich darüber bisher nur APIs gemacht habe. Aber das ist auch angenehm und du lernst eine Sprache mit dem furchtbaren OOP Klassensystem was alle lieben! Is doch toll!

Woher ich das weiß:Berufserfahrung – Software Entwickler / Devops

BenIEbelt 
Fragesteller
 04.02.2022, 13:28

Ich habe mir Heute morgen nodejs angeschaut und finde es super.

Aber warum lese ich so viele schlechte Meinungen über JS, wenn es beim backend verwendet wird ?

Die meisten Artikel oder Forenbeiträge die ich gelesen hab waren der Meinung das JS nicht gerade die sicherste Methode fürs backend wäre.

0
BeamerBen  04.02.2022, 14:06
@BenIEbelt

Bezüglich Sicherheit fällt mir das NPM Ökosystem ein. Tausende Packages, mit tausenden Dependencies bei denen es immer irgendwo Probleme gibt.

Ansonsten haben Scriptkiddies die Vorurteile gegen "Scriptspachen" haben oft auch irgendwelche ganz komischen Meinungen die komplett merkwürdig sind und nicht auf Fakten basieren. Da findest du im Internet, auch auf dieser Plattform, oft ganz viele Müll Aussagen.

Du machst kein riesen Projekt bei dem Performance eine Rolle spielt, die meisten Sicherheitsprobleme kommen von unerfahrenen Entwicklern oder Administratoren, aka. fachliche Fehler und nicht von der eingesetzten Technologie. Node ist dafür vollkommen okay was du machst. Wenn du Artikel verlinkst kann ich auch Stellung auf konkrete Punkte beziehen.

1
Welche Sprache würdet Ihr einem Anfänger fürs backend empfehlen ?

Mit Erfahrung in JavaScript kannst du das Problemlos mit JavaScript (NodeJS) machen. Für ziemlich alles gibts eine Library. Wirklich schwer sollte das dann nicht sein.

...soll ich vielleicht zusätzlich PHP lernen ?

PHP wird im Web zwar immer noch sehr oft gebraucht, ich sehe sie aber als veraltet an. Simple Dinge gehen damit problemlos, aber für komplexeres Zeug... naja. Würde ich dir jetzt nicht mehr empfehlen.

Woher ich das weiß:Berufserfahrung – Informatiker Applikationsentwicklung
Von Experte BeamerBen bestätigt

Da du schon Erfahrung mit JavaScript hast kann ich dir für‘s Backend auf alle Fälle Node.js empfehlen. Damit ist es kinderleicht deinen eigenen Server zu machen.

Als Datenbank habe ich bisher mit MySQL, Redis, PostgreSQL und MongoDB die besten Erfahrungen gehabt.

Woher ich das weiß:Hobby – Programmieren ist mein Hobby & Beruf

BenIEbelt 
Fragesteller
 04.02.2022, 13:20

OK, danke =)

1

Ich bin nicht mehr ganz im Thema, da ich seid 10 Jahren Rentner bin.

Computersprache und Datenbanken haben nicht zwingend eine Gemeinsamkeit. Natürlich gibt es mittlerweile in vielen Sprachen eine Schnittstelle zu Datenbanken.

MySLQ müsste noch immer eine Schlüsselsprache für Datenbanken sein.

PHP galt zu meiner Zeit als die weitverbreitetste Programmiersprache für Websites

Für Apps müsste eher eine der folgenden Sprachen geeignet sein

  • JAVA
  • Kotlin
  • C++
  • C#

Ich stamme noch aus der Ära wo man auch noch in Assembler programmiert hatte *grins*. Vielleicht findest du jemand der etwas mehr Ahnung vom hier und heute hat.


BenIEbelt 
Fragesteller
 04.02.2022, 06:02

Einen schönen guten Morgen,

vielen Dank für die freundliche Antwort. Meine ersten Tastenschläge waren - LOAD"$",8,1 return - =)

0