Muss ich HTML und Javascript lernen, um Webanwendungen zu erstellen? [geschlossen]

10

Ich bin ein erfahrener Java-Programmierer und möchte eine komplexe Webanwendung erstellen, die dynamische Seiten, Zeichnungen usw. erfordert (am Beispiel SO). Muss ich Javascript / HTML lernen, um eine solche Anwendung zu erstellen?

Es ist nicht so, dass ich keine andere Sprache lernen möchte (ich habe dies bereits getan), aber die Technologie in der Javascript-Umgebung scheint sich so schnell zu ändern, dass sie nach dem Erlernen eines Frameworks bereits veraltet ist. Ich habe eine Reihe von Java-Frameworks für die Webentwicklung (Frühling, Spiel) überprüft, aber nicht tief. Können diese Frameworks (oder andere mögliche Java-Frameworks, die mir nicht bekannt sind) verwendet werden, ohne HTML / Javascript zu lernen? Ich habe auch einige Python-Erfahrung. Wenn ich die App in Python ausführen kann, ist dies auch eine Option.

vainolo
quelle
22
kurze Antwort: JA! ...... lange Antwort: JA !!!!!!!!!!!
Rlemon
1
Weitere Punkte: Sie benötigen kein Framework. Sie sollten sich beim Erlernen von Javascript von diesen und den Abstraktionsbibliotheken fernhalten. Abstraktionsbibliotheken (per Definition) helfen Ihnen nicht beim Erlernen der Sprache oder der APIs. Kommen Sie in den Javascript-Raum und stellen Sie einigen Raumbesitzern / Stammgästen diese Frage.
Rlemon
1
Nicht 100% die gleiche Frage, aber ich finde diese Antwort immer nützlich, wenn Leute nach "Verknüpfungen" fragen. programmers.stackexchange.com/questions/122191/…
rlemon
3
Nein, Sie können andere dafür bezahlen
Jason Sebring
1
Es ist wie die Frage "Muss ich Java kennen, um Android-Apps zu schreiben?" Oder "Muss ich Objective-C lernen, um iOS-Apps zu schreiben?" - Sie können dies vermeiden, aber wenn Sie keinen nativen Code schreiben, werden Sie verletzt.
TheShrike

Antworten:

35

Sie müssen nicht JavaScript und HTML lernen, um Webanwendungen zu erstellen.

Aber du wirst.

Wenn Sie Webapps wirklich hauptsächlich in Java schreiben möchten, schauen Sie sich das Google Web Toolkit an , das JS eine große Menge Java zur Verfügung stellt und einen guten Teil des für eine Webapp benötigten Codes befriedigt. Django ist ein ähnliches Framework für Python.

Und wenn Sie wirklich vermeiden möchten, HTML zu schreiben, gibt es eine Vielzahl von Vorlagen und Editoren, die Sie sehen, was Sie bekommen.

Unabhängig vom Abstraktionsframework und den HMTL-Vorlagen, mit denen Sie beginnen, werden Sie jedoch irgendwann mit der Präsentation unzufrieden sein. Und so haben Sie genug HTML / JS in Ihren Händen, um das eine winzige kleine Ding zu ändern, das Sie wollen. Und außerdem. Und ein anderer.

Und dann wirst du eines Tages in kaltem Schweiß aufwachen.

Geben Sie hier die Bildbeschreibung ein

Und so wirst du lernen. So haben viele von uns gelernt, damals in der Ära von Point-and-Click-Website-Machern wie Geocities. Wenn Sie es mit dem Web ernst meinen, lernen Sie nach einer Weile absichtlich oder absichtlich die Sprachen des Webs.

Sie müssen also nicht HTML und JavaScript lernen, um eine Site wie StackOverflow zu erstellen. Aber wenn Sie wirklich versuchen, eine Site wie StackOverflow zu erstellen, können Sie sich nicht davon abhalten, sie zu lernen.

