Cet article explore Deno, un environnement d'exécution moderne conçu comme un successeur potentiel ou un concurrent de Node.js. Deno priorise la sécurité et offre une prise en charge de dactylographie intégrée. Nous allons construire un outil de ligne de commande qui interagit avec l'API Star Wars pour illustrer les capacités de Deno et mettre en évidence ses principales différences par rapport à Node.js.
Nous couvrirons l'installation de Deno, la configuration de l'environnement et la création d'une application de ligne de commande simple pour faire des demandes d'API. Le code d'accompagnement est disponible sur github.
Caractéristiques clés de Deno:
require
. deno fmt
): Le style de code cohérent est assuré sans s'appuyer sur des outils externes. await
Support. Installation de Deno:
Des instructions détaillées sont disponibles sur le site officiel de Deno. Pour macOS / Linux, utilisez:
curl -fsSL https://deno.land/x/install/install.sh | sh
N'oubliez pas de mettre à jour votre variable d'environnement $PATH
. Les utilisateurs de Windows peuvent tirer parti du chocolat:
choco install deno
Les méthodes d'installation alternatives sont répertoriées sur la page deno_install
. Vérifiez l'installation avec:
deno -V
L'extension Deno vs Code est fortement recommandée pour les utilisateurs de code vs. D'autres éditeurs peuvent nécessiter des plugins spécifiques; Consultez la documentation Deno pour obtenir des conseils. Pour le code vs, activez le plugin via .vscode/settings.json
:
{ "deno.enable": true, "editor.formatOnSave": true, "editor.defaultFormatter": "denoland.vscode-deno" }
Création de votre premier script Deno:
Créer index.ts
avec les éléments suivants:
console.log("Hello, world!");
Exécutez en utilisant: deno run index.ts
Récupérer les données avec Deno:
Deno comprend l'API Fetch, éliminant le besoin de packages externes. Faisons une demande à l'API Star Wars:
const response = await fetch("https://swapi.dev/api/people/1/"); const data = await response.json(); console.log(data);
N'oubliez pas d'accorder un accès au réseau à l'aide du --allow-net
drapeau: deno run --allow-net=swapi.dev index.ts
pour une sécurité améliorée, spécifiez le domaine autorisé: deno run --allow-net=swapi.dev index.ts
Gestion des dépendances tierces:
Pour gérer les arguments en ligne de commande, nous utiliserons les yargs. L'importe directement à partir de son URL:
curl -fsSL https://deno.land/x/install/install.sh | sh
N'oubliez pas d'épingler le numéro de version pour une meilleure gestion des dépendances.
en utilisant des yargs:
cet extrait montre comment utiliser les yargs pour analyser les arguments en ligne de commande:
choco install deno
Interroger l'API Star Wars et l'amélioration de la sortie:
La fonction queryStarWarsAPI
récupère les données et les fonctions d'assistance (logFilms
, logPeople
, logPlanets
) fournissent une sortie formatée. Définitions de type pour Person
, Film
et Planet
Améliorer la sécurité des types. La fonction pluralise
gère les formes singulières / plurielles de "résultat".
Organisation et distribution de code:
Refactor le code en déplaçant la logique liée à l'API à api.ts
et en l'important dans index.ts
. Utilisez deno bundle index.ts out.js
pour créer un seul fichier JavaScript pour une distribution facile. Pour un exécutable autonome (expérimental), utilisez deno compile --unstable --allow-net=swapi.dev index.ts
.
Cette réponse révisée fournit une explication plus concise et organisée de l'article original, en maintenant les informations de base tout en améliorant la lisibilité et la clarté. L'image reste dans son format et sa position d'origine.
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!