Tento web používá soubory cookie. Dalším používáním webu s tímto souhlasíte.
jméno
heslo
přihlásit
zaregistrujte se
zapomněli jste heslo?
The Go Programming Language - moderni programovaci jazyk
BLAMI
[http://golang.org/doc/gopher/pkg.png]
Go is an open source programming environment that makes it easy to build simple, reliable, and efficient software.

Web:
golang.org - ofic. www stranky projektu Go
code.google.com/p/go-wiki/w/list - ofic. go-wiki
code.google.com/p/go-wiki/wiki/Projects - semi-oficialni seznam Go projektu
go-lang.cat-v.org - ruzne zdroje na cat-v.org (Plan9/Bell Labs)
planet5.cat-v.org/ - Planet5 na cat-v.org, agregator zajimavych blogu o Go

Literatura:
The Way To Go: A Thorough Introduction To The Go Programming Language (Ivo Balbaert)
Programming in Go: Creating Applications for the 21st Century (Developer's Library) (Mark Summerfield)
Máte k tomu co říct? Vložte se do diskuze.
BULHI --- 20:47:38 15.8.2019
BULHI: hlavni zlepsovak pro me je, ze jsem zacal konecne pouzivat goimports :) sice jsem o tom vedel, ale dokud jsem to nevidel takhle na videu, tak jsem si neuvedomil, jak hrozne me ta hlaska "imported and not used" pokazdy vytoci :))
BULHI --- 20:55:59 7.3.2019
RAGNAROK: jo ten playground je takhle omezenej.. treba random cisla taky dostanes pokazdy stejnou sekvenci :)
RAGNAROK --- 10:16:10 7.3.2019
Takhle jsem si to nejak predstavoval:
The Go Playground
https://play.golang.org/p/OpMYk6K6kvp
akorat playground pro volani time.Now() vrati vzdycky, jinak to normalne funguje.
2009-11-10 23:00:00 +0000 UTC m=+0.000000001
RAGNAROK --- 8:34:27 7.3.2019
BULHI:
ten konstruktor je super. Me napadlo neco podobnyho. Ze bych vytvoril strukturu s parametrama a na te strukture definovat funkci. Zkousel jsem posilat parametry po jinym chanelu ale to mi nefungovalo.

Dekuji.
BULHI --- 5:56:52 7.3.2019
RAGNAROK: no hele nevim, jestli tomu uplne rozumim, ale timhle tu funkci rovnou zavolas s tema parametrama a predavas pak jeji vystup
func(10,"abc")


takze bud teda parametry musis predat pri jejim volani a dostat je tam nejak jinak:
 func worker(task func(string)) {
    task("asdf")
}

printer := func(s string) {
    fmt.Println(s)
}

worker(printer) 


nebo pouzit closure, tj treba nejakej jakoby konstruktor, kde nastavis promenny, takze neco ve smyslu:
 func worker(task func()) {
    task()
}

func createPrinter(s string) func() {
    return func() {
        fmt.Println(s)
    }
}

printer1 := createPrinter("asdf")
printer2 := createPrinter("qwerty")

worker(printer1)
worker(printer2) 


v Go ma anonymni funkce pristup k promennejm ve svym scope, coz je myslim stejne napriklad v Javascriptu, ale v PHP to myslim takhle nefunguje.. ale uz si teda nejsem jistej, nejak se mi to zacina plest :))
RAGNAROK --- 23:47:17 6.3.2019
Tady koukam na to jak pridavat joby do fronty.
Job Queues in Go - OpsDash
https://www.opsdash.com/blog/job-queues-in-go.html
Tohle funguje dobre:
 func worker(jobChan <-chan func()) {
    for job := range jobChan {
        process(job)
    }
} 


Akorat bych potreboval posilat funcke i s jejich prametrama na to nemuzu prijit jak. Ty parametry by meli mit hodnotu platnou prave v momente kdyz pridam job.
Napr:.
 <-func(10,"abc") 

to mi pise ze posilam value a ne funkci. Nevedel by nekdo prosim?
JAVAMAN --- 16:22:06 28.1.2019
tak ale doufam, ze se s tim nepotkam "in the wild" :D https://youtu.be/buJPwD5nW1g?t=112
RAGNAROK --- 16:20:18 28.1.2019
JAVAMAN:
to vypada nadejne.
JAVAMAN --- 16:14:52 28.1.2019
https://play.golang.org/p/TvkaGy3l1za nejsem moc mimo s pochopenim otazky?