


Apprentissage de base du nœud : ce qu'il faut savoir sur le front-end [Résumé]
Cet article parlera des points de connaissances de base de Node, résumera et partagera certaines connaissances de Nodejs que le front-end doit connaître. J'espère qu'il sera utile à tout le monde !
Qu'il s'agisse de développement front-end ou back-end, je crois personnellement que vous ne devriez pas vous limiter à votre propre domaine. Ce n'est qu'en sortant de votre zone de confort que vous pourrez vous améliorer, même si cela peut devenir parfait. nous devons également savoir qu'apprendre sans réfléchir mènera à la confusion, il est donc nécessaire de comprendre les connaissances côté serveur qui sont les plus étroitement liées au front-end, et l'émergence de nodejs peut être considérée comme donnant le développement front-end. un moyen plus rapide de comprendre le backend. Voici quelques-unes de mes expériences dans l'apprentissage de nodejs du point de vue front-end.
Fonctionnalités de base
Pour comprendre rapidement nodejs, vous pouvez examiner les aspects suivants : le concept de module du nœud (ECMAScript2015 a pris en charge le front-end et est facile à comprendre), le moteur V8 (identique au navigateur), le fonctionnement asynchrone (basé sur la v8 et le traitement du navigateur est légèrement différent), piloté par les événements (basé sur la v8 et le navigateur est légèrement différent), API basée sur les nœuds. [Recommandations de didacticiels connexes : tutoriel vidéo Nodejs, Enseignement de la programmation]
module
Les modules Nodejs peuvent être grossièrement divisés en trois types : modules de base modules tiers modules personnalisés. Chaque module a une priorité de chargement différente.
- Module principal : module intégré de nodejs, qui peut être compris comme l'API de base de nodejs, comme notre chemin couramment utilisé os fs, etc. Ces modules servent également de base à nos nodejs pour interagir avec le serveur.
- Module tiers : package npm installé par la plateforme d'outils de gestion de packages nodejs.
- Module personnalisé : cela fait généralement référence à notre propre module de fichiers défini.
Chargement et compilation du module
- Chemin d'analyse du fichier : Vérifiez s'il existe un cache=》Vérifiez s'il s'agit d'un module principal=》Vérifiez l'extension=》Analyser et exécuter (selon différents noms de suffixe)
//检查fs内存中的缓存是否存在如果不存在则加载fs模块 let fs = require("fs") //检查fs内存中的缓存(无)=》检查是否核心模块=》检查扩展名 let demo = require("./demo")
- Principe de priorité du cache : D'après le chemin d'analyse des fichiers, nous pouvons voir que nodejs va d'abord vérifier si le cache dans la mémoire existe, et s'il existe, charger le cache.
- Compilation de modules : cet article n'expliquera pas ce processus. Le chapitre suivant expliquera ce processus en détail.
Standards
Le concept de développement de modules JavaScript est essentiellement le suivant : introduction "script" => Fonction Scope => Fonction auto-exécutable => Commonjs (AMD). Les modules de nodejs adoptent principalement les spécifications commonjs, comme indiqué ci-dessous.
- Chaque fichier est un module et a sa propre portée.
- Les variables, fonctions et classes définies dans chaque fichier sont privées et invisibles pour les autres fichiers
- Chaque module est accessible via
exports
oumodule.exports
Exposé en externe. interfaceexports
或者module.exports
对外暴露接口 - 每个模块通过
require
加载另外的模块
我们在nodejs中常用require exports module.exports都是基于Commonjs来的。
异步操作
异步操作对于前端开发很易了解,我们在JavaScript中到处都充斥的异步操作,回调函数,promise,setTimeout这些都是异步相关的操作,最基础的DOM渲染也是异步的,nodejs和JavaScript关联最深的也是这块,但大家请注意这两个处理方式有一些的不同,不同点此处不在多说后续会更新。以下简述下node的异步特点:
- 异步是通过Event Loop实现,其中有宏任务和微任务的概念
- node和JavaScript在异步的处理上有所区别
网上找到的一张事件循环的图:
V8引擎
- V8 是驱动 Google Chrome 的 JavaScript 引擎的名称。 这是在使用 Chrome 浏览时获取我们的 JavaScript 并执行它的东西。
- 在Nodejs,v8是用来它提供了多种可调用的
API
,如读写文件、网络请求、系统信息等。另一方面,因为CPU
执行的是机器码,它还负责将JavaScript
代码解释成机器指令序列执行,这部分工作是由V8引擎
Chaque module charge un autre module via
require
Nous utilisons couramment les exportations require dans nodejs Module. Les exportations sont toutes basées sur Commonjs.
Opérations asynchrones
Les opérations asynchrones sont faciles à comprendre pour le développement front-end. Nous regorgeons d'opérations asynchrones, de fonctions de rappel, de promesses et de setTimeout partout dans JavaScript. Ce sont toutes des opérations liées asynchrones, et la plupart. Le rendu DOM de base est également asynchrone, qui est le plus étroitement lié entre nodejs et JavaScript, mais veuillez noter qu'il existe quelques différences entre les deux méthodes de traitement. Je n'entrerai pas dans les détails des différences ici et je les mettrai à jour plus tard. Ce qui suit est une brève description des caractéristiques asynchrones du nœud :
🎜🎜Asynchrone est implémenté via Event Loop, qui inclut les concepts de macro-tâches et de micro-tâches 🎜🎜Le nœud et JavaScript ont des différences dans le traitement asynchrone🎜🎜🎜Un événement trouvé en ligne Image en boucle :![Apprentissage de base du nœud : ce quil faut savoir sur le front-end [Résumé]](https://img.php.cn/upload/article/000/000/024/7f8fec5b88b6b9c57017b8160c37d697-0.png)
API
appelables, telles que la lecture et l'écriture de fichiers, les requêtes réseau, les informations système, etc. D'un autre côté, comme le CPU
exécute le code machine, il est également responsable de l'interprétation du code JavaScript
en une séquence d'instructions machine à exécuter. Cette partie du travail est effectuée par. le moteur V8Complet🎜🎜🎜🎜Le cœur de nodejs est le V8, qui est utilisé pour compiler JavaScript dans un langage reconnaissable par la machine🎜🎜🎜🎜Event-driven🎜🎜🎜🎜Event -driven est en fait un modèle architectural couramment utilisé dans l'architecture logicielle. En termes simples, il s'agit de créer (enregistrer) un événement, d'écouter cet événement et de le traiter en fonction de l'état de l'événement. La plupart des API principales de nodejs sont construites autour de l'architecture idiomatique asynchrone basée sur les événements. De plus, les événements du module principal de node peuvent être utilisés pour créer des événements personnalisés. 🎜<p><strong><span style="max-width:90%">API couramment utilisée</span></strong></p>
<ul>
<li>fs : couramment utilisée pour la visualisation, l'édition, la création et d'autres opérations de fichiers </li>
<li>http : module clé du réseau </li>
<li>socket : socket de communication réseau </li>
<li>events : module d'événements </li>
</ul>
<h2> <strong>Scénarios d'application </strong>
</h2>
<ul>
<li>Service backend </li>
<li>Traitement de script </li>
</ul>
<p><strong><span style="font-size: 18px;">Serveur </span></strong></p>
<p> Au cours des premières années où nodejs est apparu, la plupart des développeurs n'étaient pas optimistes quant à l'opportunité d'appliquer nodejs dans un environnement de production. Cependant, après la pratique de ces dernières années, l'application monothread de nodejs pour gérer des scénarios à haute concurrence a été bien testée. Il existe actuellement de nombreux services basés sur Nodejs dans les produits en ligne. De plus, nodejs dispose également de nombreux frameworks côté serveur stables similaires à Java Spring. En voici quelques-uns couramment utilisés </p>
<ul>
<li>Koa : un modèle de développement basé sur le modèle onion </li>
<li>Express : un framework nodejs côté serveur avec le routage comme. le noyau </li>
<li>Fastify : une occupation Un framework avec des ressources extrêmement réduites et une vitesse extrêmement rapide Actuellement, c'est le framework le plus rapide. </li>
</ul>
<p>Remarque : Il existe de nombreux frameworks pour différents types d'entreprise. Si vous êtes intéressé, vous pouvez en apprendre davantage à leur sujet</p>
<p><strong><span style="font-size: 18px;">Outils</span></strong></p>
<p>Lorsque nous utilisons le bucket familial Vue ou React pour le développement, y avez-vous déjà pensé. ? Pourquoi un service front-end peut-il être exécuté avec une seule ligne de commande ? Pourquoi une ligne de commandes peut-elle compiler le front-end ? Pourquoi notre code Vue a-t-il fini par produire un tas de js ? Lorsque nous étudions le code source de ces fonctions, nous constaterons que presque toutes ces fonctionnalités sont développées sur la base de nodejs. Ce qui suit répertorie notre utilisation de nodejs dans les outils quotidiens. </p>
<ul>
<li>Service local : les plug-ins de service local activés par webpack sont tous implémentés sur la base du module http de nodejs </li>
<li>Compilation et packaging : le fichier .vue de vue, les fichiers jsx de réaction ou les fichiers .ts couramment utilisés deviennent enfin des fichiers js, tout le monde pense que c'est du webpack. En fait, l'ensemble du webpack est basé sur nodejs. La capacité de compiler des fichiers est étroitement liée au module fs de nodejs. </li>
</ul>
<h2 id="strong-Résumé-strong"><strong>Résumé</strong></h2>
<p>J'ai brièvement parlé des bases de nodejs du point de vue du front-end. Chaque point peut être discuté individuellement. Il s'agit simplement de donner à chacun une compréhension générale de node pour faciliter l'apprentissage ultérieur. À l'heure actuelle, j'ai réalisé de nombreux projets en utilisant nodejs. Après l'avoir davantage utilisé, je peux examiner certains développements techniques front-end dans une perspective plus large. </p>
<p>Pour plus de connaissances sur les nœuds, veuillez visiter : <a href="https://www.php.cn/course/list/24.html" target="_blank" textvalue="nodejs 教程">tutoriel Nodejs</a> ! </p>
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Outils d'IA chauds

Undresser.AI Undress
Application basée sur l'IA pour créer des photos de nu réalistes

AI Clothes Remover
Outil d'IA en ligne pour supprimer les vêtements des photos.

Undress AI Tool
Images de déshabillage gratuites

Clothoff.io
Dissolvant de vêtements AI

AI Hentai Generator
Générez AI Hentai gratuitement.

Article chaud

Outils chauds

Bloc-notes++7.3.1
Éditeur de code facile à utiliser et gratuit

SublimeText3 version chinoise
Version chinoise, très simple à utiliser

Envoyer Studio 13.0.1
Puissant environnement de développement intégré PHP

Dreamweaver CS6
Outils de développement Web visuel

SublimeText3 version Mac
Logiciel d'édition de code au niveau de Dieu (SublimeText3)

PHP et Vue : une combinaison parfaite d'outils de développement front-end À l'ère actuelle de développement rapide d'Internet, le développement front-end est devenu de plus en plus important. Alors que les utilisateurs ont des exigences de plus en plus élevées en matière d’expérience des sites Web et des applications, les développeurs front-end doivent utiliser des outils plus efficaces et plus flexibles pour créer des interfaces réactives et interactives. En tant que deux technologies importantes dans le domaine du développement front-end, PHP et Vue.js peuvent être considérés comme une arme parfaite lorsqu'ils sont associés. Cet article explorera la combinaison de PHP et Vue, ainsi que des exemples de code détaillés pour aider les lecteurs à mieux comprendre et appliquer ces deux éléments.

Avec le développement de la technologie Internet, le développement front-end est devenu de plus en plus important. La popularité des appareils mobiles, en particulier, nécessite une technologie de développement frontal efficace, stable, sûre et facile à entretenir. En tant que langage de programmation en développement rapide, le langage Go est utilisé par de plus en plus de développeurs. Alors, est-il possible d’utiliser le langage Go pour le développement front-end ? Ensuite, cet article expliquera en détail comment utiliser le langage Go pour le développement front-end. Voyons d’abord pourquoi le langage Go est utilisé pour le développement front-end. Beaucoup de gens pensent que le langage Go est un

Lors des entretiens de développement front-end, les questions courantes couvrent un large éventail de sujets, notamment les bases HTML/CSS, les bases JavaScript, les frameworks et les bibliothèques, l'expérience du projet, les algorithmes et les structures de données, l'optimisation des performances, les requêtes inter-domaines, l'ingénierie front-end, les modèles de conception et les nouvelles technologies et tendances. Les questions de l'intervieweur sont conçues pour évaluer les compétences techniques du candidat, son expérience en matière de projet et sa compréhension des tendances du secteur. Par conséquent, les candidats doivent être parfaitement préparés dans ces domaines pour démontrer leurs capacités et leur expertise.

Django est un framework d'application Web écrit en Python qui met l'accent sur un développement rapide et des méthodes propres. Bien que Django soit un framework Web, pour répondre à la question de savoir si Django est un front-end ou un back-end, vous devez avoir une compréhension approfondie des concepts de front-end et de back-end. Le front-end fait référence à l'interface avec laquelle les utilisateurs interagissent directement, et le back-end fait référence aux programmes côté serveur. Ils interagissent avec les données via le protocole HTTP. Lorsque le front-end et le back-end sont séparés, les programmes front-end et back-end peuvent être développés indépendamment pour mettre en œuvre respectivement la logique métier et les effets interactifs, ainsi que l'échange de données.

Golang peut être utilisé comme frontal. Golang est un langage de programmation très polyvalent qui peut être utilisé pour développer différents types d'applications, y compris des applications frontales. En utilisant Golang pour écrire le front-end, vous pouvez vous débarrasser d'un front-end. série de problèmes causés par des langages tels que JavaScript. Par exemple, des problèmes tels qu'une mauvaise sécurité des types, de faibles performances et un code difficile à maintenir.

En tant que développeur C#, notre travail de développement comprend généralement le développement front-end et back-end. À mesure que la technologie se développe et que la complexité des projets augmente, le développement collaboratif du front-end et du back-end est devenu de plus en plus important et complexe. Cet article partagera quelques techniques de développement collaboratif front-end et back-end pour aider les développeurs C# à effectuer leur travail de développement plus efficacement. Après avoir déterminé les spécifications de l’interface, le développement collaboratif du front-end et du back-end est indissociable de l’interaction des interfaces API. Pour assurer le bon déroulement du développement collaboratif front-end et back-end, le plus important est de définir de bonnes spécifications d’interface. La spécification de l'interface implique le nom de l'interface

En tant que langage de programmation rapide et efficace, le langage Go est très populaire dans le domaine du développement back-end. Cependant, peu de gens associent le langage Go au développement front-end. En fait, l’utilisation du langage Go pour le développement front-end peut non seulement améliorer l’efficacité, mais également ouvrir de nouveaux horizons aux développeurs. Cet article explorera la possibilité d'utiliser le langage Go pour le développement front-end et fournira des exemples de code spécifiques pour aider les lecteurs à mieux comprendre ce domaine. Dans le développement front-end traditionnel, JavaScript, HTML et CSS sont souvent utilisés pour créer des interfaces utilisateur.

Les méthodes de mise en œuvre de la messagerie instantanée incluent WebSocket, Long Polling, Server-Sent Events, WebRTC, etc. Introduction détaillée : 1. WebSocket, qui peut établir une connexion persistante entre le client et le serveur pour obtenir une communication bidirectionnelle en temps réel. Le frontal peut utiliser l'API WebSocket pour créer une connexion WebSocket et obtenir une messagerie instantanée en envoyant et en recevant. messages 2. Long Polling, une technologie qui simule la communication en temps réel, etc.
