Efnisyfirlit[Fela][Sýna]
- 1. Lýstu Golang.
- 2. Hvaða kosti hefur Go umfram önnur tungumál?
- 3. Hvað er fmt í Golang forritun?
- 4. Hvað nákvæmlega er Go Interfaces?
- 5. Hvað nákvæmlega eru strengjabókstafir?
- 6. Hvernig eru vinnuumhverfi og færibreytur stillt í Golang?
- 7. Lýstu Golang pökkunum?
- 8. Hvaða gagnategundir eru studdar af Golang?
- 9. Hvað meinarðu með static type yfirlýsingu um breytu í Golang?
- 10. Í Golang, hver er yfirlýsing um kvikbreytu?
- 11. Hvernig get ég notað sérsniðna pakka á GO forritunarmálinu?
- 12. Hvað nákvæmlega er goroutine? Hvernig geturðu stöðvað það?
- 13. Lýstu rún.
- 14. Hvað er Go orðatiltækið til að tákna enums?
- 15. Hvernig er gerð breytu athugað á keyrslutíma?
- 16. Lýstu Go rásum.
- 17. Útskýrðu Golang aðferðir.
- 18. Hvað nákvæmlega er gagnakapphlaup?
- 19. Hvað er Go sorphirðu eiginlega?
- 20. Lýstu stigum prófunar með því að nota Golang.
- 21. Hvað nákvæmlega eru sneiðar í Go?
- 22. Hvað nákvæmlega er heap memory?
- 23. Hvað nákvæmlega eru aðgerðalokanir?
- 24. Hvað þýðir goto-yfirlýsing Golangs?
- 25. Hvað eru Lvalue og Rvalue í Golang?
- 26. Í Go, hverjar eru lykkjusmíðarnar?
- 27. Hvað nákvæmlega eru hönnunarmynstur?
- 28. Hver er besti Golang pakkinn fyrir einfaldar skráaraðgerðir? Hvaða Golang pakkar til viðbótar eru notaðir til að meðhöndla skrár?
- 29. Gefðu skýringu á hlutbundnum arkitektúr Golangs.
- 30. Hvaða viðskiptagerðir styður Golang?
- 31. Lýstu tilgangi og virkni Tegundarfullyrðingar.
- 32. Hvað nákvæmlega er struct type?
- 33. Útskýrðu bakfylki sneiðgildis.
- 34. Er nauðsynlegt að hafa bæði GOPATH og GOROOT breytur og ef svo er, hvers vegna?
- 35. Gerir Golang kleift að erfða?
- 36. Hvernig birtist CGo í Golang?
- 37. Hver er benditegundin í Golang?
- Niðurstaða
Go forritunarmálið, oft þekkt sem Golang, er opinn uppspretta forritunarmál sem er sambærilegt við C en er hannað fyrir hraða samantekt, mjúka samhliða og þægindi fyrir þróunaraðila.
Þetta tungumál var þróað og notað af Google, en það hefur náð vinsældum í öðrum fyrirtækjum á undanförnum árum eftir því sem eftirspurn eftir samhliða nettengdri forritun hefur vaxið.
Golang gerir þróun auðveldari fyrir þróunaraðila með því að bjóða upp á ákjósanlega samantekt fyrir hraða þróun hugbúnaðarforrita, sléttari samhliða, aukna keyrslutíma skilvirkni og færri galla.
Golang er fljótt að verða vinsælt forritunarmál fyrirtækja, með nokkrum atvinnumöguleikum. Margir upplýsingatæknigestir, eins og Google, Uber og Apple, dýrka Golang fyrir styttri þróunartíma, auðvelda nám, aukinn keyrslutíma, sorphirðu og aðra kosti.
Eftir því sem fleiri fyrirtæki nota Golang vex þörfin fyrir Golang forritara. Aðalatriðið? Að læra Golang myndi veita nokkra atvinnumöguleika.
Ef þú vilt vinna sem Golang verktaki verður þú að undirbúa þig vel fyrir viðtalið þitt. Þess vegna tókum við saman þetta yfirgripsmikla safn af Golang viðtalsspurningum.
Í þessari færslu munum við kynna grunn til háþróaðra Golang viðtalsspurningar, svo þú komist auðveldlega í gegnum viðtalið.
1. Lýstu Golang.
Go er háþróaður, almennur tilgangur forritunarmál sem styður sorphirðu og samhliða forritun og er mjög þétt og statískt slegið. Go forrit eru búin til með því að nota pakka, sem veita skilvirka eftirlitsstjórnun.
Að auki nýtir það sér samantektartengla nálgunina til að búa til keyranleg tvöfaldur úr frumkóða. Go er einfalt tungumál með fallegri og skýrri setningafræði.
Það kemur með mengi af sterkum stöðluðum bókasöfnum sem hægt er að nota af forriturum til að leysa vandamál án kröfu um aðra pakka.
2. Hvaða kosti hefur Go umfram önnur tungumál?
- Go kóðinn var þróaður með hagkvæmni í huga, öfugt við önnur tungumál sem byrjuðu sem vitsmunalegar tilraunir. Sérhvert val í setningafræði og eiginleikum er gert með þægindi forritarans í huga.
- Þar sem sjálfvirk sorpsöfnun keyrir samhliða forritinu er það mun áhrifaríkara en Java eða Python.
- Sveigjanleiki og samtímis er bæði forgangsraðað í Golang.
- Golang er venjulega talið skiljanlegra en önnur tungumál þar sem það hefur eina, staðlaða kóða uppbyggingu.
3. Hvað er fmt í Golang forritun?
Format pakkinn er táknaður með tákninu fmt. Notendur geta notað þessa virkni til að forsníða grunntexta, gildi eða eitthvað annað og prenta það.
Það gerir notendum einnig kleift að taka á móti inntaksstöðvar, skrifa í skrá með ritara og jafnvel búa til sérsniðin fín villuskilaboð. Þessi pakki snýst allt um að forsníða inntak og úttak.
4. Hvað nákvæmlega er Go Interfaces?
Viðmótin í Go eru frábrugðin þeim á öðrum tungumálum. Go tengi eru sérstök tegund sem er notuð til að tjá safn einnar eða fleiri aðferðaundirskrifta.
Viðmótið er myndað með því að nota hugtakið „gerð“, fylgt eftir með nafninu og leitarorðaviðmótinu. Hægt er að skilgreina viðmótin sem hér segir:
- safn aðferða
- Gerð
5. Hvað nákvæmlega eru strengjabókstafir?
Strengjabókstafur er strengjafasti framleiddur með því að sameina bókstafi. Hráir og túlkaðir strengjabókstafir eru tvær tegundir strengjabókstafa. Óunnin strengjabókstafir eru umluktir af bakmarki (foo) og innihalda ótúlkaða UTF-8 stafi.
Túlkaðir strengjabókstafir eru strengir sem skrifaðir eru innan tvöfaldra gæsalappa og innihalda hvaða staf sem er nema nýlína og ófullkomnar tvöfaldar gæsalappir.
6. Hvernig eru vinnuumhverfi og færibreytur stillt í Golang?
Hægt er að stilla vinnuumhverfi og stillingar með JSON, sem er mikið notað þessa dagana. Sú staðreynd að JSON er innifalið í staðlaða bókasafninu er helsti ávinningur þess.
Staðlaða bókasafnið veitir ritunaraðferðir fyrir fyrirhugaða gagnagrind, sem gerir það mjög læsilegt. YAML pakkinn fyrir Go er aukavalkostur.
7. Lýstu Golang pökkunum?
Pakkar eru möppur sem hýsa aðra pakka og frumkóða þeirra í Go vinnusvæðinu. Tengdu pakkarnir innihalda allan kóðann, þar á meðal breytur, aðgerðir og tegundir, sem eru skrifaðar í frumskrárnar.
Sérhver frumskrá er hluti af pakka og go pakka er einnig hægt að geyma inni í pakka.
8. Hvaða gagnategundir eru studdar af Golang?
Golang notar eftirfarandi gerðir:
- Aðferð
- Boolean
- Tölugildi
- Band
- Pointer
- virka
- Tengi
- Skerið
- Uppbygging
- Kort
- Sund
- Array
9. Hvað meinarðu með static type yfirlýsingu um breytu í Golang?
Þýðandinn getur haldið áfram með aðra söfnun án þess að þurfa að hafa yfirgripsmiklar upplýsingar um breytuna þökk sé kyrrstæðum gerðum breytuyfirlýsingum, sem fullvissa það um að það er aðeins ein breyta með tilteknu tegund og nafni.
Breytileg yfirlýsing er aðeins mikilvæg við samantekt; þýðandinn krefst raunverulegrar breytu og yfirlýsingar við tengingu við forritið.
10. Í Golang, hver er yfirlýsing um kvikbreytu?
Þýðandinn verður að útskýra hvers konar breytu í kvikri gerð breytuyfirlýsingar byggt á upphæðinni sem flutt er á hana. Sem áskilið skilyrði þarf þýðandinn ekki breytu til að flokka stöðuna.
11. Hvernig get ég notað sérsniðna pakka á GO forritunarmálinu?
Ef þú ert að búa til sérstakt go get -table verkefni fyrir bókasafnið þitt og það er aðeins fyrir innri notkun, geturðu skrifað kóða eins og þennan.
- Settu bókasafnsskrárnar undir möppu verkefnisins þíns.
- Vísaðu til bókasafnsins eftir slóð þess miðað við rót vinnusvæðisins sem inniheldur verkefnið.
12. Hvað nákvæmlega er goroutine? Hvernig geturðu stöðvað það?
Górótín er aðgerð eða aðferð sem keyrir samtímis öðrum gorútínum á sérstökum goroutine þræði. Goroutine þræðir eru léttari en venjulegir þræðir og flest Golang forrit nota þúsundir goroutine samtímis.
Hægt er að stöðva goroutine með því að gefa henni merkjarás. Goroutines geta aðeins brugðist við merkjum ef þeim er beint til að athuga, hafðu því athuganir á sanngjörnum stöðum eins og efst á for-lykkjunni þinni.
13. Lýstu rún.
Í Go er rún innbyggð gerð með nafninu int32. Unicode CodePoint þjónar sem rún í Go. Sama hversu mörg bæti kóðapunkturinn tekur upp, það getur verið táknað með rúni.
Rúnar þurfa ekki að vera í röð í streng. Þó að við getum breytt á milli strengs og rúna, þá eru þeir ekki eins.
14. Hvað er Go orðatiltækið til að tákna enums?
Golang forritunarmálið styður ekki upptalningar beint. Hægt er að nota Iota og fasta til að útfæra enums. Einhver af eftirfarandi aðferðum er hægt að nota til að útfæra upptalda gerð:
- að kynna nýja heiltölutegund
- Iota er notað til að gefa til kynna gildi þess.
- Með því að veita tegundinni String fall
15. Hvernig er gerð breytu athugað á keyrslutíma?
Tegundarrofinn er áhrifaríkasta aðferðin til að ákvarða gerð breytu í rauntíma. Breytur eru metnar eftir tegund frekar en gildi þegar tegundarrofi er notaður.
Bæði sjálfgefið tilvik, sem er keyrt ef ekkert tilvikanna er satt og að minnsta kosti eitt tilvik, sem þjónar sem skilyrt yfirlýsing, eru til staðar í hverjum rofi. Þú getur til dæmis hannað tegundarrofa sem ákvarðar hvort viðmótsgildið sem ég hef með sé tegundin int eða strengur:
16. Lýstu Go rásum.
Go rás gerir gagnaflutning og flutning á milli goroutines kleift. Hægt er að senda gögn af sömu gerð yfir eina rás.
Goroutines geta sent og tekið á móti gögnum yfir sömu rásina vegna tvíátta gagnaflæðis rásarinnar.
17. Útskýrðu Golang aðferðir.
Golang býður ekki upp á námskeið en notar stuðningsaðferðir. Þessar aðferðir eru eins og aðgerðir, að því undanskildu að Go aðferðir eru með móttakarabreytu.
Go aðferðin hefur aðgang að eiginleikum móttakarans í gegnum móttakarbreytur. Go aðferðir, einnig þekktar sem móttakaraaðgerðir, hjálpa til við að kynna nákvæmari og raunverulegri hugmynd.
18. Hvað nákvæmlega er gagnakapphlaup?
Algengasta og erfiðasta kembiforritið er gagnakapphlaup. Ósamstilltur aðgangur að sameiginlegu minni eða framkvæmd margra goroutines á sama tíma án sérstakrar meðhöndlunar leiðir til bilunar í gagnakapphlaupi.
19. Hvað er Go sorphirðu eiginlega?
Sorphirða endurnýjar geymslu sem hefur verið úthlutað á virkan hátt til forrits til notkunar fyrir aðra hluti. Orðið vísar oft til sjálfvirkrar endurnýjunar sorpsöfnunaraðilans fyrir venjubundna geymslu frekar en skýran kóða (sem er útvegaður af forritara) til að losa sérstakar minnisblokkir.
Sjálfvirk ruslasöfnun er oft hafin þegar magn af ókeypis vinnsluminni fer niður fyrir fyrirfram skilgreinda þröskuld eða eftir ákveðinn fjölda úthlutana.
Útrýming á hlutum sem hugbúnaðurinn þarfnast ekki lengur til að búa til stað í minni fyrir kraftmeiri hluti er nefnt „sorpasöfnun“.
20. Lýstu stigum prófunar með því að nota Golang.
Golang veitir sjálfvirkar prófanir á pakka með sérsniðnum prófunarsvítum. Til að stofna nýja föruneyti, búðu til skrá sem endar á _test.go og inniheldur TestXxx fall, þar sem Xxx er skipt út fyrir nafn eiginleikans sem þú ert að prófa.
Aðgerð sem prófar innskráningargetu, til dæmis, fengi nafnið TestLogin. Prófunarsvítaskráin er síðan innifalin í sama pakka og skráin sem verið er að prófa.
Prófskránni verður sleppt meðan á venjulegri framkvæmd stendur en keyrir hún þegar þú slærð inn go test skipunina.
21. Hvað nákvæmlega eru sneiðar í Go?
Sneiðar eru mikilvæg Go gagnategund sem veitir öflugra viðmót fyrir raðir en fylki. Sneiðar, ólíkt fylkjum, eru eingöngu slegnar inn eftir þeim þáttum sem þær innihalda (ekki fjölda þátta).
Til að smíða tóma sneið með lengd sem er ekki núll, notaðu innbyggða „gera“ lykilorðið.
22. Hvað nákvæmlega er heap memory?
Við geymum hreyfimyndaða hluti og breytur í haugaminni. Þegar við notum ekki lengur hlut eyðum við venjulega hrúgaminninu sem hann tók.
23. Hvað nákvæmlega eru aðgerðalokanir?
Aðgerðarlokanir eru tegund fallgilda sem búa til breytur sem vísað er til utanaðkomandi. Aðgerðin hefur aðgang að og stjórn á gildum breytanna sem vísað er til.
Sem dæmi er lokunin sem er skilað af adder() bundin við aðra summubreytu sem vísað er til.
24. Hvað þýðir goto-yfirlýsing Golangs?
Goto setningin virkar sem stökkyfirlýsing í Golang. Goto er notað til að veita tiltekna merkimiðastýringu yfir forritinu.
Það er hægt að nota til að sleppa yfir hluta af kóða og fara beint í nauðsynlegar yfirlýsingar, eða það er hægt að nota það til að endurtaka hluta af forritskóða miðað við ákveðnar aðstæður.
25. Hvað eru Lvalue og Rvalue í Golang?
Lgildi:
- Það vísar til minningarstaðar.
- Það er hægt að breyta því.
- Það táknar breytuauðkenni.
- Það gæti komið fyrir vinstra eða hægra megin við = rekstraraðilann.
- Í línunni x =20, til dæmis, er x lgildi og 20 er rgildi.
Rgildi:
- Það táknar fast gildi.
- Það táknar minnisgeymt gagnagildi.
- Það kemur alltaf hægra megin við = rekstraraðilann.
- Setningin 10 = 20 er röng, til dæmis þar sem það er rgildi (10) vinstra megin við = rekstraraðilann.
26. Í Go, hverjar eru lykkjusmíðarnar?
Það er aðeins einn lykkjuþáttur í Go: for lykkjan. For lykkjan samanstendur af þremur hlutum sem eru aðskilin með semíkommum:
- Init setningin er keyrð áður en lykkjan hefst. Það er oft breytileg yfirlýsing sem birtist aðeins innan umfangs for lykkjunnar.
- Fyrir hverja endurtekningu er ástandssetningin metin sem Boolean til að ákveða hvort lykkjan eigi að halda áfram.
- Færsluyfirlýsingin er keyrð í lok hverrar endurtekningar.
27. Hvað nákvæmlega eru hönnunarmynstur?
Hönnunarmynstur eru klumpur af kóða sem hægt er að endurnýta til að takast á við algeng hugbúnaðarvandamál. Ef þú notar hönnunarmynstur munu verkefnin þín búa til eininga-, skalanlegri og skilvirkari hugbúnað. Hönnunarmynstur hjálpa þér að stækka öppin þín og vinna með teymi. Algeng hönnunarmynstur eru verksmiðjuaðferðin, Singleton, framhlið og skreytingamaður.
28. Hver er besti Golang pakkinn fyrir einfaldar skráaraðgerðir? Hvaða Golang pakkar til viðbótar eru notaðir til að meðhöndla skrár?
Hið vettvangsóháða viðmót er veitt af OS staðlaða bókasafnspakkanum. Þegar við höfum samskipti við skrár notum við þær fyrir kerfisaðgerðir. Stýrikerfisviðmótinu er ætlað að vera í samræmi í öllum stýrikerfum.
Þess vegna keyra forritin sem við þróum það sama á Windows, Linux og Mac. Aðrir Go venjulegir bókasafnspakkar innihalda io, ioutil og bufio. Þeir starfa með skrám og bæta við virkni. Hins vegar eru þeir ekki nauðsynlegir fyrir grundvallarskráraðgerðir. Við þurfum aðeins OS pakkann.
29. Gefðu skýringu á hlutbundnum arkitektúr Golangs.
Golang notar ekki bekkjarhluthönnun eins og hefðbundið er Hlutbundin forritun gerir. Flókin gagnagerð og hegðun eru í staðinn geymd í mannvirkjum og aðferðum.
Uppbygging er bara skema með teikningu fyrir gögnin sem uppbygging mun bera. Hægt er að nota mannvirki til að tákna hugmyndir úr hinum raunverulega heimi, svo sem bækur, fólk eða bíla.
30. Hvaða viðskiptagerðir styður Golang?
Þegar kemur að skýrri vélritun er Go mjög vandlátur. Engin gerð umbreyting er gerð sjálfkrafa. Til að tilgreina breytu af einni tegund til annarrar verður tegundabreyting að fara fram með skýrum hætti.
31. Lýstu tilgangi og virkni Tegundarfullyrðingar.
Í GO er gerð umbreyting notuð til að umbreyta ólíkum gerðum. Skýrt gildi af tilgreindri gerð er dregið úr viðmótsgildi með tegundarfullyrðingu.
32. Hvað nákvæmlega er struct type?
Uppbygging samanstendur af lista yfir nafngreinda hluti sem kallast reiti. Það er tegund og nafn á hverju sviði. Önnur leið til að hugsa um mannvirki er sem hópur tengdra eiginleika. Þau eru gagnleg til að sameina gögn til að búa til færslur.
33. Útskýrðu bakfylki sneiðgildis.
Þegar við smíðum sneið framleiðir Go leynilegt fylki sem kallast bakviður eða undirliggjandi fylki á bak við tjöldin og nýja sneiðtegundarbreytu vísar í það. Hlutirnir, ekki sneiðin, eru geymd í bakhliðinni.
Sneiðar eru útfærðar í Go sem gagnastrúktúr sem kallast sneiðhausar, sem virka sem keyrslutímaframsetning sneiðarinnar.
34. Er nauðsynlegt að hafa bæði GOPATH og GOROOT breytur og ef svo er, hvers vegna?
Venjulega er hvorugt nauðsynlegt. Eina breytan sem þarf að stilla til að benda á Go pakkatréð eða trén er GOPATH.
GOROOT vísar til rótar heimamöppunnar fyrir Go forritunarmálið, en hún er næstum örugglega þegar stillt á staðsetningu núverandi Go uppsetningar.
Ef það eru fjölmargar Go tungumálaútgáfur á sama kerfi, eða ef Go tungumálið var hlaðið niður sem tvöfaldur pakki af internetinu eða flutt af annarri vél, verður að stilla GOROOT breytuna.
35. Gerir Golang kleift að erfða?
Erfðir er grundvallarhugtak í hlutbundinni forritun sem vísar til þess að miðla eiginleikum ofurklasans yfir á grunnflokkinn.
Þar sem Golang skortir flokka, er arfleifð náð með því að nota struct embedding og ekki er hægt að stækka structur beint, við verðum að nota hugmyndina um samsetningu til að búa til nýja hluti með struct.
36. Hvernig birtist CGo í Golang?
Úr Go frumskrá með skilgreindum eiginleikum býr cGo til Go og C skrár sem hægt er að tengja saman í einstaka Go pakka. C vísar til „gervipakka,“ sem er önnur setning sem er búin til af cGo til að vísa til nafnrýmis C.
37. Hver er benditegundin í Golang?
Alfræðiheiti eða merki fyrir ákveðin minni svæði eru þekkt sem breytur. Tegund breytu sem kallast bendill geymir minnisfang annarrar breytu.
Heimilisfang breytu er táknað með bendigildi, eða núll ef breytan hefur ekki enn verið staðfest. Rétt eins og breyta táknar minnisstaðsetningu gildis, bendir bendill á það heimilisfang.
Niðurstaða
Markmið Golang forritunarmálsins var að búa til skilvirk forrit hraðar. Fyrirtæki byrjuðu að nýta Golang þegar þau fóru að átta sig á hagstæðum möguleikum þess.
Golang hefur verið afar áhrifaríkt við að kveikja áhuga þróunaraðila, aukið grunnnotkun þeirra og þar af leiðandi atvinnutækifæri. Svörin við áðurnefndum spurningum, sem eru þær algengustu sem spurt er um í Golang viðtölum, geta hjálpað þér að fá Golang starfið sem þú ert að sækjast eftir.
Sjá Viðtalssería Hashdork um aðstoð við undirbúning viðtals.
Skildu eftir skilaboð