Go je moderný open source programovací jazyk, ktorý umožňuje jednoduchšie budovať spoľahlivé a efektívne softvérové riešenia.
Jednoduché a konzistentné Rýchle a efektívne Spoľahlivé a bezpečné Vynikajúci tooling Silná podpora a komunita

CHALLENGE - RESHAPE - BOOST

Prečo Go?

Väčšina dnešných programovacích jazykov vznikla pred globálnou érou internetu a viacjadrových procesorov.
Počas niekoľkých dekád svojej existencie sa snažili obsiahnuť všetky trendy danej doby a niektoré sa značne skomplikovali.
Go programovanie je iné.
Go vytvorila skupina vývojárov v Google, keď potrebovali sieťové servre a distribuované systémy a dostupné jazyky nedokázali pokryť ich potreby. Nový jazyk a tooling bol vytvorený aby si poradil s nedostatočným tempom vývoja a obtiažnosťami pri programovaní veľkých škálovateľných systémov a od začiatku navrhnutý pre jednoduché využitie viacjadrových procesorov.

Jednoduché

Od začiatku navrhované na jednoduchých princípoch, konzistentnosti a čitateľnosti.

Silná podpora

Podpora od Google a množstvo existujúceho toolingu a knižníc.

Vysoko výkonné

Veľmi rýchla kompilácia a výkon jednoducho využívajúci všetky jadrá moderných procesorov.

Výborná komunita

Go je open source project s otvorenou komunitou, konferenciami, diskusiami a tisíckami verejných repozitárov.

Spoľahlivé

By design: statický typový systém, garbage collector, návrat chýb, modularizácia, minimálne závislosti.

Dokumentácia

Výborne zdokumentované balíčky, návody a príklady priamo na golang.org stránke alebo go help doc.

Blog

Generics – generické programovanie

Thursday, Mar 10, 2022 | by Lenka | navody programovanie generics

Generické programovanie, tiež známe ako parametrický polymorfizmus v iných programovacích jazykoch, je spôsob ako oddeliť algoritmus od konkrétneho typu. Abstrahovaním typu umožňuje bežným zápisom funkcií podporovať viaceré, aj vopred neznáme typy argumentov funkcií a tým znižovať počet duplikácií funkcií. Ako vlastnosť programovacieho jazyka Go neboli generické prvky obsiahnuté v prvej verzii (Go1.x) ani v dizajne jazyka. Autori odmietali kvôli komplikovanosti a spomaleniu kompilácie C++ “template metaprogramming” riešenie aj “type erasure” riešenie Javy kvôli problémom so zabúdaním typov a pretypovávaním.

Pokračovať v čítaní

Reflexia v Go - reflection

Tuesday, Feb 1, 2022 | by Lenka | navody programovanie reflection reflect interface value of type of kind

Reflexia je schopnosť programu skúmať a analyzovať svoju štruktúru za behu programu. Väčšinou s premennými, typmi a funkciami v Go pracujeme priamo. Keď potrebujeme typ, jednoducho ho definujeme: type Foo struct { A int B string } Keď potrebujeme premennú, jednoducho ju definujeme: var f Foo A keď potrebujeme pracovať s funkciou, jednoducho ju definujeme: func Do(f Foo) { fmt.Println(f.A, f.B) } Ale niekedy sa stane, že chceme pracovať s premennými za behu programu pomocou informácií, ktoré neexistovali, keď bol program písaný a kompilovaný.

Pokračovať v čítaní

Go metódy: priradenie funkcií typom

Monday, May 17, 2021 | by Lenka | navody programovanie methods receivers oop

Objektovo orientované programovanie v Go Striktne vzaté, Go nie je čistý objektovo orientovaný programovací jazyk, pretože nemá triedy a hierarchickú dedičnosť. Go však má zložené typy ako štruktúry, polymorfizmus prostredníctvom rozhraní, má prepracovanejšiu kompozíciu ako bežné objektovo orientované jazyky, zapuzdrenie na úrovni balíkov a podporuje definovanie metód na typoch. Tieto vlastnosti umožňujú Go objektovo orientovaný štýl programovania. Metódy Metóda je funkcia so špeciálnym argumentom prijímača správy - receivera. Pomocou prijímača môže metóda získať prístup k jeho vlastnostiam.

Pokračovať v čítaní

Go modules: Správa závislostí

Thursday, Mar 4, 2021 | by Lenka | navody programovanie moduly modules versioning go-get go-mod

Ako sa starať o závislosti (Dependency management) Keď kód používa externé balíky - balíky tretích strán, tieto balíky (distribuované ako moduly) sa stávajú závislosťami. Aby bol kód stále aktuálny, treba sa starať aj o tieto závislosti. Go poskytuje nástroje na správu závislostí, ktoré pomáhajú zaistiť bezpečnosť aplikácií pri začleňovaní externých závislostí. Závislosti, ako moduly, obsahujú importované balíky. Vývojari po celom svete robia svoje moduly dostupné a zdieľajú ich pre ostatných vývojarov.

Pokračovať v čítaní

TAK ČO HOVORÍŠ ?

Kontaktuj nás ak potrebuješ pomoc, veľmi radi pomôžeme.

Kontaktuj nás