Lint Your Go Programs avec le package GolangCI Lint

Lint Your Go Programs avec le package GolangCI Lint
Des lecteurs comme vous aident à soutenir MUO. Lorsque vous effectuez un achat en utilisant des liens sur notre site, nous pouvons gagner une commission d'affiliation. En savoir plus.

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 youtube
UTILISEZ LA VIDÉO DU JOUR

Le paquet GolangCI Lint

  Logo GolangCI Lint, un gopher bleu tenant un bouclier avec un insecte dessiné dessus

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 :

  Instructions d'utilisation du fichier YAML Golangci-lint

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é.

  résultat de l'exécution de la commande d'aide sur Golangci-lint

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 :

  résultat de l'exécution du linter sur un programme http

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.