So bringen Sie sich den gesamten Web-Stack bei

little bottle
Freigeben: 2020-09-16 09:22:49
Original
5419 Leute haben es durchsucht

So studieren Sie den gesamten Web-Stack: Zuerst müssen wir die dreischichtige Architektur des Webentwicklungsprozesses verstehen, nämlich die Präsentationsschicht, die Geschäftslogikschicht und die Datenbankschicht um Service-Management, Cloud-Host-Plattform und Webserver, Datenbank, Protokollsystem und andere Kenntnisse zu beherrschen.

So bringen Sie sich den gesamten Web-Stack bei

Die Internetbranche war schon immer heiß und ich glaube, dass sie auch in Zukunft heiß bleiben wird. Daher planen viele Freunde, im Internet zu lernen. Einige entscheiden sich für eine Ausbildung, andere für ein Selbststudium. Aber viele Freunde sind vielleicht verwirrt, wenn es darum geht, Internet-Technologie zu lernen. Vor ein paar Tagen fragte mich ein Freund, wie ich den gesamten Web-Stack selbst erlernen könne. Als nächstes werde ich mit Ihnen darüber sprechen, wie Sie sich den gesamten Web-Stack aneignen können.

(Empfohlenes Tutorial: HTML-Tutorial)

Zunächst müssen Sie verstehen, was der Web-Full-Stack ist und welche Kenntnisse Sie benötigen, um das Web kennenzulernen voller Stapel.

Zweitens müssen Sie wissen, dass das selbstständige Erlernen des gesamten Web-Stacks keine einfache Angelegenheit ist. Sie müssen genug Ausdauer haben, um durchzuhalten, und es erfordert auch die Fähigkeit, effizient zu lernen es in kürzester Zeit gut zu lernen.

Ein Webentwicklungsprozess hat eine dreistufige Architektur:

Präsentationsschicht: Die Präsentationsschicht wird auch als Front-End-Teil der Website bezeichnet. Es kümmert sich um die Benutzeroberflächenprobleme der Website.

Geschäftslogikschicht: Die Geschäftslogikschicht wird auch als Back-End-Schicht der Website bezeichnet und ist für die Datenvalidierung und dynamische Verarbeitung verantwortlich.

Datenbankschicht: Schließlich gibt es noch die Datenzugriffsschicht, die APIs verwendet, um Daten für die Website bereitzustellen.

Die oben genannten drei Ebenen werden zusammenfassend als Full-Stack-Webentwicklung bezeichnet.

Als Full-Stack-Webentwickler müssen Sie über die folgenden Kenntnisse verfügen:

1. Dienstverwaltung/-betrieb und -wartung

Ein Entwickler muss grundlegende Kenntnisse in der Serververwaltung haben . Einschließlich, aber nicht beschränkt auf die folgenden Kenntnisse:

Fernverbindung zum Server über ein Terminal oder eine andere Umgebung ohne Benutzeroberfläche herstellen

In der Lage sein, grundlegende Shell-Skripte zu schreiben

Benutzer und Gruppen auf dem Server Gruppenverwaltung

Serverprogramme wie Apache und Nginx verwalten, um Anwendungen bereitzustellen

Firewall-Verwaltung und Berechtigungsverwaltung

Software installieren und aktualisieren

Zusätzlich zu diesen Grundkenntnissen müssen Entwickler wissen, wie sie eine gute, gesunde, separate Entwicklungsumgebung in Docker oder eine virtuelle Maschinenumgebung wie Vagrant erstellen. Wenn Sie nicht mit allen oben genannten Techniken vertraut sind, muss ich Ihnen ein großartiges Buch empfehlen. Klicken Sie hier, um es zu kaufen.

Entwickler müssen sich mit Versionskontrollsystemen sehr gut auskennen, um zuverlässige Produktionssicherungen sowie gemeinsam nutzbare und kollaborative Codebasen zu entwickeln, die Codeänderungen im Laufe der Zeit verfolgen können. Heutzutage ist kein Entwickler-Workflow völlig unabhängig von der Versionskontrolle. Wir haben ein tolles Video-Tutorial zur Versionskontrolle, das Sie hier kaufen können.

2. Cloud

Im Gegensatz zu tatsächlichen Verwaltungs- oder virtuellen Servern muss ein Entwickler möglicherweise über Cloud-Hosting-Plattformen wie Heroku, Google Cloud, Azure, AWS usw. Bescheid wissen.

Man muss sagen, dass es bei Plattformen und Tools mehr um Hype als um ihre Praktikabilität geht. Obwohl es viele Plattformen und Tools gibt, die nicht so gut funktionieren wie beworben, wird es auf lange Sicht nützlich sein, die Dienste zu verstehen, über die alle reden – Kunden können jederzeit darum bitten, den Anbieter zu wechseln. Glücklicherweise haben wir diese umfassenden Leitfäden für die Bereitstellung von Cloud-Hosting.

3. Backend

Im Backend muss ein Full-Stack-Entwickler nicht nur wissen, welche Sprache er wählen soll, wie z. B. PHP und zahlreiche Frameworks und CMS, sondern auch mit Folgendem vertraut sein:

Webserver wie Nginx und Apache sind eng mit Betrieb und Wartung verbunden

Leider kann NodeJS bereits JS-, CSS- und andere Ressourcendateien in statische Dateien kompilieren, die problemlos zwischengespeichert werden können. Glücklicherweise gibt es Möglichkeiten, das Erlernen von NodeJS zu vermeiden, und es ist auch möglich, PHP

