Opi Go
Opi Go — Golang-opas, jossa on kääntäjä, race detector ja päivittäisiä katoja puhelimessasi
Opi Go on ilmainen iOS- ja Android-sovellus aloittelijoille ja työskenteleville kehittäjille. Se sisältää Golang-opetuksen, Go-kääntäjän ja editorin, joka suorittaa koodisi oikealla Go toolchainilla (internet-yhteys tarvitaan). Tarkista koodisi työkaluilla gofmt, go vet ja race detector, ja etene 51 kurssilla ensimmäisestä fmt.Println-komennosta goroutineihin, REST API -rajapintoihin ja gRPC:hen. AI-mentori auttaa kohdissa, jotka eivät heti aukea.
- Hinta
- Ilmainen, Pro-päivitys
- Alustat
- iOS ja Android
- Kielet
- 22
- Ikäraja
- 4+
- Vaatimukset
- iOS 15.1 tai uudempi


Poista go-avainsana ja katso, kuinka sama työ kestää kolme kertaa kauemmin.
Tämän sovellus laittaa sinut tekemään Go:lla ensimmäiseksi: suorita kolme 120 ms:n työtä, näe kokonaisajan jäävän reilusti alle 360 ms:n ja poista sitten ainoa avainsana, joka teki niistä rinnakkaisia. Kielen koko idea kiteytyy tuohon yhteen sanaan, ja sovellus antaa sinun kokea sen ennen kuin se selittää, mistä on kyse.
Mikä se on
Opi Go on ilmainen iOS- ja Android-sovellus Go:n oppimiseen. Go on käännettävä kieli, jonka varaan suuri osa nykyisistä pilvi- ja palvelinohjelmistoista rakentuu. Sovelluksessa on 51 kurssia ja 203 oppituntia aloittelijatasolta edistyneelle, editori, joka suorittaa ohjelmat oikealla Go toolchainilla, päivittäinen kata, Concurrency Lab oikealla race detectorilla sekä ohjattu kokonaisuus, jossa rakennat oman HTTP-ytimen. AI-mentori vastaa mitä tahansa oppituntia koskeviin kysymyksiin.
Sovelluksen sisältö
Miltä se näyttää





