[JAVA] Pré-traitement à afficher sur le navigateur (compilateur)

Nous avons résumé le mécanisme jusqu'à ce que plusieurs fichiers statiques soient appliqués au navigateur. Grosso modo Le navigateur a une langue fixe qui peut être reconnue, et toute langue doit être traduite dans une langue qui peut être reconnue. Ce travail de traduction est appelé compilation, et s'il ne peut pas être compilé, il doit être traité au préalable. Ce prétraitement s'appelle la pré-compilation, et c'est un flux dans lequel chaque petite fonction est transformée en un groupe de traitement appelé module, compilé et renvoyé au navigateur.

supposition
Programmation débutant(Deux mois)Ceci est un résumé de ce que j'ai appris.
Il peut ne pas être valide dans le champ réel ou il peut y avoir des informations incorrectes.
Si vous l'avez remarqué, faites-le nous savoir dans les commentaires.

La langue que le navigateur peut reconnaître est décidée

Le navigateur ne peut reconnaître que les langages HTML, CSS, JavaScript et WebAssembly. Peu importe ce que vous écrivez côté serveur, ces quatre sont enfin renvoyés dans le navigateur. Les navigateurs ne peuvent pas afficher les pages dans d'autres langues.

Un langage qui facilite le développement

Le navigateur ne reconnaît que les quatre ci-dessus, mais il existe des langages de programmation conçus pour être plus faciles à écrire et à lire en développement. Ce langage de programmation est appelé ** langage avancé **.

Langue supérieure

Un langage de programmation conçu pour être plus facile à comprendre pour les humains que les machines Les langues faciles à reconnaître par les machines sont appelées ** langues inférieures **. Exemples de langages de haut niveau CSS:SCSS、SASS JavaScript:TypeScript、CoffeeScript

Mécanisme de conversion vers une langue que le navigateur peut reconnaître

Le processus de traduction d'un langage pratique pour le développement afin que le navigateur puisse le reconnaître s'appelle la compilation.

compiler La tâche de traduire un langage de programmation afin qu'il puisse être compris par une machine exécutant La compilation est effectuée par un programme appelé compilateur. S'il existe un langage que le compilateur ne peut pas reconnaître, vous devez le précompiler à l'avance.

** Précompilé ** Pré-compilation qui permet au compilateur de traduire des langues qu'il ne peut pas traduire Prétraitement effectué pour le traitement principal En tant que méthode pour effectuer cette précompilation, il existe un mécanisme appelé pipeline d'actifs.

** Pipeline d'actifs ** Une fonction qui organise les fichiers statiques appelés actifs tels que JavaScript et CSS en petits morceaux Le traitement du pipeline d'actifs est effectué dans le flux de précompilation → concaténation → compression → placement. Après avoir précompilé et concaténé plusieurs fichiers statiques, compressez et réduisez le poids et placez-le dans le répertoire public afin qu'il puisse être transmis au navigateur. La précompilation est effectuée à l'aide du module bundler.

** Module bundler ** Module bundler est un outil qui gère les modules JavaScript tout en tenant compte de leurs dépendances. Un module est un ensemble de processus qui divise les fonctions une par une afin qu'elles puissent être lues à partir d'autres fichiers. Les modules gèrent un groupe de fonctions, et lorsque chaque fonction a une dépendance, le bundler de modules les gère tout en les considérant. Le module Pandora est utilisé car si les fonctions sont divisées en fichiers sans être gérées par des modules, des problèmes surviendront lors de leur combinaison finale en un seul fichier.

webpack Outil Mainstream dans le module bundler Webpack fait quatre choses principales ・ Entrée Décidez quel fichier utiliser comme référence (point d'entrée) pour résoudre la dépendance. · Production Spécifiez où et quel nom sortir le fichier qui est utilisé comme point d'entrée et collecté par webpack. ・ Chargeurs Lisez (chargez) la méthode de conversion de fichiers tels que CSS et HTML autres que JavaScript en modules et effectuez le traitement spécifié. ・ Plugins Introduisez et étendez (branchez) les tâches que le chargeur ne peut pas exécuter autres que le regroupement de fichiers tels que la compression.

Recommended Posts

Pré-traitement à afficher sur le navigateur (compilateur)
[Ruby on Rails] Afficher rapidement le titre de la page dans le navigateur
Vérifiez la racine sur le navigateur Rails
Comment afficher 0 sur le côté gauche de la valeur d'entrée standard
J'ai essayé d'afficher le calendrier sur la console Eclipse en utilisant Java.
Afficher le texte en haut de l'image
[Swing] Comment afficher un nom arbitraire dans la barre de menu sur Mac
[Swift 5] Traitement pour fermer le clavier sur UITableView
Migration d'Eclipse vers IntelliJ (en cours)
Afficher l'applet Moniteur système dans la barre des tâches Ubuntu 20.04
Connexion SSH au serveur d'applications avec heroku
[Ruby] Code pour afficher le jour
Double-cliquez pour ouvrir le fichier jar sous Windows
Afficher "Hello World" dans le navigateur à l'aide de Java
Comment afficher le résultat du remplissage du formulaire
[Ubuntu 20.04] Afficher le jour à la date / horloge
Comment régler l'heure d'affichage sur l'heure japonaise dans les rails
[Ruby on Rails] Comment changer le nom de la colonne
[Android] Afficher les images et les caractères dans l'onglet ViewPager
Je souhaite afficher le nom de l'affiche du commentaire
Afficher la liste en setDétails à l'écran avec ressort-sécurité
Comment afficher un aperçu du navigateur avec VS Code
Comment déterminer la demande de prélecture depuis le navigateur
Déployer le projet Spring Boot sur Tomcat dans XAMPP
Installez MySQL 5.6 sur CentOS6 [Comment spécifier la version]
Je souhaite simplifier la sortie du journal sur Android
[Rails] Comment afficher les images dans la vue
Implémentation d'une API forte pour "Je veux afficher ~~ à l'écran" avec un simple CQRS
Comment afficher le champ de sélection de time_select toutes les 30 minutes
La clé pour exécuter Docker sur Raspberry Pi 4 (serveur Ubuntu 20.04)
J'étais accro à la mise à jour de la déclaration dans MyBatis
Application Android qui sélectionne et affiche des images de la galerie
(Ruby on Rails6) Affichage de la base de données qui a obtenu l'identifiant de la base de données
Comment désactiver Set-Cookie de l'API sur la face avant
Comment afficher des graphiques dans Ruby on Rails (LazyHighChart)
Afficher un écran d'erreur pendant le processus de téléchargement pour répondre
Comment installer JDK 8 sur Windows sans utiliser le programme d'installation
[Rails] Comment afficher une liste de messages par catégorie
Comment changer Java à l'ère d'OpenJDK sur Mac
Comment exécuter React et Rails sur le même serveur
[Rails] Comment afficher les informations stockées dans la base de données dans la vue
[Android] Essayez celui qui affiche l'effet sur la partie touchée de l'écran qui est courant dans les jeux