Simon Sarris
quelle
1
Als ich die Frage zum ersten Mal las, waren meine Gedanken genau die gleichen wie diese Antwort. Da jedoch jede Technologie ihre Vor- und Nachteile hat, sollten Sie sich programmers.stackexchange.com/questions/38441/… ansehen, bevor Sie sich entscheiden. Viel Glück!
Wenn Sie nicht in der Lage sind, eine gut aussehende Präsentation nur mit HTML / CSS zu erstellen, haben Sie einfach den Bus verpasst.
ott--
Es ist viel schwieriger, alles zu verwenden, was Sie lernen, nachdem Sie über ein CMS oder eine wirklich beschissene dominierende Bibliothek wie EXTJS eine Katastrophe in Ihr Frontend eingeführt haben.
Erik Reppen
+1 Sie müssen JS nicht kennen und selbst wenn Sie sich widersetzen, werden Sie es eines Tages plötzlich einfach wissen .
Spoike
16

Betrachten wir einige mögliche Lösungen für das Szenario "Ich muss einige Web-Sachen machen":

  1. Stellen Sie jemanden ein, der das macht
  2. Verwenden Sie ein ausgeklügeltes Framework, das Nicht-Front-End-Inhalte auf magische Weise in Front-End-Inhalte umwandelt (HTML, CSS, JS).
  3. Mach es selbst

Wir werden # 1 ignorieren, weil wir so großartig sind. Wir haben zwei Möglichkeiten. Welche zu wählen, welche zu wählen ...

# 2 ist verlockend. Dies bedeutet, dass Sie in Ihrer Komfortzone bleiben können, was sehr komfortabel ist, insbesondere wenn Sie eine matschige Maschine und einige Sofas hinzugefügt haben. Aber lassen Sie uns überlegen, was mit dem von Ihnen verwendeten Framework passiert:

  1. Es schlägt aus
  2. Es wird veraltet
  3. Es entspricht nicht vollständig Ihren Erwartungen
  4. Alle anderen Softwareprobleme.

Sie sind ein Entwickler, daher muss es nicht schwer sein, alle möglichen Möglichkeiten zu prüfen, wie ein Produkt (insbesondere eine Bibliothek) auf viele spektakuläre Arten kaputt gehen kann, indem Sie Ihre Sofas zerreißen, die matschige Maschine umkippen und alles in hellem Magenta streichen.

