Lint Your Go Programs Gamit ang GolangCI Lint Package

Lint Your Go Programs Gamit ang GolangCI Lint Package
Ang mga mambabasang tulad mo ay tumutulong sa pagsuporta sa MUO. Kapag bumili ka gamit ang mga link sa aming site, maaari kaming makakuha ng isang affiliate na komisyon. Magbasa pa.

Ang linting ay isang uri ng static code analysis para sa pagtukoy ng mga potensyal na error sa codebase. Sinusuri ng mga linter ang code para sa mga error sa syntax at mga isyu sa istilo. Makakatulong ang proseso na maiwasan ang mga bug, mapabuti ang pagiging madaling mabasa, ipatupad ang pinakamahuhusay na kagawian, at makatipid ng oras.





Ang linting ay isang karaniwang kasanayan sa pagbuo ng software. Bagama't walang linter na nakapaloob sa karaniwang library ng Go, maraming third-party na tool sa linting ang umiiral sa Go ecosystem. Kabilang dito ang mga pakete ng GolangCI Lint, Go Meta Linter, at Staticcheck.





MAKEUSEOF VIDEO OF THE DAY

Ang GolangCI Lint Package

  Logo ng GolangCI Lint, isang asul na gopher na may hawak na kalasag na may nakaguhit na bug

Ang golangci-lint package ay isang malakas at nababaluktot na linter para sa Go na makakatulong sa iyong tukuyin at ayusin ang mga error sa code. Ang kadalian ng paggamit ng package, extensibility, at komprehensibong hanay ng mga built-in na linter ay ginagawa itong isang popular na pagpipilian para sa maraming mga developer ng Go.





Sinusuri ng GolangCI Lint ang source code ng Go at nagbibigay ng feedback sa mga potensyal na bug, isyu sa seguridad, at mga paglabag sa istilo ng coding na may functionality para sa pagsusuri sa mataas na pagganap at suporta sa patuloy na pagsasama (CI).

Patakbuhin ang terminal command na ito sa working directory ng iyong proyekto para i-install ang Golangci-lint package:



 go install github.com/golangci/golangci-lint/cmd/golangci-lint@v1.51.1 

Ang iyong bersyon ng Go ay dapat na 1.19 o mas bago para sa command na i-install ang package. Maaari mo ring suriin ang mga instalasyon ng golangci-lint page para sa iba pang magagamit na paraan ng pag-install.

I-install ng command ang GolangCI sa iyong system bilang isang CLI tool. Maaari mong i-verify ang pag-install gamit ang command na ito:





 golangci-lint --version 

Dapat ipakita ng command ang bersyon ng golangci-lint na iyong na-install.

kung paano gawing mas mabilis ang pagsingil sa telepono

Pag-configure ng Linter

Ang mga linters ay napaka-versatile , kaya para mag-install ng linter, kailangan mong i-configure ang linter para sa iyong proyekto.





kung paano ilipat ang operating system mula sa isang computer patungo sa isa pa

Ang golangci-lint gamit ng kasangkapan YAML file para sa configuration . Tutukuyin mo ang mga setting ng iyong linter sa YAML file para mabasa ng package.

Maaari kang lumikha ng default na configuration file gamit ang command na ito:

 golangci-lint config > .golangci.yml 

Lumilikha ang command ng isang bagong file na pinangalanan .golangci.yml sa iyong kasalukuyang direktoryo. Maaari kang magpatuloy sa pag-edit ng file na ito upang i-configure ang linter para sa iyong proyekto.

Narito ang mga nilalaman ng .golangci.yml file kapag pinatakbo mo ang command:

  Mga tagubilin sa paggamit ng file ng Golangci-lint YAML

Ang file ay naglalaman ng impormasyon tungkol sa golangci-lint tool at ang mga opsyon na magagamit mo upang i-configure ang iyong proseso ng listing.

Kakailanganin mong i-edit ang file upang magdagdag ng mga panuntunan sa linting para sa iyong program. Makikita mo ang buong listahan ng mga available na linter sa golangci-lint Linters pahina ng dokumentasyon. O maaari mong patakbuhin ang tulong linters command upang tingnan ang mga linter sa iyong command line:

 golangci-lint help linters 

Ang command ay naglalabas ng lahat ng mga Linters na magagamit para sa bersyon ng package na iyong na-install.

  resulta mula sa pagpapatakbo ng help command sa Golangci-lint

Pagpapatakbo ng Linter

Narito ang isang demonstrasyon ng linting ng sumusunod na 'Hello, World!' program na gumagamit ng net/http pakete:

 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)
}

Tinutukoy ng program na ito ang a handler function na tumatagal sa manunulat at humiling ng mga pagkakataon mula sa http mga pakete ResponseWriter at Hiling mga uri ng istruktura. Ang handler Ang function ay nagsusulat ng 'Hello, World!' sa kliyente kapag hiniling.

ano ang matalinong tv?

Ang pangunahing function mounts ang / ruta patungo sa handler function, at ang ListenAndServe Sinisimulan ng function ang server sa localhost port 8080 .

Ang ListenAndServe function ay nagbabalik ng isang error, ngunit ang programa ay hindi pinapansin ito. Titiyakin ng configuration na ito na iha-highlight ng linter ang isyu:

 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

Pagkatapos itakda ang configuration ng linter na ito, maaari mong patakbuhin ang linter gamit ang tumakbo utos:

 golangci-lint run 

# equivalent, runs all programs
golangci-lint run ./...

Bilang kahalili, maaari kang mag-lint ng mga partikular na file sa pamamagitan ng pagtukoy sa pangalan ng file o path pagkatapos ng tumakbo utos:

  golangci-lint run dir1 dir2/... dir3/file1.go

Narito ang resulta ng pagpapatakbo ng linter laban sa programa:

  resulta mula sa pagpapatakbo ng linter sa isang http program

Ang golangci-lint Ang tool ay maraming nalalaman, at ang iyong configuration ay mag-iiba batay sa iyong proyekto.

Maaari Mong I-lint ang Iyong Mga Proyekto sa JavaScript Gamit ang ESLint

Ang linting ay isang sikat na gawain sa pagbuo ng software, at karamihan sa mga programming language at IDE ay nagbibigay ng mga tool para sa linting program. Para sa JavaScript, ang ESLint ang pinakasikat na linter.

Nagbibigay ang Eslint ng maraming panuntunan sa linting na sumusunod sa mga pamantayan ng industriya sa mga tool sa CLI, IDE, at text editor, na ginagawang magandang pagpipilian ang linting tool para sa mga developer ng JavaScript.