** ・ Langage haut de gamme ** Les langages de haut niveau sont des langages de programmation conçus pour être plus faciles à comprendre pour les humains que les machines. De plus, "haut de gamme" ne signifie pas un excellent langage, mais signifie qu'il est possible de décrire des éléments uniques au modèle et au système d'exploitation avec un haut degré d'abstraction, et de nombreux langages utilisés pour développer des logiciels d'application, etc. Est classé comme un langage de grande classe, donc l'expression «de grande classe» est utilisée.
** ・ Langue inférieure ** Les langages que les machines reconnaissent facilement sont appelés langages de bas niveau. "Lower" ne signifie pas qu'il s'agit d'un langage inférieur, mais qu'il est plus proche du matériel Par conséquent, l'expression «bas grade» est utilisée.
Pour afficher le fichier dans le navigateur, la machine le reconnaît après l'avoir développé dans un langage de haut niveau. Vous devez le traduire dans une langue inférieure que vous pouvez, et cette traduction s'appelle ** compilation **.
C'est la tâche de traduire un langage de programmation afin qu'il puisse être compris par la machine opérateur. La compilation est appelée ** compilateur (un langage de programmation convivial) ** C'est fait par le programme. S'il y a un langage que le compilateur ne peut pas reconnaître, vous devez le ** précompiler ** dans un langage qui peut être reconnu à l'avance.
Pré-compilation qui permet au compilateur de traduire des langues qu'il ne peut pas traduire. Alternativement, il se réfère au prétraitement requis pour le traitement principal. En d'autres termes, la précompilation est la compilation qui doit être effectuée avant la compilation ou le traitement principal.
Par exemple, une application Web précompile un fichier écrit dans une langue supérieure, puis le transmet au navigateur afin que le navigateur Web puisse effectuer le processus principal de lecture et d'affichage du fichier statique.
Il existe un mécanisme appelé ** Asset Pipeline ** comme méthode pour effectuer une telle précompilation.
C'est une fonction qui organise les fichiers statiques appelés actifs tels que JavaScript et CSS en petits morceaux. Étant donné que la fonction de précompilation des langages de haut niveau peut être ajoutée au pipeline d'actifs, il sera possible de l'appliquer au développement à l'aide de SCSS, TypeScript, etc.
Le traitement du pipeline d'actifs est effectué dans le flux de ** «(1) précompilation», «(2) concaténation», «(3) compression» et «(4) 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.
Jusqu'à présent, Rails utilisait le pipeline d'actifs de Gem appelé ** Sprockets ** par défaut pour précompiler CSS, JavaScript, etc.
Cependant, ces dernières années, il est devenu courant de développer avec des fonctions de bibliothèque JavaScript, donc à partir de la version 6, la pré-compilation à l'aide de ** module bundler ** est devenue la norme.
Module Bundler est un outil permettant de gérer les modules JavaScript tout en tenant compte de leurs dépendances.
Un module est un groupe de processus qui divise les fonctions une par une afin qu'elles puissent être lues à partir d'autres fichiers. En JavaScript, si vous divisez plusieurs fonctions en fichiers, des problèmes se produiront lors de leur combinaison en un seul fichier, donc dans l'environnement Node.js, les fonctions sont gérées dans des unités appelées modules.
Un module vous permet de diviser un grand nombre de fonctions en plusieurs fichiers, et même si vous combinez les fonctions divisées en un seul fichier, cela fonctionnera sans problème. Cependant, il existe un problème en ce qu'il ne peut pas fonctionner correctement s'il existe un module qui ne peut pas être chargé en raison de la dépendance créée car il est divisé en plusieurs parties.
Le regroupeur de modules qui gère tous les modules d'un lot résout ce problème. Ces dernières années, ** webpack ** est devenu le courant dominant parmi les bundleurs de modules.
webpack webpack est un outil de gestion de divers JavaScripts requis lors de la création d'une application Web. Webpack fait quatre choses principales.
Éléments basiques | rôle |
---|---|
Entry | Décidez quel fichier utiliser comme référence (point d'entrée) pour résoudre la dépendance |
Output | Spécifiez où et quel nom pour sortir le fichier qui est utilisé comme point d'entrée et compilé par webpack. |
Loaders | 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 effectuer autres que le regroupement de fichiers, comme la compression. |
En d'autres termes, en utilisant webpack, il est possible de convertir et de compresser la bibliothèque JavaScript et divers langages autres que JavaScript, puis de les placer où vous le souhaitez.
Il est possible d'opérer des commandes en introduisant webpack dans Rails, mais comme il est un peu difficile de décrire le fichier de paramétrage, il existe un joyau appelé ** Webpacker ** qui simplifie le paramétrage.
Webpacker C'est une gemme qui fait de Webpack une spécification Rails et prépare un fichier de configuration dédié et une méthode d'assistance. À partir de la version 6 de Rails, Webpacker est installé par défaut. Webpacker met à disposition des packages JavaScript en plus de la précompilation de fichiers statiques similaires au pipeline d'actifs Sprockets.
Recommended Posts