Mikä on luokka ja esine Golangissa?

Mika On Luokka Ja Esine Golangissa



Tietokoneohjelmoinnin perusideoita, kuten luokkaa ja esine tarjoavat rakenteen koodin ryhmittelemiseksi uudelleenkäytettäviin ja mukautettavissa oleviin moduuleihin. Golang sillä on oma erottuva syntaksi, piirteet ja filosofia. Toisin kuin muilla kielillä, ratkaisu ei ole yhtä ilmeinen käsitteiden suhteen luokkaa ja esine sisään Mennä . Tässä artikkelissa tutkimme, onko Golla käsite luokkaa ja an esine ja miten se verrataan muihin ohjelmointikieliin.

Mikä on luokka ja esine?

Ennen kuin voimme vastata, onko Mennä on luokat ja esineitä , meidän on ensin määriteltävä, mitä ne ovat ohjelmoinnin yhteydessä. A luokkaa on malli tai malli, joka hahmottaa kokoelman ominaisuudet ja toiminnot esineitä . An esine luodaan esiintymänä a luokkaa kun muisti on varattu ja sen tila alustetaan ajon aikana. Luokat ja esineitä ovat keskeisiä rakennuspalikoita klassisissa olio-ohjelmointikielissä, kuten Java, C++ tai C#, jotka tukevat polymorfismia, periytymistä ja kapselointia.

Rakenteet Golangissa

Sisään Menkää, luokat korvataan käyttäjän määrittämillä tietotyypeillä nimeltä rakenteet. Nämä rakenteet yhdistää useita elementtejä tai ominaisuuksia ja mahdollistaa menetelmien sisällyttämisen - funktioita, jotka toimivat instansseissa struct. Sillä aikaa rakenteet jakaa joitakin yhtäläisyyksiä luokat Kuten perinnöllisyys ja rajapinnat, on myös huomattavia eroja. Esimerkiksi, Mennä ei ole konstruktoria – ainutlaatuinen menetelmä, joka alustaa objektin tilan luonnin yhteydessä, kuten tyypillisesti luokkapohjaisissa kielissä.







Liitännät Golangissa

Mennä sillä on konsepti, joka on kuin esineitä : käyttöliittymät . An käyttöliittymä on kokoelma menetelmiä, jotka kuvaavat käyttäytymistä tai toiminnallisuutta, mutta eivät määrittele, kuinka se toteutetaan. Liitännät tarjoavat tavan saavuttaa polymorfia Mennä , jolloin eri tyyppejä voidaan käyttää vaihtokelpoisesti, jos ne täyttävät käyttöliittymän vaatimukset. Tämä on tehokas konsepti, joka mahdollistaa Mennä saavuttaa korkea joustavuus ja laajennettavuus suorituskyvystä tai yksinkertaisuudesta tinkimättä.



Rakenteiden ja rajapintojen käyttö Golangissa

Seuraava esimerkki havainnollistaa käyttöä struct ja käyttöliittymät sisään Mennä .



pääpaketti
tuonti 'fmt'

tyyppi Ihminen struct {
nimimerkkijono
}

tyyppi Työntekijä struct {
Ihmisen
työmerkkijono
}

func ( h Ihminen ) Tiedot ( ) {
fmt. Printf ( 'Minä olen s \n ' , h. nimi )
}

func ( w Työntekijä ) Tiedot ( ) {
fmt. Printf ( 'Olen %s. Olen %s. \n ' , Sisään. nimi , Sisään. Job )
}

tyyppi henkilöliittymä {
Tiedot ( )
}
funcmain ( ) {
John := Työntekijä { Ihmisen { 'John' } , 'työntekijä' }
Doe := Ihmisen { 'Doe' }

John. Tiedot ( )
Doe. Tiedot ( )

oli Henkilössä

i = John
i. Tiedot ( )

i = Doe
i. Tiedot ( )
}

Olemme luoneet kaksi rakenteet , Ihmisen ja Työntekijä , yllä olevassa koodissa. Sen jälkeen luodaan viestit tulostavat toiminnot. The rakenteet kutsutaan nimellä pää () toiminto Henkilö käyttöliittymä . Voimme nähdä, että Tiedot menetelmä on toteutettu sekä Työntekijä ja Ihmisen , siksi muuttuja i tyypin kanssa Henkilö käyttöliittymä toimii oikein ja tulostaa tulosteen.





Lähtö



Mennä on ainutlaatuinen lähestymistapa kapselointi . Kapselointi saavutetaan tavanomaisessa olio-ohjelmoinnissa tekemällä kentät yksityisiksi ja saattamalla ne saataville getter- ja setter-menetelmien avulla. Sisään Mennä , kapselointi saavutetaan käyttämällä pieniä kirjaimia kenttien nimiä, jotka näkyvät vain samassa paketissa. Tämä strategia on yksinkertaisempi ja yksiselitteisempi, mikä helpottaa koodin käyttäytymisen ymmärtämistä ja vähentää odottamattomien sivuvaikutusten mahdollisuutta.

Mennä tarjoaa yksinkertaistetun muodon polymorfismi . Olio-ohjelmoinnissa on ominaisuus nimeltä polymorfismi joka mahdollistaa eri luokkien objektien käsittelemisen saman luokan esiintyminä. Mennä ei tarjoa perinteistä luokkapohjaista periytymistä, mutta se tukee rajapintoja, joiden avulla voidaan määrittää joukko menetelmiä, jotka rakenteen on toteutettava. Mennä tarjoaa myös tyyppiväitteitä, joiden avulla ohjelmoijat voivat tutkia käyttöliittymämuuttujan sisältöä ja saada taustalla olevan konkreettisen arvon.

Johtopäätös

Mennä ei ole luokat tai esineitä klassisessa mielessä; sen sijaan se käyttää rakenteet ja käyttöliittymät , jotka tarjoavat vertailukelpoisia toimintoja yksinkertaisemmalla ja kevyemmällä tavalla. Mennä on saavuttanut suosiota kehittäjien keskuudessa, jotka asettavat etusijalle yksinkertaisuuden, luettavuuden ja suorituskyvyn omaksumalla erilaisen filosofian ja kieliopin. Vaikka tutustuminen Mene menetelmä voi viedä jonkin aikaa, sen erityispiirteet ja muotoilu johtavat tehokkaampaan ja ylläpidettävämpään koodiin.