Jazyk Go je mladý, přesto se používá v mnoha klíčových systémech internetu a oblast jeho využití se bude každým rokem rozšiřovat. Není pochyb o tom, že naučit se programovat v jazyce Go je jednou z nejvýhodnějších investic pro programátora, který se rozhodne věnovat tomuto oboru Nabízíme vám bližší pohled na tento programovací jazyk.
Je téměř nereálné obsáhnout programování, respektive základy tohoto jazyka kompletně, ale z tohoto materiálu získáte základ, který vám umožní se dále učit. Než přejdeme k úvahám o tomto jazyce, je třeba si říci něco o historii jeho vzniku a struktuře. Následující materiál je určen především těm, kteří již znají nějaký jazyk podobný jazyku C. Programování v jazyce Go je možné, ale budete k tomu potřebovat speciální literaturu. Pokud máte znalost některého jazyka podobného C, bude pro vás mnohem snazší
.
Jazyk Go je pragmatický, ale některé věci lze nejlépe pochopit studiem historie jeho vzniku. Historie tohoto jazyka sahá až k jazyku C. Jazyk C se v mnoha ohledech stal základem pro vznik jazyka javascript, Ruby, Python, C++, C# a Java. Vliv jazyka C je cítit v mnoha jazycích. Byl vyvinut s následným cílem vyvinout jádra Unixu a s jeho pomocí vytvořit jádro Linuxu.
Na vývoji jazyka Go se podíleli nejznámější lidé z Unixu a C. Jsou to Robert Griesemer, Rob Pike a Ken Thompson, kteří byli kdysi zklamáni jazykem C kvůli jeho neustálým problémům. Bjarne Straustrup, tvůrce jazyka C++, řekl:
"V C se můžete střelit do nohy, v C++ je to obtížnější, ale když se střelíte, tak si celou nohu ustřelíte."
Go převzalo z jazyka C mnoho dobrých věcí. Klíčová slova, procedurální přístup jsou hlavními výhodami obou jazyků. Ruční správa paměti a doba kompilace je nevýhodou jazyka C. Go se jí zbavuje díky rubbish collection, bezpečné práci s pamětí a velmi rychlé kompilaci.
Jazyk Java se stává oblíbeným jazykem mnoha IT firem s velkými vývojovými týmy. Go si tento kladný bod vypůjčuje od Javy. Jazyk Go je již zatížen problémy objektově orientovaného programování, především pokud jde o dědičnost. Stručná syntaxe rozhraní tyto a mnohé další problémy řeší.
Je snadné najít podobnosti s dynamickými jazyky, Go si vypůjčuje styl kódu z Pythonu, přizpůsobitelnost z Ruby a jednoduchý paralelismus všitý do jádra jazyka jako Node.js. Vznikl nejprve jako jazyk, který řešil nejzákladnější problémy jazyka C, ale postupně se z něj stal nástroj pro všeobecné použití.