PHP (http://www.ujiuye.com/zt/php/) zu verwenden, in dem Paketverwaltungstools wie Composer verwendet werden können eine moderne Entwicklungsumgebung

Gutes API-Design ist unverzichtbar, da die meisten neuen Webseiten auf API basieren und nur das Frontend bedienen (unten ausführlich beschrieben)

ElasticSearch (Einführung hier) Die Engine ist sehr wichtig für die Verbesserung der Leistung der Website

Cronjobs und Back-End-Arbeit, verwenden Sie Bibliotheken wie Gearman oder Crunz

Erfahren Sie mehr über Caching, Varnish, Redis und andere tolle Tools, die geshardt werden können Speichern Sie Daten, damit ein Projekt auf mehreren Hosts bereitgestellt werden kann

4. Datenbank

Die Datenbank ist ein separater Teil, da wir außer einem guten Verständnis grundsätzlich keine strukturellen Änderungen vornehmen müssen Um das Datenschema einer relationalen Datenbank (MySQL oder PostgreSQL) zu beherrschen, sollte ein Full-Stack-Ingenieur über Kenntnisse in nicht-relationalen Datenbanken wie MongoDB, Redis oder Cassandra verfügen, ganz zu schweigen von Graphdatenbanken wie Neo4j.

Leider sind das alles Dinge auf dem Server und unterliegen der Kontrolle des Full-Stack-Ingenieurs. Es gibt auch mehrere Mong-ähnliche Remote-Lösungen wie RestDB oder Firebase von Google.

5. Front-End

Wenn Sie wissen möchten, wie ein normaler Front-End-Wissensgraph aussieht, können Sie diesen hervorragenden Artikel im JavaScript-Bereich lesen. Aber als Full-Stack-Ingenieur müssen Sie

NodeJS und NPM

Yarn

verstehen

Präprozessoren und Compiler (wie Babel), die zum Kompilieren von Typescript, ES6, LESS, SCSS, SaSS verwendet werden

Build-Tools wie Grunt und Gulp

Frameworks wie VueJS, React, Angular

Modulpaketierungstools wie Webpack, Browserify, Rollup

6. Design

In Bezug auf das Design müssen Full-Stack-Entwickler verstehen, wie man transformiert Zeichnen Sie vor dem eigentlich verwendbaren HTML- und CSS-Code ein Prototypdiagramm. Dann können Sie JS verwenden, um Interaktionen zu schreiben, und das Backend kann auch gefälschte Daten verwenden, um die Produktionsumgebung zu simulieren. Erst wenn diese wichtige Prototypenzeichnung abgeschlossen ist und das User Experience Design und Interface Design fertig sind, kann die eigentliche Entwicklung beginnen. Dies ist an sich schon eine schwierige Aufgabe und erfordert spezielle Tools:

Photoshop und Illustrator oder einige Open-Source-Tools wie Gimp/Inkscape. Besuchen Sie den Design-Kanal, um mehr über solche Tools zu erfahren.

Ein cooler, schneller Editor wie Atom oder Sublime Text (hier sind zehn nützliche Sublime-Plug-Ins)

Hintergrundauswahl und Farbauswahl wie Subtlepatterns können mit einigen Farben kombiniert werden

CSS-Grid-System

Das gesamte Wissen, das das Front-End wissen muss, und die oben erwähnte JS-Datensimulation

Veröffentlichen Sie den Prototyp online, damit jeder ihn durchsuchen und geben kann Für Feedback ist Ngrok da sehr einfach zu verwenden

7. Protokollsystem

Um den Zustand der Anwendung effektiv zu überwachen, müssen Full-Stack-Entwickler in der Lage sein, Fehler zu verfolgen, Fehlerprotokolle zu finden und nützliche Informationen daraus zu extrahieren ihnen Informationen. Full-Stack-Entwickler müssen außerdem einige Trends anhand von Protokollen vorhersagen, z. B. einen Anstieg der CPU- oder I/O-Nutzung, falls die Anwendung hängen bleibt, ohne zu wissen, wann. Dieser Teil bezieht sich auch auf Betrieb und Wartung, erfordert jedoch einige besondere Fähigkeiten:

Empfehlen Sie einen hervorragenden ELK-Stack-Artikel, der Ihnen hilft, die zum Aufbau eines Protokollierungssystems erforderlichen Kenntnisse zu verstehen. Es umfasst ElasticSearch zum Suchen von Protokollen, Logstash zum Sammeln von Protokollen, Kibana zum Anzeigen von Protokollen mit tollen Diagrammen und sogar Logz.io zum Bereitstellen von Lösungen.

8. Mobiles Terminal

Endlich ist es Zeit für uns, über das mobile Terminal zu sprechen. Da Webansichten auf iOS und Android immer effizienter werden und mit dem Aufkommen von PWAs (Progressive Web Apps) native Apps veraltet sind, weil ihre Entwicklung einfach zu komplex ist. Daher muss ein Full-Stack-Ingenieur PWA oder React Native bzw. NativeScript, Tabris, Cordova, Phonegap oder andere Webansichten verstehen, damit Clientanwendungen APIs aufrufen und ausführen können.

Das obige ist der detaillierte Inhalt vonSo bringen Sie sich den gesamten Web-Stack bei. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Verwandte Etiketten:
Quelle:php.cn
Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn
Neueste Artikel des Autors
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage