Soudain, j'ai décidé d'essayer WebAssembly et l'ai essayé.
WebAssembly exécute le code à grande vitesse dans un navigateur. Le langage qui fonctionne sur la face avant du Web était le javascript. Puisque javascript est un langage typé dynamiquement et est de type interpréteur, il est intuitif et facile à décrire, mais il est lent car il est exécuté lors de l'inférence de type. C'est là qu'intervient WebAssembly, qui compile un langage typé statiquement en code intermédiaire, puis le convertit au format binaire. Je comprends que c'est une technologie qui permet une vitesse d'exécution plus rapide en réduisant la taille du fichier et en raccourcissant le traitement de l'analyse syntaxique en utilisant ce format binaire. (Comprendre après avoir étudié pendant environ 30 minutes)
Je ne l'ai pas encore lu, mais cela semble être bon pour approfondir la compréhension de l'article WebAssembly ci-dessous. https://qiita.com/ShuntaShirai/items/3ac92412720789576f22
Le système d'exploitation d'exécution était Ubuntu 18.04.4. Ubuntu 16.04 semble être le meilleur. J'ai essayé de le déplacer selon le site suivant. https://webassembly.org/getting-started/developers-guide/
Tout d'abord,
git clone https://github.com/emscripten-core/emsdk.git
cd emsdk
./emsdk install latest
./emsdk activate latest
C'est une procédure pour installer emsdk, cloner depuis Github et installer. plus tard
source ./emsdk_env.sh --build=Release
Prêt à exécuter la commande via le chemin.
À partir de là, l'essentiel est de créer une API Web en langage C.
Créez un nouveau répertoire hello
et créez hello.c
avec le contenu suivant directement en dessous.
#include <stdio.h>
int main(int argc, char ** argv) {
printf("Hello, world!\n");
}
Si hello.c
est créé,
emcc hello.c -o hello.html
Et compilez hello.c
.
Après compilation, le répertoire
ll
total 256
drwxr-xr-x 2 kerneltyu kerneltyu 4096 10 mai 02:37 ./
drwxr-xr-x 3 kerneltyu kerneltyu 4096 10 mai 02:35 ../
-rw-r--r--1 kerneltyu kerneltyu 84 10 mai 02:37 hello.c
-rw-r--r--1 kerneltyu kerneltyu 102675 10 mai 02:37 hello.html
-rw-r--r--1 kerneltyu kerneltyu 115460 10 mai 02:37 hello.js
-rw-r--r--1 kerneltyu kerneltyu 21716 10 mai 02:37 hello.wasm
Vous pouvez créer un fichier comme celui-ci. Il existe un fichier javascript, html et wasm au format binaire.
emrun --no_browser --port 8080 .
Lorsque vous démarrez avec et accédez à localhost: 8080
Un écran comme celui-ci sera affiché. C'est tout pour l'introduction à WebAssembly!
Il y a quelque chose que je n'ai pas compris, alors je vais le garder comme un enregistrement.
Il était bon de se rendre compte que l'ère du développement d'applications Web en langage C approche. Je pense que le contexte est que les applications Web s'enrichissent et que la demande d'exécution à la périphérie augmente. J'ai personnellement voulu approfondir l'utilisation à la périphérie. Soudain, j'ai commencé à écrire, mais je suis devenu encore plus intéressé. Étudions un peu plus.
L'avenir sans serveur créé par WebAssembly et Rust WebAssembly
Recommended Posts