Tādi lasītāji kā jūs palīdz atbalstīt MUO. Veicot pirkumu, izmantojot saites mūsu vietnē, mēs varam nopelnīt filiāles komisiju. Lasīt vairāk.

Linting ir statiskā koda analīzes veids, lai identificētu iespējamās kodu bāzes kļūdas. Linters analizē kodu, lai noteiktu sintakses kļūdas un stila problēmas. Šis process var palīdzēt novērst kļūdas, uzlabot lasāmību, ieviest labāko praksi un ietaupīt laiku.

Lining ir standarta prakse programmatūras izstrādē. Lai gan Go standarta bibliotēkā nav iebūvēta lintera, Go ekosistēmā pastāv daudzi trešo pušu pūderēšanas rīki. Tie ietver GolangCI Lint, Go Meta Linter un Staticcheck pakotnes.

GolangCI Lint iepakojums

Golangci-lint iepakojums ir jaudīgs un elastīgs Go linter, kas var palīdzēt identificēt un labot koda kļūdas. Komplekta lietošanas vienkāršība, paplašināmība un visaptverošais iebūvēto ieliktņu komplekts padara to par populāru izvēli daudziem Go izstrādātājiem.

GolangCI Lint analizē Go pirmkodu un sniedz atsauksmes par iespējamām kļūdām, drošības problēmām un kodēšanas stila pārkāpumi ar funkcionalitāti augstas veiktspējas analīzei un nepārtrauktai integrācijai (CI) atbalsts.

instagram viewer

Palaidiet šo termināļa komandu sava projekta darba direktorijā, lai instalētu Golangci-lint pakotni:

instalējiet github.com/golangci/golangci-lint/cmd/[email protected]

Lai komanda varētu instalēt pakotni, jūsu Go versijai ir jābūt 1.19 vai jaunākai. Varat arī pārbaudīt golangci-lint iekārtas lapā, lai uzzinātu par citām pieejamajām instalēšanas metodēm.

Komanda instalēs GolangCI jūsu sistēmā kā CLI rīku. Jūs varat pārbaudīt instalēšanu ar šo komandu:

golangci-lint -- versija

Komandai jāparāda instalētā golangci-lint versija.

Linter konfigurēšana

Linteres ir ļoti daudzpusīgas, tāpēc, lai uzstādītu līnijpārvadātāju, jums tas ir jākonfigurē savam projektam.

The golangci-lint rīku lietojumi YAML faili konfigurācijai. Jūs norādīsiet savus lintera iestatījumus YAML failā, lai pakotne tiktu lasīta.

Varat izveidot noklusējuma konfigurācijas failu, izmantojot šo komandu:

golangci-lint config > .golangci.yml

Komanda izveido jaunu failu ar nosaukumu .golangci.yml jūsu pašreizējā direktorijā. Varat turpināt rediģēt šo failu, lai savam projektam konfigurētu linteri.

Lūk, saturs .golangci.yml failu, kad palaižat komandu:

Fails satur informāciju par golangci-lint rīku un opcijas, ko varat izmantot, lai konfigurētu ierakstīšanas procesu.

Jums būs jārediģē fails, lai pievienotu savai programmai šķelšanās noteikumus. Pilnu pieejamo līkumu sarakstu varat atrast vietnē golangci-lint Linters dokumentācijas lapa. Vai arī varat palaist palīdzēt linters komandu, lai skatītu līkumus savā komandrindā:

golangci-lint palīdzēt linters

Komanda izvada visus Linters, kas pieejami jūsu instalētās pakotnes versijai.

Lintera palaišana

Šeit ir demonstrācija, kā uzvilkt šādu tekstu “Sveika, pasaule!” programma, kas izmanto net/http iepakojums:

iepakojums galvenais

imports (
"fmt"
"net/http"
)

funcapdarinātājs(w http. ResponseWriter, r *http. Pieprasīt) {
fmt. Fprintf (w, "Sveika pasaule!")
}

funcgalvenais() {
http. HandleFunc("/", apdarinātājs)
http. ListenAndServe(":8080", nulle)
}

Šī programma definē a apdarinātājs funkcija, kas uzņem rakstītāju un pieprasa gadījumus no http iepakojums ResponseWriter un Pieprasīt konstrukciju veidi. The apdarinātājs funkcija raksta "Sveika, pasaule!" klientam pēc pieprasījuma.

The galvenais funkcija piestiprina / maršruts uz apdarinātājs funkcija un Klausieties un kalpojiet funkcija startē serveri localhost portā 8080.

The Klausieties un kalpojiet funkcija atgriež kļūdu, bet programma to ignorē. Šī konfigurācija nodrošinās, ka linter izceļ problēmu:

linteru iestatījumi:
deadcode:
# ignorēt visus testa failus
izlaist failus: "_test\\.go$"
govet:
# atspējot ēnošanas pārbaudi
čeku ēnošana: viltus
golints:
# ignorēt kļūdas par eksportētajiem funkciju nosaukumiem
izslēgt-izmantot-noklusējuma-eksportēts: taisnība

# ignorēt kļūdas par pasvītrojumiem iepakojums vārdus
izslēdziet bezjēdzīgu nosaukšanu: taisnība
gosec:
# atspējojiet gosec testus, jo tie ir lēni un var veikt viltus pozitīvi
testi: viltus
neizmantots:
# ziņo par neizmantotiem funkciju argumentiem, bet ne par neizmantotiem mainīgajiem
čeks eksportēts: taisnība
čeka tukša: taisnība
pārbaudes testi: taisnība

Pēc šīs ieliktņa konfigurācijas iestatīšanas varat palaist līkumu ar palaist komanda:

golangci-lint palaist

# ekvivalents, palaiž visas programmas
golangci-lint run ./...

Varat arī izvilkt konkrētus failus, norādot faila nosaukumu vai ceļu aiz palaist komanda:

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

Lintera palaišanas pret programmu rezultāts ir šāds:

The golangci-lint rīks ir daudzpusīgs, un jūsu konfigurācija atšķirsies atkarībā no jūsu projekta.

Jūs varat izveidot savus JavaScript projektus, izmantojot ESLint

Lining ir populārs programmatūras izstrādes uzdevums, un vairums programmēšanas valodu un IDE nodrošina rīkus programmu izvilkšanai. Programmai JavaScript ESLint ir vispopulārākais līnijs.

Eslint nodrošina vairākus pievilkšanas kārtulas, kas atbilst nozares standartiem CLI, IDE un teksta redaktora rīkos, padarot linting rīku par lielisku izvēli JavaScript izstrādātājiem.