In jedem dieser Szenarien müssen Sie zurückkehren, um die am Anfang der Antwort beschriebenen Optionen zu überdenken (nur dieses Mal wird das Framework in # 2 ersetzt), mit einer zusätzlichen vierten Option: Versuchen Sie, es auf Mikroebene zu reparieren . Mit anderen Worten, lernen Sie den Web-Stack auf eine flache Art und Weise, die nur erforderlich ist, um eine Lösung für dieses spezifische Problem zu finden.

Lohnt es sich? Hängt davon ab. Sie können glauben, dass das Framework Sie niemals enttäuschen wird, und Sie könnten Recht haben. Und du könntest falsch liegen.

Ich schlage eine hybride Lösung vor: Lernen Sie zuerst den Web-Stack. Sie müssen nicht viel Zeit damit verbringen, Sie müssen nicht so groß sein wie der 14-jährige von unten auf der Straße, der MySpace-Seiten Glanz verleihen kann. Sie müssen nur über grundlegende Kenntnisse verfügen los. Wenn Sie dann feststellen, dass dies das beste Szenario für Sie ist, wählen Sie ein Framework.

Jetzt ist Ihre Komfortzone etwas größer. Es könnte sogar einen Fernseher oder ein ABBA: Greatest Hits-Album zeigen. Wenn etwas kaputt geht, wissen Sie, wie Sie es beheben können. Jetzt haben Sie die Wahl . Und eine Wahl zu haben ist immer besser als keine Wahl zu haben.

Zirak
quelle
1
Upvoted nur, um mich zum Lachen zu bringen. Es ist auch ein guter Rat.
Ed Hastings
1
Für gute Ratschläge positiv bewertet. Es hat mich auch nur zum Lachen gebracht.
Rlemon
2

Müssen Sie unbedingt positiv ?

Nein.

Wenn Sie jedoch eine mäßig moderne Web-App wünschen, sollten Sie dies wahrscheinlich tun. Es gibt Wege, aber es sind Abstraktionen dessen, was wirklich passiert. Wenn Sie damit einverstanden sind, dann machen Sie es. Wenn nicht, müssen Sie die Sprache lernen.

Ryan Kinal
quelle
1

Eine große, komplexe Web-App ist sehr schwer und mühsam zu entwickeln, selbst wenn Sie bereits HTML und Javascript beherrschen.

Mein Rat wäre, nach einer Möglichkeit zu suchen, die Web-App mit einem Team oder zumindest einem Front-End-Entwickler zu entwickeln.

So konzentrieren Sie sich auf das, was Sie bereits gut wissen, und lassen das Frontend von einem Spezialisten durchführen.
Die Entwicklung des Frontends ist viel schwieriger als es zunächst scheint, beispielsweise aufgrund der Tatsache, dass das Frontend in vielen verschiedenen Browsern auf mehreren Betriebssystemen funktionieren muss.

kr1
quelle
1

Ich werde mich dem Chor anschließen und sagen, dass Sie höchstwahrscheinlich irgendwann HTML / CSS / Javascript lernen müssen.

Sie scheinen jedoch nach Frameworks zu fragen, die das Schreiben von Front-End-Code nicht erfordern. Ich kann mich auf dieses Gefühl beziehen. Leider gibt es nur sehr wenige ausgereifte Technologien, die dieses Zeug abstrahieren (aus einer Reihe von guten Gründen).

Schauen Sie sich Wt und die Java-Version JWt an . Es könnte das sein, wonach Sie suchen.

Kurz gesagt, dieses Framework versucht, Web-Apps widget-zentriert zu gestalten, sodass Sie die Benutzeroberfläche nicht wie HTML-Vorlagen schreiben, sondern wie eine Desktop-Anwendung codieren. Es verwendet einige neue Technologien wie Web-Sockets, führt eine progressive Verbesserung durch und entzieht Ihnen im Allgemeinen die Notwendigkeit, viel Front-End zu tun.

MrFox
quelle
0

Frameworks wie Spring and Play eignen sich hervorragend für die Handhabung Ihrer Anwendungslogik, aber selbst sie entziehen nicht die Notwendigkeit, ein Front-End für Ihre Webanwendung erstellen zu müssen. Es ist nicht grundlegend anders, als ein Front-End für Ihre Desktop-Anwendung erstellen zu müssen, sondern nur eine andere Ausführung.

Das sollte dich nicht zu sehr erschrecken. Ihr Entwicklungsprozess bleibt weitgehend unverändert, außer dass Sie Ihre Daten mit HTML und CSS anstatt mit Desktop-GUI-Elementen ausstatten müssen. Sie können an einem Nachmittag die Grundlagen von HTML und CSS erlernen und Ihre Benutzeroberfläche so kompliziert oder einfach gestalten, wie Sie möchten.

Mein Rat ist, Websites zu besuchen, die denen ähneln, die Sie erstellen möchten, und dann die HTML-Quelle anzuzeigen. Sie erhalten ein Gefühl dafür, wie diese Websites im Hinblick auf das HTML-Design ablaufen.

Jarrod Brennnesseln
quelle
0

Ja, um eine moderne Webanwendung zu erstellen, benötigen Sie mindestens Grundkenntnisse in HTML und Kenntnisse in JavaScript. Die Verwendung von Frameworks für eine Sprache wie Python oder Java ist möglich und Sie können den Großteil der Funktionen Ihrer Site damit erstellen. Aber selbst für eine einfache Site benötigen Sie ein wenig HTML, da dies das einzige ist, was ein Browser für die Anzeige von Inhalten versteht. Sie können damit durchkommen, dass Sie JavaScript nicht kennen, aber das würde Ihre Website viel weniger benutzerfreundlich machen, da Sie Seiten jedes Mal neu laden müssten, wenn Sie etwas aktualisieren möchten, und Sie würden auch ein sehr nützliches Tool für verlieren Hacken Sie eine Site zusammen und beheben Sie Probleme mit der Browserkompatibilität und CSS-Mängel.

Sie sind ein bisschen besorgt darüber, wie sehr sich die Dinge in der Webentwicklung ändern. JavaScript hat sich seit seiner Implementierung nicht wirklich geändert. Außerdem gibt es nur ein Framework, das JQuery kennen muss, wodurch JavaScript wirklich viel angenehmer wird. Die meisten anderen sich schnell ändernden Dinge sind wirklich der Geschmack des Monats und müssen nicht unbedingt bekannt sein

Ryathal
quelle
0

Es gibt Webanwendungs-Frameworks, die HTML und JavaScript abstrahieren, aber ehrlich gesagt ist die Heilung oft schlimmer als die Krankheit. (z. B. Google Web Toolkit).

Tun Sie sich selbst einen Gefallen und lernen Sie jQuery, CoffeeScript und / oder andere Javascript-Frameworks, um einige der langwierigsten Details zu sparen. In ähnlicher Weise sollten Sie Haml oder HamlPy verwenden, um mit einer schöneren HTML-Version zu arbeiten.

Steve Bennett
quelle
-2

HTML ist die Sprache des Webs, daher müssen Sie es etwas kennen.

Javascript nicht so sehr ... Sie können auch PHP usw. verwenden. Javascript ist nicht zu 100% notwendig.

Wenn Sie eine Website vollständig erstellen, würde ich Javascript auf jeden Fall empfehlen, da es von praktisch allen Browsern unterstützt wird und die Kompatibilität zwischen verschiedenen Browserprogrammen beibehält.

Wenn Sie jedoch nur Webanwendungen erstellen, gilt dies viel weniger als beim Erstellen einer Website.

leslar Bonar
quelle
-2

Javascript zu kennen ist ein Plus, da es Ihnen beim Erstellen von Web-Apps hilft. Ich denke, HTML ist das Beste, um gute Kenntnisse zu haben, und HTML5 ist gut, weil es sich gut in CSS3 und JavaScript integrieren lässt. Ich würde empfehlen, die Kurse der Microsoft Virtual Academy zu durchsuchen.

Sie haben über 200 verschiedene Kursoptionen und sind alle kostenlos und von Experten geführt. Ich persönlich habe von ihrem Kurs zum App-Entwicklungstraining mit HTML5 profitiert. Viel Glück!

Jessie Jones
quelle
-3

In einer kurzen Antwort JA. Aber hier ist, warum HTML die Struktur des gesamten Webs ist und JS die Interaktion des Webs ist. Ich weiß, dass Sie das wahrscheinlich schon oft gehört haben, aber es ist sehr wichtig zu wissen. Bei einigen Frameworks können Sie HTML oder JS nicht (oder nicht viel) verwenden, aber sie sind die Grundlagen des Webs. Wenn Sie keinen Code lernen möchten, mieten Sie jemanden. Und ich weiß auch, dass dies nicht in Ihrer Frage war, aber ich habe diesen Fehler viel gemacht, indem ich versucht habe, die Twitters und Gmail's zu erstellen, an die ich gedacht habe, ohne Code zu kennen und nur ein Tutorial zu googeln.

Ok, viel Glück!

WebMaster
quelle
1
Diese Frage hat bereits 10 Antworten, es brauchte keine elfte, die die gleichen Dinge in verschiedenen Worten ausdrückt. Bitte fügen Sie keine Antworten auf Fragen hinzu, die bereits gründlich beantwortet wurden, es sei denn, Sie haben etwas völlig Neues zu sagen.
Martijn Pieters