Kurssi
Mitä Go-kurssi sisältää
51 kurssia ja 203 oppituntia sovelluksen omasta kurssiluettelosta, tasoilla A1–C1 ja ensimmäisestä ohjelmasta profilointiin ja roskienkerääjään asti.
Tervetuloa Go:n pariin ja perusteet
Mikä Go on ja miksi Google loi sen, minkä jälkeen käsitellään muuttujat, tyypit ja nolla-arvot, vakiot sekä ohjausvirta if-, for- ja switch-rakenteilla.
Funktiot, slicet ja mapit
Funktiot, joilla on useita paluuarvoja, defer ja variadiset parametrit, taulukot, slicet ja mapit sekä merkkijonot, fmt-muotoilu ja time-paketti.
Structit, osoittimet ja interfacet
Structit ja metodit, arvo- ja osoitinvastaanottimet, osoittimet, implisiittiset interfacet ja duck typing sekä upotus kompositiota varten.
Virheet, paketit ja standardikirjasto
Eksplisiittinen virheenkäsittely errors.Is- ja errors.As-funktioilla, paketit ja moduulit, tiedostojen I/O ja JSON, säännölliset lausekkeet, lajittelu ja puskuroitu I/O.
Goroutinet, kanavat ja synkronointi
Goroutine- ja kanavaperusteet, select- ja kanavamallit, mutexit ja sync-paketti, context peruutuksia varten sekä työtekijäpoolit ja putkistot.
HTTP, REST ja tietokannat
HTTP-palvelimet ja -asiakkaat net/http-kirjastolla, REST API:t Ginillä, middleware-mallit, database/sql sqlx:n ja pgx:n kanssa, GORM ja WebSockets.
Testaus, työkalut ja käyttöönotto
Taulukkopohjaiset testit ja alitestit, komentorivisovellukset Cobran avulla, määritys Viperillä, rakenteinen lokitus slogilla ja monivaiheiset Docker-koonnit.
Edistynyt Go
Generics type parameters- ja constraints-määrityksillä, benchmarkkaus ja pprof-profilointi, gRPC Protocol Buffers -tekniikalla, reflektio ja muistimalli.
Miten se toimii
Miten oppitunti etenee
Jokainen oppitunti on lyhyt lukupaketti, jota seuraa ajettava koodi, joten idea ja harjoittelu tapahtuvat saman istunnon aikana.
Lue yksi lyhyt oppitunti
Avaa kurssi ja suorita muutaman minuutin pituinen yksittäinen oppitunti. Teoria kerrotaan selkeästi ja mukana on pieni esimerkki, kuten ensimmäisen oppitunnin package main- ja fmt.Println-ohjelma.
Suorita se oikealla Go toolchainilla
Editor lähettää ohjelmasi Go-runnerille ja näyttää tulosteen. Myös gofmt, go vet ja race detector suoritetaan samalla tavalla, joten sovellus tarvitsee yhteyden, kun painat suorituspainiketta. Jos ohjelma kaatuu, näet virheestä selkokielisen selityksen.
Harjoittele sitä toisesta näkökulmasta
Kun aihe on käsitelty, tee tietovisa, ratkaise päivittäinen kata, etene rinnakkaisuuspulmassa vaihe vaiheelta tai pyydä AI-mentoria testaamaan tietosi. Jokainen harjoitus tarkastelee samaa ideaa eri tavalla, mikä auttaa muistamaan sen.
Mitä se sisältää
Mitä sovellus sisältää
51
Kurssia, A1–C1
203 oppituntia 51 kurssilla: Go:n perusteista, sliceistä ja map-rakenteista aina interfaceihin, virheenkäsittelyyn, goroutineihin, net/http:hen, Giniin, tietokantayhteyksiin, Docker-käyttöönottoon, gRPC:hen ja garbage collectoriin.
-race
Concurrency Lab race detectorilla
Kuusi ajettavaa pulmaa käsittelee kahta goroutinea yhdellä channelilla, puskuroimatonta kättelyä, WaitGroup-fan-outia, päivityksiä hukkaavaa laskuria, kahden kirjoittajan map-rakennetta ja deadlockia. Voit myös suorittaa oman koodisi race detectorilla — ilmaiseksi ja ilman päivittäistä rajoitusta.
Päivittäin
Uusi kata joka päivä
Go-harjoitus, joka tarkistetaan tapaustaulukkoa vasten, myös piilotetut tapaukset mukaan lukien, ja jonka jälkeen saat viiteselityksen. Päivittäinen kata on ilmainen kaikille; Pro avaa koko kirjaston, viiteratkaisut ja selitykset.
Tohtori
Go Doctor
Tarkista, muokkaisiko gofmt tiedostoasi, ja ota muotoilu käyttöön. Suorita go vet löytääksesi havainnot ja kysy Pro-version avulla kääntäjän escape-analyysilta, miksi arvo varataan muistiin. Muotoilua voi käyttää rajoituksetta, ja ilmaisella paketilla go vet on rajoitettu kolmeen suoritukseen päivässä.
7 vaihetta
Rakenna oma HTTP-ytimesi
Ohjattu kokonaisuus, jossa kirjoitat itse pyynnön, vastauksen, funktioina toimivat handlerit, reitityksen, polkuparametrit, middlewaren ja JSON-käsittelyn wrapatuilla virheillä — yhden tarkistetun vaiheen kerrallaan.
AI
AI-mentori ja harjoitushaastattelu
Pyydä AI-mentoria selittämään käsite, laatimaan etenemissuunnitelma tai testaamaan tietosi. Harjoitushaastattelu esittää viisi Go-kysymystä juniori-, mid- tai senioritasolla ja pisteyttää vastauksesi. Yksi pisteytetty haastattelu viikossa on ilmainen.
Kertaus
Go Recall ja Go by Example
Lyhyitä ”mitä tämä tulostaa?” -kortteja klassisista kompastuskivistä, kuten defer-järjestyksestä, nil-map-rakenteista ja append-kutsujen jakamasta muistista, sekä ajettavia standardikirjaston koodiesimerkkejä, joita voit suorittaa ja muokata.
Taustaa
Miksi Go kannattaa opetella backend-työhön, ja mikä tekee siitä erilaisen?
Go on Googlessa luotu staattisesti tyypitetty, käännettävä kieli, jota käytetään laajasti verkkopalveluissa, komentorivityökaluissa ja pilvi-infrastruktuurissa. Backend-työssä sen vetovoima perustuu siihen, että paljon on rakennettu valmiiksi: rinnakkaisuus kuuluu kieleen, standardikirjasto kattaa suurimman osan pienen palvelun tarpeista ja ohjelma kääntyy yhdeksi binääritiedostoksi, jonka rinnalle ei tarvitse asentaa mitään. Kieli on tarkoituksella pieni, joten sitä on nopea lukea, mutta aloittelijan on omaksuttava varhain muutamia vieraita toimintatapoja.
Goroutinet ja channelitrinnakkaisuutta ilman hallittavia säikeitä
Goroutine on go-avainsanalla käynnistetty funktio, ja channel on putki, jonka kautta goroutinet välittävät arvoja. Yhdessä ne korvaavat suurimman osan itse kirjoitettavasta säikeiden hallinnasta, minkä vuoksi rinnakkaisuutta opetetaan heti alussa eikä vasta edistyneenä aiheena.
Virheet ovat arvojaei poikkeuksia
Go-funktio, joka voi epäonnistua, palauttaa virheen tavallisena toisena arvona, ja kutsuja tarkistaa sen saman tien. Koodia tulee kirjoittaa enemmän kuin try-lohkossa, mutta näin jokainen virhepolku näkyy lukemassasi koodissa.
Implisiittiset interfacetduck typing, joka tarkistetaan käännösaikana
Tyyppi toteuttaa interfacen vain, jos sillä on oikeat metodit; mitään ei tarvitse ilmoittaa erikseen. Tämä pitää paketit löyhästi kytkettyinä, ja juuri tässä piilee myös klassinen Go-yllätys: nil-osoittimen sisältävä interface ei itse ole nil.
Yksi binääritiedosto ja laaja standardikirjastomiksi käyttöönotto on helppoa
Käännetty Go tuottaa yhden suoritettavan tiedoston, ja net/http-, encoding/json- ja database/sql-pakettien kaltaiset paketit toimitetaan kielen mukana. Pieni palvelu ei usein tarvitse kolmannen osapuolen frameworkia, mikä on yksi syy siihen, että Go-ohjelmien Docker-imaget voivat olla pieniä.
Sopivuus
Kenelle se sopii – ja kenelle ei
Se sopii sinulle, jos
- Haluatko Golang-kurssin, jonka voit käydä läpi lyhyissä jaksoissa puhelimella
- Kirjoitatko jo toisella kielellä ja haluat nähdä goroutinejen ja kanavien toimivan käytännössä
- Tähtäätkö backend- tai pilvipalvelurooleihin ja haluatko Go-haastattelukysymyksiä pisteytetyllä palautteella
- Opitko paremmin pienistä harjoituksista ja kompastuskorttien avulla kuin pitkistä videoista
- Haluatko tarkistaa itse kirjoittamasi koodin muotoilun, vet-havainnot ja datakilpailutilanteet
Se ei ole oikea työkalu sinulle, jos
- Tarvitsetko net/http-kirjastoa tuovien tai generics-rakenteita käyttävien ohjelmien suorittamista sovelluksen sisäisessä suorittimessa, joka on Go 1.13 -hiekkalaatikko
- Haluatko suorittaa koodia ilman yhteyttä, koska suoritin toimii verkossa
- Odotatko kaiken olevan maksutonta: ensimmäinen kurssi, päivittäinen kata ja päivittäinen AI Mentor -kiintiö ovat maksuttomia, ja Pro avaa kaiken muun
- Tarvitsetko suuren monipakettisen palvelun rakentamiseen ja julkaisemiseen, mikä edellyttää edelleen kannettavaa tietokonetta ja täyttä työkaluketjua
Kysymykset
Usein kysytyt kysymykset
Mikä on paras tapa oppia Golangia puhelimella?
Lyhyet oppitunnit ja itse suorittamasi koodi päihittävät pelkän lukemisen, ja Go palkitsee asioiden kokeilemisesta, koska sen parhaat ominaisuudet, goroutinet ja race detector, ovat toiminnallisia. Opi Go yhdistää muutaman minuutin oppitunnit editoriin, päivittäiseen kataan ja Concurrency Labiin. Aloittaminen on maksutonta iOS- ja Android-laitteilla, ja tarjolla on 51 kurssia aloittelijasta edistyneeseen.
Voiko Go-koodia kääntää ja suorittaa puhelimella?
Kyllä, yhteyden kanssa. Opi Go lähettää ohjelmasi Go-suorittimeen ja näyttää tulosteen. Sama suoritin tarjoaa gofmt:n, go vetin ja race detectorin. Koodia ei suoriteta itse puhelimessa, joten sinun on oltava verkossa, kun painat suorituspainiketta. Suorittimella on myös rajoituksia, kuten pieni muistikiintiö ja binaaritiedoston enimmäiskoko.
Tukeeko sovelluksen sisäinen suoritin generics-rakenteita?
Ei vielä. Opi Go -sovelluksen suoritin käyttää Go 1.13:a, ja generics-rakenteet tulivat Go 1.18:ssa, joten type parameters -määrityksiä tai any-avainsanaa käyttävä ohjelma ei käänny siinä. Sovellus kertoo tästä selkokielellä ja ehdottaa vanhempaa muotoa. Generics-kurssin voi silti käydä läpi oppituntina.
Mikä on Go:n race detector ja miten sovellus käyttää sitä?
Race detector ilmoittaa, kun kaksi goroutinea käsittelee samaa muistia ilman niiden välistä lukkoa. Kyseessä on virhe, joka ilmenee vain osan ajasta. Opi Go -sovelluksessa Concurrency Lab suorittaa race detectorin alaisuudessa pulmia, kuten laskurin päivittämisen 200 goroutinella, minkä jälkeen voit lisätä mutexin ja suorittaa koodin uudelleen. Voit myös liittää oman goroutine-koodisi ja suorittaa sen detectorin alaisuudessa.
Mikä on Go-kata?
Kata on pieni, rajattu harjoitus, jonka ratkaiset koodilla, kuten merkkijonon kääntäminen oikein myös ei-ASCII-tekstille tai virheen kääriminen niin, että errors.Is löytää sen edelleen. Opi Go tarjoaa uuden päivittäisen katan, tarkistaa funktion taulukolla testitapauksia, joihin kuuluu piilotettuja tapauksia, ja selittää idiomin lopuksi. Päivittäinen kata on maksuton kaikille.
Tarvitsenko ohjelmointikokemusta aloittamiseen?
Et. Opi Go alkaa siitä, mikä Go on ja miksi se on olemassa, ja etenee muuttujiin, tyyppeihin ja ohjausvirtaan. Jokainen käsite selitetään selkokielellä ennen harjoittelua. Kokemus toisesta kielestä auttaa etenemään nopeammin alkukursseilla, mutta ensimmäinen kurssi on kirjoitettu täysin aloitteleville.
Onko Learn Go maksuton?
Sovelluksen voi ladata maksutta. Ensimmäinen kurssi, päivittäinen kata, päivittäinen AI Mentor -kiintiö, rajattomat gofmt-tarkistukset, rajattomat race detector -suoritukset ja muutama go vet -ajo päivässä ovat maksuttomia. Pro avaa kaikki kurssit, poistaa mainokset, tarjoaa rajattoman AI Mentorin sekä avaa katakirjaston ja escape-analyysin.
Saanko lopuksi todistuksen?
Kyllä. Loppukokeen läpäiseminen antaa kurssin suorittamisesta todistuksen. Se osoittaa tekemäsi työn ja sopii hyvin yhteen pienen projektin kanssa, jonka voit esitellä työhaastattelussa, mutta se ei ole akkreditoitu akateeminen tutkinto.
Auttaako Learn Go Golang-työhaastatteluihin valmistautumisessa?
Kyllä. Harjoitushaastattelussa esitetään viisi kysymystä junior-, mid- tai senior-tasolla. Aiheina ovat esimerkiksi slicet ja taulukot sekä se, mitä interface-arvo sisältää suorituksen aikana. Vastauksesi pisteytetään ja saat niistä palautetta. Go Recall -kortit harjoittavat tavallisia kompastuskiviä, ja haastattelussa heikot aihealueet lisätään kertauspakkaasi. Yksi pisteytetty haastattelu viikossa on maksuton.
Mitä alustoja ja kieliä se tukee?
Opi Go toimii iOS:llä App Storen kautta ja Androidilla Google Playn kautta, ja käyttöliittymä on saatavilla 22 kielellä. Sen ikäluokitus on 4+, joten materiaali ei sisällä mitään ikärajoitettua.
Aloita
Kirjoita ensimmäinen goroutine-koodisi tänään
Käytön voi aloittaa ilmaiseksi iOS:llä ja Androidilla 22 kielellä.
Lisää CoddyKitilta
Saatavilla alustoilla iOS ja Android.