Opi Go-sovelluksen kuvake

Opi Go

Koulutus · Ilmainen · iOS & Android · CoddyKit

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.

App Store — Lataa ilmaiseksiGoogle Play — Lataa ilmaiseksi
Hinta
Ilmainen, Pro-päivitys
Alustat
iOS ja Android
Kielet
22
Ikäraja
4+
Vaatimukset
iOS 15.1 tai uudempi
Go-oppimispolun aloitusnäyttö, jossa on Aloita ensimmäinen oppitunti -painike, päivittäistavoitteen rengas ja ominaisuuspyyntökorttiGo Kickoff Concepts and Setup -kurssin yleiskatsaus, jossa on edistymispalkki, maksuton ensimmäinen oppituntiryhmä ja Vaihda kurssia -painike
51Kurssia, A1–C1
-raceConcurrency Lab race detectorilla
PäivittäinUusi kata joka päivä
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ää

Go-oppimispolun aloitusnäyttö, jossa on Aloita ensimmäinen oppitunti -painike, päivittäistavoitteen rengas ja ominaisuuspyyntökortti
OppimispolkuAloitusnäyttö avautuu oppimispolkuun, jossa on aloituspainike, päivittäistavoite ja linkki Skill Hubiin.
Go Kickoff Concepts and Setup -kurssin yleiskatsaus, jossa on edistymispalkki, maksuton ensimmäinen oppituntiryhmä ja Vaihda kurssia -painike
Kurssin yleiskatsausEnsimmäinen kurssi, Go Kickoff: Concepts & Setup, on merkitty maksuttomaksi, ja se jakautuu kolmeen lyhyeen oppituntiin.
Koodieditori, jossa näkyy Go-ohjelma package main -määrityksellä, import fmt- ja fmt.Println-kutsuilla, ensimmäistä ohjelmaa käsittelevän oppitunnin vieressä
KoodieditoriOppitunti nimeltä Ensimmäinen ohjelmasi, jossa koodieditori on avoinna package main -tiedostossa ja näkyvissä on suorituspainike.
AI-chat-näyttö, jossa on ehdotettuja kehotteita keskeisten käsitteiden selittämiseen, vinkkien antamiseen, tietovisaan ja oppimispolun luomiseen
AI MentorChatin aloittaa neljä ehdotettua kehotetta: selitä keskeiset käsitteet, anna vinkkejä, pidä tietovisa tai laadi oppimispolku.
Vaalean teeman aloitusnäyttö, jossa näkyvät oppimispolku, päivittäistavoite ja Skill Hub
AloitusnäyttöSama aloitusnäyttö vaaleassa teemassa, aktiivisen kurssin alla näkyvät päivittäistavoite ja Skill Hub.

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.

  1. 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.

  2. Funktiot, slicet ja mapit

    Funktiot, joilla on useita paluuarvoja, defer ja variadiset parametrit, taulukot, slicet ja mapit sekä merkkijonot, fmt-muotoilu ja time-paketti.

  3. Structit, osoittimet ja interfacet

    Structit ja metodit, arvo- ja osoitinvastaanottimet, osoittimet, implisiittiset interfacet ja duck typing sekä upotus kompositiota varten.

  4. 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.

  5. Goroutinet, kanavat ja synkronointi

    Goroutine- ja kanavaperusteet, select- ja kanavamallit, mutexit ja sync-paketti, context peruutuksia varten sekä työtekijäpoolit ja putkistot.

  6. 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.

  7. Testaus, työkalut ja käyttöönotto

    Taulukkopohjaiset testit ja alitestit, komentorivisovellukset Cobran avulla, määritys Viperillä, rakenteinen lokitus slogilla ja monivaiheiset Docker-koonnit.

  8. 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.

  1. 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.

  2. 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.

  3. 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ä.

App Store — Lataa ilmaiseksiGoogle Play — Lataa ilmaiseksi
Tarkistettu viimeksi · Julkaisija: CoddyKit · Tietosuojakäytäntö
Saatavilla alustoilla iOS ja Android.