Le peluchage est un type d'analyse de code statique permettant d'identifier les erreurs potentielles de la base de code. Les linters analysent le code pour les erreurs de syntaxe et les problèmes de style. Le processus peut aider à prévenir les bogues, à améliorer la lisibilité, à appliquer les meilleures pratiques et à gagner du temps.
Le linting est une pratique courante dans le développement de logiciels. Bien qu'il n'y ait pas de linter intégré dans la bibliothèque standard de Go, de nombreux outils de lint tiers existent dans l'écosystème Go. Ceux-ci incluent les packages GolangCI Lint, Go Meta Linter et Staticcheck.
devrais-je créer une chaîne youtubeUTILISEZ LA VIDÉO DU JOUR
Le paquet GolangCI Lint
Le paquet golangci-lint est un linter puissant et flexible pour Go qui peut vous aider à identifier et corriger les erreurs de code. La facilité d'utilisation, l'extensibilité et l'ensemble complet de linters intégrés du package en font un choix populaire pour de nombreux développeurs Go.
GolangCI Lint analyse le code source Go et fournit des commentaires sur les bogues potentiels, les problèmes de sécurité et les violations de style de codage avec des fonctionnalités d'analyse haute performance et de prise en charge de l'intégration continue (CI).
Exécutez cette commande de terminal dans le répertoire de travail de votre projet pour installer le package Golangci-lint :
go install github.com/golangci/golangci-lint/cmd/golangci-lint@v1.51.1
Votre version de Go doit être 1.19 ou ultérieure pour que la commande installe le package. Vous pouvez également vérifier le installations golangci-lint page pour les autres méthodes d'installation disponibles.
La commande installera GolangCI sur votre système en tant qu'outil CLI. Vous pouvez vérifier l'installation avec cette commande :
golangci-lint --version
La commande doit afficher la version de golangci-lint que vous avez installée.
Configuration du Linter
Les linters sont très polyvalents , donc pour installer un linter, vous devrez configurer le linter pour votre projet.
meilleure application de retouche photo gratuite pour iphone
Le golangci-lint utilisations d'outils Fichiers YAML pour la configuration . Vous spécifierez les paramètres de votre linter dans le fichier YAML pour que le package lise.
Vous pouvez créer un fichier de configuration par défaut à l'aide de cette commande :
golangci-lint config > .golangci.yml
La commande crée un nouveau fichier nommé .golangci.yml dans votre répertoire courant. Vous pouvez procéder à la modification de ce fichier pour configurer le linter pour votre projet.
Voici le contenu du .golangci.yml fichier lorsque vous exécutez la commande :
Le fichier contient des informations sur le golangci-lint outil et les options que vous pouvez utiliser pour configurer votre processus de référencement.
Vous devrez modifier le fichier pour ajouter les règles de peluchage de votre programme. Vous trouverez la liste complète des linters disponibles sur le golangci-lint Linters page documentaire. Ou vous pouvez exécuter le aider les linters commande pour afficher les linters sur votre ligne de commande :
golangci-lint help linters
La commande affiche tous les Linters disponibles pour la version du package que vous avez installé.
Exécution du Linter
Voici une démonstration de linting suivant 'Hello, World!' programme qui utilise le réseau/http emballer:
package main
import (
"fmt"
"net/http"
)
func handler(w http.ResponseWriter, r *http.Request) {
fmt.Fprintf(w, "Hello, world!")
}
func main() {
http.HandleFunc("/", handler)
http.ListenAndServe(":8080", nil)
}
Ce programme définit une gestionnaire fonction qui accepte les instances de l'écrivain et de la requête à partir du http paquets ResponseWriter et Demande types de structure. Le gestionnaire fonction écrit 'Hello, World!' au client sur demande.
Le principal fonction monte le / itinéraire vers le gestionnaire fonction, et la ÉcouterEtServir la fonction démarre le serveur sur le port localhost 8080 .
Le ÉcouterEtServir La fonction renvoie une erreur, mais le programme l'ignore. Cette configuration garantira que le linter met en évidence le problème :
comment copier les signets de chrome
linters-settings:
deadcode:
# ignore all test files
skip-files: "_test\.go$"
govet:
# disable shadowing check
check-shadowing: false
golint:
# ignore errors about exported function names
exclude-use-default-exported: true
# ignore errors about underscores in package names
exclude-useless-naming: true
gosec:
# disable gosec tests, since they are slow and can produce false positives
tests: false
unused:
# report unused function arguments, but not unused variables
check-exported: true
check-blank: true
check-tests: true
Après avoir défini cette configuration de linter, vous pouvez exécuter le linter avec le courir commande:
golangci-lint run
# equivalent, runs all programs
golangci-lint run ./...
Alternativement, vous pouvez pelucher des fichiers spécifiques en spécifiant le nom ou le chemin du fichier après le courir commande:
golangci-lint run dir1 dir2/... dir3/file1.go
Voici le résultat de l'exécution du linter par rapport au programme :
Le golangci-lint L'outil est polyvalent et votre configuration variera en fonction de votre projet.
Vous pouvez pelucher vos projets JavaScript avec ESLint
Le linting est une tâche de développement de logiciels populaire, et la plupart des langages de programmation et des IDE fournissent des outils pour les programmes de linting. Pour JavaScript, ESLint est le linter le plus populaire.
Eslint fournit plusieurs règles de linting qui suivent les normes de l'industrie dans les outils CLI, IDE et éditeur de texte, faisant de l'outil de linting un excellent choix pour les développeurs JavaScript.