Das habe ich getan C
und C++
jetzt möchte ich meine Karriere als Webentwickler beginnen . Ich habe viel über Webentwicklung gelesen und festgestellt, dass es zwei Arten von Entwicklern im Web gibt:
1. Client Side Developers.
2. Server Side Developers.
Ich möchte mich weiterhin auf die serverseitige Entwicklung konzentrieren . Ich dachte, dass es am besten wäre, mit den Grundlagen zu beginnen, also fing ich an HTML
und CSS
. Ich fand heraus, dass CSS
das zu groß für jemanden war, um es ganz einfach zu meistern. Ich möchte wissen, welche Grundlagen ein serverseitiger Entwickler kennen sollte und ob er ein HTML-Meister sein und diese CSS
einfach abschaffen sollte.
Antworten:
Es wird dir Beachtung schenken, sie gut zu kennen. Wenn Sie ein Webentwickler sind, dann sind Sie ein Webentwickler. Sie sollten in der Lage sein, Webanwendungen unabhängig zu schreiben, und dazu gehört auch die clientseitige Technologie.
quelle
Ich betrachte mich als "serverseitigen" Entwickler.
Obwohl ich mich auf der "Rückseite" der Webentwicklung befinde, finde ich es äußerst hilfreich, die Grundlagen von HTML und CSS zu kennen. Ich arbeite an typischen "Web-Content-Management-Systemen" (WCMS) wie Drupal, Day CQ und Liferay, und die meisten Geschäftsanforderungen und -anforderungen beziehen sich auf das Ändern des Erscheinungsbilds und der Benutzeroberfläche.
Es ist nicht notwendig, ein "Meister" in HTML oder CSS zu werden, aber zumindest sollten Sie wissen, wie man eine statische Webseite erstellt, die mit CSS gestaltet ist. Sie sollten die Grundlagen von Formularen und die verschiedenen Eingabemechanismen kennen. Verstehen Sie für CSS den Unterschied zwischen dem ID- und dem CLASS-Attribut und die Funktionsweise von Selektoren. Vieles davon werden Sie im Laufe der Zeit aufgreifen.
Machen Sie sich abschließend mit den allgemeinen Unterschieden im Browser vertraut. Auch dies ist Wissen, das Sie im Laufe der Zeit erwerben werden, aber erkennen Sie, dass Browserunterschiede bestehen, und seien Sie bereit, es zu erkennen.
quelle
Ich würde eigentlich drei Segmente identifizieren:
Sie benötigen gründliche Kenntnisse in HTML und CSS. Die Arbeitsteilung zwischen serverseitigen und clientseitigen Entwicklern / Design-Entwicklern erfordert normalerweise, dass die serverseitigen Entwickler den HTML-Code bereitstellen, der durch Datenbank- und Programmierinteraktionen erzeugt wird. Dieser HTML-Code enthält auch CSS-Bezeichner, sodass er von den clientseitigen Entwicklern oder Designern bearbeitet werden kann.
Ihre Aufgabe als serverseitiger Entwickler ist es normalerweise, den anderen beiden das HTML / CSS-Markup zur Verfügung zu stellen. Streben Sie eine vollständige Beherrschung von HTML und CSS an.
quelle
Sie müssen sich mit HTML + CSS auskennen, da diese unverzichtbar und nicht schwer zu lernen sind. Sie werden auf Fallstricke stoßen, wenn Sie versuchen, das CSS für alle Browser festzulegen, aber Sie müssen es wissen, da Sie manchmal HTML mithilfe der Serverseite generieren müssen.
Sie können diese lernen, indem Sie Ihr eigenes Blog erstellen. Wenn es nichts zu bloggen gibt, können Sie über Ihren Unterricht bloggen.
quelle
Äh, ich verstehe nicht, warum die Leute nicht verstehen. Es gibt keinen Front-End-Code für Websites. Es ist alles Back-End-Code. Der Front-End-Code ist der Browser. Wenn Sie also nicht mit Mozilla oder IE oder Chromium / google oder Safari arbeiten, schreiben Sie serverseitigen Code. So funktioniert es: Der Browser fordert eine Datei vom Webserver an. Der Webserver gibt eine Datei aus. Der Browser interpretiert diese Datei und fordert möglicherweise zusätzliche Dateien an (Bilder, Javascript, CSS usw.) und interpretiert diese Dateien, bis alle Dateien interpretiert wurden.
Diese erste Datei, die der Browser anfordert, ist eine HTML-Datei. Die HTML-Datei wird analysiert und der Browser entscheidet, wie der Inhalt gerendert wird. Eines der wichtigsten Konzepte, das hier beibehalten werden muss, ist, dass die HTML-Datei von einem Parser verarbeitet wird.
Der Webserver ist eine Software, die einen Port überwacht und Anforderungen nach Dateien verarbeitet. Wenn es sich bei der Datei um eine statische Datei handelt (wir meinen hier statische Datei in dem Sinne, dass die Datei bereits erstellt wurde), wird sie einfach so wie sie ist auf den anfordernden Client kopiert. Wenn die Datei dynamisch ist, dh jedes Mal erstellt wird, wenn die Datei angefordert wird, fordert der Webserver an, dass die Datei von der Software generiert wird, die die Datei generiert (entweder ein ausgeführter Prozess, eine geladene Bibliothek oder das Starten eines Prozesses) Diese Software generiert die Datei und sendet sie an den Webserver, der sie wiederum an den Client sendet.
Sobald diese Datei dem Client "zugestellt" und analysiert wurde, fordert der Client möglicherweise andere Dateitypen an, z. B. JSON-Dateien, bei denen das Parsen durch den HTML-Renderer umgangen und die Datei stattdessen an den Javascript-Interpreter zurückgegeben wird, in dem sie ausgeführt wird der Client, und diese werden von Javascript analysiert (eval ist eine Form der Analyse). Darauf basiert AJAX.
Wie wirkt sich das auf Sie aus? Wenn eine Datei auf dem Server dynamisch generiert wird, wird auf dem Server eine Software ausgeführt, die angibt, wie die Datei generiert werden soll. Die Personen, die diese Software programmieren, gelten als "serverseitige" Programmierer.
Diese auf dem Server generierten HTML-Dateien teilen dem Browser mit, welche anderen Dateien enthalten sein sollen. Daher müssen Javascript, Bilder und CSS importiert, angeordnet und anderweitig in der generierten HTML-Datei organisiert werden.
Viele Web-Frameworks (MVC et al.) Wurden entwickelt, um eine Grenze zwischen der reinen "serverseitigen" und der "clientseitigen" Arbeit zu schaffen.
Ich habe vergessen, oh je, die Datenleute zu erwähnen. Die Datenspeicherer sind noch mehr serverseitig als die serverseitigen HTML-Datei-Generierer. Die Datenspeicherung, egal ob relationale Datenbank, NoSQL oder auf andere Weise, ist eine andere Sache. Ich erwähne dies, weil die von Big Vendor angepriesenen Frameworks und Methoden (wieder MVC et al.) Es anscheinend einfach machen, das einfach "einfach draufzulegen".
Woah, was für eine langatmige Antwort.
Ich mache diese scheinbar unbefangene Antwort, um Ihre Aussage, dass es serverseitige Entwickler und clientseitige Entwickler gibt, in Frage zu stellen. Wenn Sie Ihr Informationssystem über eine Website bereitstellen, muss alles auf dem Server gespeichert, organisiert und verwaltet werden. Und es ist ein großes Durcheinander, und wenn Sie nicht wirklich lernen, wie alles funktioniert, werden Sie eine verdammt lange Zeit damit verbringen, dass es gut funktioniert. Es ist also alles serverseitig.
quelle
+1 für die Frage. Ich habe auch immer gedacht, dass das Codieren einer Serverseite interessanter und wichtiger ist als HTML + CSS + JS + Ajax + .. und viele andere Dinge. Wie auch immer, wenn Sie alleine sind und Ihre eigene Webanwendung erstellen möchten, müssen Sie sowohl serverseitiger Programmierer als auch Designer + (clientseitiger Programmierer) sein. Deshalb lerne ich jetzt HTML5 und CSS3.
quelle
Eigentlich kommt es darauf an. In den meisten Fällen müssen Sie HTML und CSS beherrschen. In seltenen Fällen können Sie beide ignorieren.
Fall 1
In meiner Firma gibt es Projekte mit strikter Trennung zwischen HTML & CSS und allem, was mit dem Server zusammenhängt . Dies ermöglicht es, den besten C # - oder PHP-Entwickler auf die eine Seite und den besten HTML-, CSS- und JavaScript-Entwickler auf die andere Seite zu bringen. Konkret erstellt der serverseitige Entwickler für jede Seite serverseitige Objekte, die alles enthalten, was zum Anzeigen der Seite erforderlich ist. Diese Objekte werden dann in XML serialisiert. Der clientseitige Entwickler wählt diese Objekte aus und wandelt sie mit XSLT in XHTML um.
Allerdings habe ich diesen Ansatz noch nie in anderen Unternehmen gesehen. Außerdem hat es viele Einschränkungen und auch wenn es in einigen Fällen perfekt ist, funktioniert es in vielen anderen überhaupt nicht.
Fall 2
Wenn Entwickler und Designer auf kleinen Websites zusammenarbeiten, gibt es keinen Konsens darüber, wer HTML und CSS schreibt. Sie müssen sich für jedes Projekt nach den Fähigkeiten beider Beteiligter entscheiden. Auch wenn es in vielen Fällen der Entwickler ist, der sich mit HTML und CSS befasst, finden Sie auch einige Designer, die HTML und CSS sehr gut kennen . In diesem Fall müssen Sie HTML / CSS nicht lernen, wenn Sie beabsichtigen, nur mit einem solchen Designer an kleinen Projekten zu arbeiten.
Fall 3
Bei größeren Projekten ist es nicht ungewöhnlich , eine engagierte Person einzustellen, die auf der Grundlage der Arbeit von Designern und serverseitigen Entwicklern HTML- und CSS-Code schreibt . In der Regel ist dies eine gute Idee, da ein erfahrener C # -Entwickler nicht 100 USD pro Stunde für das eigentliche Schreiben von HTML zahlen muss. Es ist nur eine Verschwendung von Zeit und Geld.
Allerdings sind diese Fälle nicht die häufigsten. Konzentrieren Sie sich also auf die serverseitige Entwicklung, aber versuchen Sie auch, HTML und CSS zu lernen. Zusätzliches Wissen schadet nie.
quelle
Manchmal, besonders am Anfang, arbeiten Sie alleine an einem Projekt und müssen Front-End und Back-End machen. In diesem Fall benötigen Sie mindestens Grundkenntnisse in HTML und CSS. Sie müssen kein großartiger Designer sein, Sie müssen lediglich die Informationen aus Ihrem Backend in Ihrem Browser sichtbar machen, damit Sie die Dinge testen können.
quelle
Eigentlich hängt alles davon ab. Wenn Sie sich mit der Programmierung von Serversoftware nicht auskennen, stellen Sie sicher, dass Sie die Standardmethoden kennen, mit denen Webentwickler auf wirklich hohem Niveau (HTML / CSS) mit Ihrer Anwendung interagieren können sollten. Wenn Sie jedoch viel eng mit HTML / CSS verbunden arbeiten möchten, müssen Sie HTML und CSS einigermaßen gut kennen. In jedem Fall ist es immer gut, einige zusätzliche Technologien zu kennen. Ich bin ein nativer Programmierer und kenne sogar HTML / CSS genug, um eine anständige Website zu erstellen. Davon abgesehen habe ich es nur gelernt, damit ich AJAX lernen kann, um einige Chrome / Firefox-Addons zu schreiben.
quelle