mikrocontroller.net

Forum: PC-Programmierung Welche WeB-Programmiersprachen - The Trend is your Friend


Autor: Daniel (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hallo zusammen,

vor geraumer Zeit hatte ich mal gefragt, welche Programmiersprache man 
heute lernen sollte, um als Hobby-Bastler fit zu sein.
Zu recht hatte man mir damals gesagt, dass man zwecksgebunden 
Programmiersprachen einsetzt und sich im Zweifel das nimmt, was man für 
seine Zwecke benötigt.

Das habe ich dann für mich an einem kleinen Projekt getan.
*Rolladensteuerung mit Raspberry Pi und Funktsteckdosen von Intertechno
Server mit Node.js und wirklich einfache html-Seite (als Kind hab ich 
mal mit der schönen Seite selfhtml angefagen) zum Steuern der Rollläden 
via Requests.

Läuft auch alles. Was mich ein wenig stört ist, dass mir so ein wenig 
das generelle Verständis in Richtung Web-Programmierung fehlt (grade in 
Hinblick auf Sicherheit, falls ich mal auf die Idee komme, meine 
Rollläden übers Internet zu steuern.

Daher würde ich mich mit der Schnittstelle Raspberry - Web vllt. doch 
etwas tiefer beschäftigen wollen, auch z.B. wie ich die Befehle dann 
umsetzte.

Ich glaub meine eingebaute Exe-Shell wäre nicht grade als "sicher" 
einzustufen.

Daher zwei Fragen:

1. Trotz suche im App-Store und Web hab ich keine vernüftiges Tutorial 
gefunden, dass einem Grundlagenwissen zum Webprogrammieren vermittelt, 
habt Ihr Tipps?

2. Womit wird ein Hobby-Baster am ehesten glücklich? Apache, Node.js, 
Tomcat? (Ich dachte da an etwas wie den Arduino unter den Webservern).

Vielen Dank.

Beitrag #5015360 wurde von einem Moderator gelöscht.
Autor: Torsten Robitzki (Firma: robitzki.de) (torstenrobitzki)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Daniel schrieb:

> 1. Trotz suche im App-Store und Web hab ich keine vernüftiges Tutorial
> gefunden, dass einem Grundlagenwissen zum Webprogrammieren vermittelt,
> habt Ihr Tipps?

Im Web werden sehr viele unterschiedliche Technologien benötigt und da 
hilft es, die Unterschiede zu verstehen:
- Darstellung einer Web-Seite (frontend): HTML, CSS, JavaScript
- Evtl. dynamischen Erstellen der Seite (backend): z.B. JavaScript 
(Node.js), Ruby (Rails), PHP (würde ich die Finger von lassen)
- Transport der Seit vom Server zum Browser: HTTP 
(https://tools.ietf.org/html/rfc2616)
- Webserver: Apache etc.

> 2. Womit wird ein Hobby-Baster am ehesten glücklich? Apache, Node.js,
> Tomcat? (Ich dachte da an etwas wie den Arduino unter den Webservern).

Das hängt am ehesten davon ab, mit welcher Sprache Du das backend 
implementierst. Da Du Dich ja schon mit Node angefreundet hast, würde 
ich dabei bleiben.

mfg Torsten

Autor: J. Wa. (nuernberger)
Datum:

Bewertung
-1 lesenswert
nicht lesenswert

Autor: waflija (Gast)
Datum:

Bewertung
-4 lesenswert
nicht lesenswert
Torsten R. schrieb:
> - Evtl. dynamischen Erstellen der Seite (backend): z.B. JavaScript
> (Node.js), Ruby (Rails), PHP (würde ich die Finger von lassen)

PHP verteufeln und Javascript empfehlen. Da treibst du aber den 
Beltzebub mit dem Teufel aus.

Wenn es nur "schnell" gehen soll ist javascript nicht schlecht. Bringt 
aber eine Menge Fehlerquellen mit auf die man keinen Einfluss. Siehe 
hier als Beispiel z.B. JSFuck
Nachteil: Nicht typisiert und sehr, sehr mekrwürdige auto-casts. Nie als 
Backendsprache geplant worden. Der NodeJS Server hat sich in der 
vergangenheit aufgrund dieser cast-Probleme immer wieder als sehr 
verwundbar gezeigt.

Wenn es schnell und einiger Maßen professionell sein soll, ist sauber 
geschriebenes PHP die Wahl.
Nachteil: Nicht typisiert, alte Bibiliotheken sehr uneinheitlich 
geschrieben.
Vorteil: Sehr viele Tutorials und "best practice" Artikel. Sehr viele 
Analogien zu C / CPP.

Ruby ist inzwischen relativ exotisch und wenig verbreitet.

Auch exotisch bzw. nur bei embedded / high-performance Webseiten:
Java (NICHT Javascript. "echtes" Java!)
C / CPP

Vorteil: Die Sprachen sind typisiert und compilierbar. Daher ungefähr 
einen Faktor 10 Resourcensparender. Nachteil: Die Entwicklung dauert 
länger.

Autor: Torsten Robitzki (Firma: robitzki.de) (torstenrobitzki)
Datum:

Bewertung
1 lesenswert
nicht lesenswert
waflija schrieb:
> PHP verteufeln und Javascript empfehlen.

Wo habe ich JavaScript "empfohlen"?

Ich persönlich würde Ruby oder Python empfehlen. Da JS den "Job" tut und 
der OP JS offensichtlich beherscht, wäre das meine Wahl.

Autor: Mark Brandis (markbrandis)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Sprachen kommen und gehen. Man wird sowieso nicht ein ganzes 
Entwicklerleben lang mit einer einzigen Sprache auskommen.

Sinnvoll ist, aus den verschiedenen Bereichen jeweils etwas zu können:
-eine prozedurale Programmiersprache (z.B. C)
-eine objektorientierte Programmiersprache (z.B. Java oder C++ oder C#)
-eine Skriptsprache

Es schadet auch nicht, sich mal eine funktionale Programmiersprache wie 
z.B. Haskell oder LISP näher anzuschauen. Freilich werden rein 
funktionale Programmiersprachen in vielen Firmen selten oder auch gleich 
gar nicht eingesetzt. Aber manche Konzepte davon findet man als 
Ergänzung in anderen Programmiersprachen wieder.

Autor: Johann L. (gjlayde) Benutzerseite
Datum:

Bewertung
2 lesenswert
nicht lesenswert
Eche Kerle nehmen Assembler :-)

https://en.wikipedia.org/wiki/WebAssembly

Autor: Klaus (Gast)
Datum:

Bewertung
1 lesenswert
nicht lesenswert
Ich würde es nicht zu kompliziert machen. Tomcat oder Apache sind schon 
sehr umfangreich und die meissten Features brauchst du wahrscheinlich 
nicht. Als Webserver für den Anfang wäre vielleicht lighttpd eine ganz 
gute Wahl. Node.js kann man auch machen, bietet aber schon mehr 
Fehlerquellen. Dann schaue dir HTML5 und jQuery (mobile) für die 
Clientseite an. Da kann man schnell und einfach gute Mobilseiten 
erstellen.
Auf der Serverseite solltest du den Zugriff schon auf 
Betriebssystemebene so konfigurieren, dass es möglichst dicht ist.
Dann den Webservice (Webserver) so bauen, dass er nur die Dinge 
ausführen kann, die du auch möchtest.

Für den Zugriff aus dem Internet gibt es dann eine Menge mehr zu 
beachten. Dazu könnte man später einen Reverseproxy einrichten, der 
alles aus dem Internet verarbeitet und deinen Service abgesichert.

Beitrag #5015803 wurde vom Autor gelöscht.
Autor: Arc Net (arc)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Ich würde mir zumindest mal Go ansehen. Läuft überall (von Windows bis 
Plan9), statisch typisiert, mittlerweile ganz brauchbare Tools, 
eigenständiger Http-Server nicht nötig, brauchbare C-Anbindung, falls 
Low-Level-Sachen gebraucht werden (https://golang.org/cmd/cgo/).
Go -> JavaScript = https://github.com/gopherjs/gopherjs

Autor: Planlos (Gast)
Datum:

Bewertung
1 lesenswert
nicht lesenswert
Ist zwar schon ein Jahr alt und damit hoffnungslos veraltet, aber:

https://hackernoon.com/how-it-feels-to-learn-javas...

Antwort schreiben

Die Angabe einer E-Mail-Adresse ist freiwillig. Wenn Sie automatisch per E-Mail über Antworten auf Ihren Beitrag informiert werden möchten, melden Sie sich bitte an.

Wichtige Regeln - erst lesen, dann posten!

  • Groß- und Kleinschreibung verwenden
  • Längeren Sourcecode nicht im Text einfügen, sondern als Dateianhang

Formatierung (mehr Informationen...)

  • [c]C-Code[/c]
  • [avrasm]AVR-Assembler-Code[/avrasm]
  • [code]Code in anderen Sprachen, ASCII-Zeichnungen[/code]
  • [math]Formel in LaTeX-Syntax[/math]
  • [[Titel]] - Link zu Artikel
  • Verweis auf anderen Beitrag einfügen: Rechtsklick auf Beitragstitel,
    "Adresse kopieren", und in den Text einfügen




Bild automatisch verkleinern, falls nötig
Bitte das JPG-Format nur für Fotos und Scans verwenden!
Zeichnungen und Screenshots im PNG- oder
GIF-Format hochladen. Siehe Bildformate.

Mit dem Abschicken bestätigst du, die Nutzungsbedingungen anzuerkennen.