Täiustage oma dokumentatsiooni ja kooditesti ühe lihtsa sammuga näidisfunktsioonide abil.

Võtmed kaasavõtmiseks

  • Go näidisfunktsioonid on testitavad koodilõigud, mis toimivad dokumentatsioonina ja mida saab kasutada õigsuse kontrollimiseks.
  • Näidisfunktsioonid järgivad nimetamise tava ja neid saab defineerida pakettide, funktsioonide, tüüpide ja meetodite jaoks.
  • Näidisfunktsioonid on käivitatavad testid ja neid saab kasutada usaldusväärse koodi tagamiseks ja dokumentatsiooni ajakohasena hoidmiseks.

Üks Go tugevusi on selle rikkalik sisseehitatud testimis- ja dokumenteerimisfunktsioon. Nende hulgas on väga kasulik tööriist nimega "näidisfunktsioonid", mis aitab teil koodi kontrollida ja seda teistele selgitada.

Go arendajana peaksite täpselt aru saama, mis on näidisfunktsioonid ja kuidas saate neid kasutada hooldatava tarkvara koostamiseks.

Mis on näidisfunktsioonid?

Golangi näidisfunktsioonid (või näited) on testitavad koodilõigud, mida saate dokumentatsioonina paketile lisada ja õigsust kontrollida. Näidisfunktsioonid ei võta parameetreid ega tagasta ka tulemust.

Kujutage ette, et teil on järgmine Korrutada funktsioon teie projektis:

funcMultiply(a, b int)int {
return a * b
}

Funktsiooni näide Korrutada näeb välja selline:

funcExampleMultiply() {
fmt.Println(Multiply(4, 5))
// Output: 2
}

Näidisfunktsioonid kasutavad funktsioonide testimiseks sarnast nimetamise tava. Määratlege funktsiooni näide, lisades funktsiooni nime järelliitena "Näide", nagu see on Näide Korruta siin.

Näidisfunktsioonide lähemalt vaatamine

Eelmises jaotises olev kood näitab näidisfunktsiooni põhistruktuuri. Näite moodustab nimi, funktsiooni keha ja valikuline väljundkommentaar funktsiooni lõpus.

Kui lisate väljundkommentaari, siis Go kompileerib ja käivitab näite, et kontrollida selle õigsust, kuid ilma kommentaarita kompileerib Go ainult näidisfunktsiooni, ta ei käivita seda.

Tüübil saate määrata paketi, funktsiooni, tüübi ja meetodi näite.

Näidete määratlemine erinevate üksuste jaoks nõuab erinevaid lähenemisviise.

  1. Paketi näite määratlemiseks helistage lihtsalt oma funktsioonile Näide(), ilma järelliiteta. Näiteks siin on paketitaseme näide:
    funcExample() {
    fmt.Println("Hello, world!")
    // Output:
    // Hello, world!
    }
  2. Funktsiooni näite määratlemiseks lisage lihtsalt funktsiooni nimi järelliitena, nagu varem õppisite.
    funcExampleMultiply() {
    fmt.Println(Multiply(4,5))
    // Output: 2
    }
  3. Tüübi näite määratlemiseks lisage nimi sufiksina Näide. Siin on näide:
    type MyStruct struct {
    // ...
    }

    funcExampleMyStruct() {
    // ...
    }

  4. Ja lõpuks, konkreetse tüübi meetodi puhul lisate tüübi nime, alakriipsu ja seejärel meetodi nime. Siin on esitlus:
    func(m *MyStruct)MyMethod() {
    // ...
    }

    funcExampleMyStruct_MyMethod() {
    // ...
    }

Saate määratleda olemi jaoks mitu näidet, lisades täiendava allkriipsu ja väiketähega algava järelliide. Näiteks, NäideKorruta_sekund, NäideMyStruct_MyMethod_second.

Sul võib olla ka suurem näide keeruka loogika selgitamiseks, kasutades a kogu faili näide.

Terve faili näide on fail, mis lõpeb numbriga _test.go ja sisaldab täpselt ühte näidisfunktsiooni, mitte ühtegi testi- ega võrdlusfunktsiooni ning vähemalt ühte muud paketitaseme deklaratsiooni. Selliste näidete kuvamisel näitab godoc kogu faili. - Go dev ajaveeb

Go mootor tunneb ära ja käsitleb teie näidisfunktsioone vastavalt sellele, kuidas te need määratlete.

Võite kasutada Järjestamata väljund väljundkommentaaride alternatiiv. See on eriti kasulik stsenaariumide puhul, kus teie funktsioon tagastab loendi, mida pole kindlas järjekorras oodata.

Koodi dokumenteerimine näidisfunktsioonidega

Näidisfunktsioonid on kasulikud nii dokumenteerimisel kui ka testimisel. Näidisfunktsioon selgitab käitumist tavaliselt paremini kui kommentaarid.

Just nagu Java Javadoc, Mine sisseehitatud dokumentatsioonitööriist, godoc, aitab koodi hõlpsalt dokumenteerida. Kuid soovite mõned teegid ja funktsioonid koos dokumenteerida, et anda nende toimimisest täielikum ülevaade. Näited kõrvaldavad selle tagasilöögi, kuna need võivad näidata paketi erinevate üksuste vahelisi koostoimeid.

The goddoc tööriist seostab näited automaatselt funktsioonide, tüüpide ja pakettidega, millesse need kuuluvad, olenevalt teie spetsifikatsioonidest. Samuti läheb see sammu võrra kaugemale, võimaldades eksperimenteerida dokumentatsiooni veebiliideses.

Saate proovida paketti või meetodit otse dokumentatsioonist, enne kui seda oma koodis kasutate.

See pilt näitab näidet json. Kehtiv all funktsioon kodeering/json:

Näidisfunktsioonide kasutamine ühikutestimiseks

Go näide funktsioonid on ka käivitatavad testid. Kui käivitate mine testima Käsk, käivitab mootor iga näidisfunktsiooni koos lõpliku väljundkommentaariga ja tagab, et selle väljund vastab kommentaaris olevale.

See võimalus on kasulik mitmel viisil. See võib toimida lisakihina testimine usaldusväärse koodi tagamiseks, aitab see teil ka koodi muutumisel dokumentatsiooni jälgida.

Näiteks kui teete muudatuse, mis mõjutab konkreetse funktsiooni käitamist ja selle tagastatavat tulemust. Kui te ei värskenda näite väljundkommentaari uute muudatustega vastavusse viimiseks, ebaõnnestuvad selle näite testid.

See aitab oluliselt vältida aegunud dokumentatsiooni, kuna teie dokumentatsioon on alati koodiga ajakohane.

Näidisfunktsioonid loovad usaldusväärse koodi ja dokumentatsiooni

Dokumentatsioon on tarkvaraarenduse oluline osa, kuid vähesed keeled pakuvad teile nii võimsa platvormi koodi dokumenteerimiseks ja testimiseks.

Go sisaldab kõike, mida vajate oma tarkvara jaoks kvaliteetse dokumentatsiooni loomiseks, ja näidisfunktsioonid on selle oluline osa. Kasutage näiteid, et aidata kasutajatel ja kaastöötajatel teie koodi kiiremini vastu võtta ja sellest aru saada.