Heim >Web-Frontend >js-Tutorial >Grundlegendes Erlernen des Knotens: Was Sie über das Frontend wissen müssen [Zusammenfassung]
In diesem Artikel werden die grundlegenden Wissenspunkte von Node erläutert und einige Nodejs-Kenntnisse, die das Front-End kennen muss, zusammengefasst und weitergegeben. Ich hoffe, dass es für alle hilfreich ist!
Ob es sich um Front-End-Entwicklung oder Back-End-Entwicklung handelt, ich persönlich bin der Meinung, dass man sich nur verbessern kann, wenn man aus seiner Komfortzone ausbricht. Wir müssen auch wissen, dass Lernen ohne Nachdenken zu Verwirrung führt. Daher ist es notwendig, das serverseitige Wissen zu verstehen, das am engsten mit dem Front-End zusammenhängt, und das Aufkommen von NodeJS kann als Front-End-Entwicklung bezeichnet werden eine schnellere Möglichkeit, das Backend zu verstehen. Im Folgenden sind einige meiner Erfahrungen beim Erlernen von NodeJS aus der Front-End-Perspektive aufgeführt.
Um NodeJS schnell zu verstehen, können Sie sich die folgenden Aspekte ansehen: Node-Modulkonzept (ECMAScript2015 unterstützt das Frontend und ist leicht zu verstehen), V8-Engine (wie der Browser), asynchroner Betrieb (basierend auf v8 und Browser-Verarbeitung ist etwas anders), ereignisgesteuert (basierend auf v8 und Browser ist etwas anders), knotenbasierte API. [Verwandte Tutorial-Empfehlungen: nodejs-Video-Tutorial, Programmierlehre]
module
nodejs-Module können grob in drei Typen unterteilt werden: Kernmodule, Module von Drittanbietern, benutzerdefinierte Module. Jedes Modul hat eine andere Ladepriorität.
exports
oder module.exports
zugegriffen werden Schnittstellerequire
exports
或者 module.exports
对外暴露接口require
加载另外的模块我们在nodejs中常用require exports module.exports都是基于Commonjs来的。
异步操作
异步操作对于前端开发很易了解,我们在JavaScript中到处都充斥的异步操作,回调函数,promise,setTimeout这些都是异步相关的操作,最基础的DOM渲染也是异步的,nodejs和JavaScript关联最深的也是这块,但大家请注意这两个处理方式有一些的不同,不同点此处不在多说后续会更新。以下简述下node的异步特点:
网上找到的一张事件循环的图:
V8引擎
API
,如读写文件、网络请求、系统信息等。另一方面,因为CPU
执行的是机器码,它还负责将JavaScript
代码解释成机器指令序列执行,这部分工作是由V8引擎
Knoten und JavaScript weisen Unterschiede in der asynchronen Verarbeitung auf. Ein online gefundenes Ereignis Schleifenbild:
🎜V8 Engine🎜🎜🎜🎜🎜V8 ist der Name der JavaScript-Engine, die Google Chrome steuert. Dabei handelt es sich um etwas, das unser JavaScript übernimmt und es beim Surfen mit Chrome ausführt. 🎜🎜In Nodejs wird v8 verwendet. Es bietet eine Vielzahl aufrufbarer
API
, wie z. B. das Lesen und Schreiben von Dateien, Netzwerkanfragen, Systeminformationen usw. Da die CPU
andererseits Maschinencode ausführt, ist sie auch für die Interpretation des JavaScript
-Codes in eine Folge von Maschinenanweisungen zur Ausführung verantwortlich die V8-EngineComplete🎜🎜🎜🎜Der Kern von nodejs ist V8, mit dem JavaScript in eine Sprache kompiliert wird, die von der Maschine erkannt werden kann🎜🎜🎜🎜Ereignisgesteuert🎜🎜🎜🎜Ereignis -gesteuert ist eigentlich ein häufig verwendetes Architekturmuster in der Softwarearchitektur. Einfach ausgedrückt besteht es darin, ein Ereignis zu erstellen (zu registrieren), dieses Ereignis abzuhören und es entsprechend dem Status des Ereignisses zu verarbeiten. Die meisten Kern-APIs in NodeJS basieren auf der idiomatischen asynchronen ereignisgesteuerten Architektur. Darüber hinaus können die Kernmodulereignisse in Node zum Erstellen benutzerdefinierter Ereignisse verwendet werden. 🎜<p><strong><span style="max-width:90%">Häufig verwendete API</span></strong></p>
<ul>
<li>fs: Wird häufig zum Anzeigen, Bearbeiten, Erstellen und für andere Vorgänge von Dateien verwendet. </li>
<li>http: Schlüsselmodul des Netzwerks. </li>
<li>Socket: Socket-Netzwerkkommunikation. </li>
<li>events: Ereignismodul </li>Anwendungsszenarien </ul>
<h2>
<strong></strong>Backend-Dienst</h2>
<ul>Skriptverarbeitung<li>
<li>
</ul>Server<p><strong><span style="font-size: 18px;"></span>In den ersten Jahren, als NodeJS auf den Markt kam, waren die meisten Entwickler nicht optimistisch, ob NodeJS in einer Produktionsumgebung angewendet werden sollte. Nach der Praxis in den letzten Jahren wurde die Single-Thread-Anwendung von nodejs bei der Handhabung von Szenarien mit hoher Parallelität jedoch gut getestet. Derzeit gibt es in Online-Produkten viele NodeJS-basierte Dienste. Darüber hinaus verfügt NodeJS auch über viele stabile serverseitige Frameworks, die Java Spring ähneln. Hier sind einige häufig verwendete: </strong></p>
<p>Koa: ein Entwicklungsmodell basierend auf dem Zwiebelmodell. </p>
<ul>Express: ein serverseitiges NodeJS-Framework mit Routing der Kern <li>Fastify: eine Belegung Ein Framework mit extrem kleinen Ressourcen und extrem hoher Geschwindigkeit. Derzeit ist es das schnellste Framework. <li>
<li>Hinweis: Es gibt viele Frameworks für verschiedene Geschäftstypen. Wenn Sie interessiert sind, können Sie sich darüber informieren ? Warum kann ein Front-End-Dienst mit nur einer Befehlszeile ausgeführt werden? Warum kann eine Befehlszeile das Frontend kompilieren? Warum hat unser Vue-Code letztendlich eine Menge JS ausgegeben? Wenn wir den Quellcode dieser Funktionen untersuchen, werden wir feststellen, dass fast alle dieser Funktionen auf Basis von NodeJS entwickelt wurden. Im Folgenden ist unsere Verwendung von NodeJS in täglichen Tools aufgeführt. </li>
</ul>
<p>Lokaler Dienst: Die von Webpack aktivierten lokalen Dienst-Plug-Ins werden alle basierend auf dem http-Modul von nodejs implementiert. </p>
<p>Kompilierung und Verpackung: Die .vue-Datei von vue, die jsx-Datei von React oder häufig verwendete .ts-Dateien werden schließlich zu js-Dateien. Jeder denkt, es sei ein Webpack. Tatsächlich basiert das gesamte Webpack auf NodeJS. Die Fähigkeit, Dateien zu kompilieren, hängt eng mit dem FS-Modul von NodeJS zusammen. <strong><span style="font-size: 18px;"></span></strong>Zusammenfassung</p>
<p></p>Ich habe kurz über die Grundlagen von NodeJS aus der Front-End-Perspektive gesprochen. Jeder Punkt kann separat besprochen werden. Dies dient nur dazu, jedem ein allgemeines Verständnis von Node zu vermitteln, um das spätere Lernen zu erleichtern. Derzeit habe ich viele Projekte mit nodejs abgeschlossen. Nachdem ich es häufiger verwendet habe, kann ich einige technische Front-End-Entwicklungen aus einer breiteren Perspektive betrachten. <ul>
<li>Weitere Informationen zu Knoten finden Sie unter: </li>nodejs-Tutorial<li>! </li>
</ul>
Das obige ist der detaillierte Inhalt vonGrundlegendes Erlernen des Knotens: Was Sie über das Frontend wissen müssen [Zusammenfassung]. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!