DevOpsiarz - artykuły z kategorii DevOps i programowanie
DevOps kanał na YouTube DevOps Polska discord: https://discord.gg/jgSjRjt RSS: https://devopsiarz.pl/rss.xml Mój Twitter Strona DevOpsiarz na FB Moje konto na LinkedIN Github

Programowanie w Go

Język programowania Go, zwany czasem Golang, to język zdobywający ostatnimi czasy coraz większą popularność, którą zawdzięcza nie tylko wsparciu firmy Google, dla potrzeb której początkowo powstał, ale także niskim progiem wejścia dla programistów, którzy znają już jakiś inny język imperatywny (np: C, C++ czy Python). Przez niski próg wejścia rozumiem tutaj sytuację, że jest relatywnie łatwy do nauczenia i nie posiada zbyt wielu zawiłości składniowych.


W języku Go powstało wiele użytecznego i popularnego oprogramowania, które przydaje się nie tylko w pracy typowo “DevOpsiarskiej”, ale też w pracy developerów innych języków programowania. By daleko nie szukać, wymienić można Dockera czy Kubernetesa, a to tylko jedne z wielu przykładów, które pokazują jak wszechstronny jest to język programowania.

Dzięki statycznej, natywnej binarce odpada nam problem martwienia się o zestawienie “skrojonego” środowiska na docelowej maszynie z odpowiednimi wersjami bibliotek. Możemy po prostu skopiowac binarkę na docelową maszynę i to jest wszystko. Oczywiście binarka musi być skompilowana pod odpowiedni system operacyjny na danej maszynie, ale dzięki mechanizmowi “cross-compilation” nie ma żadnego problemu kompilować programy napisane w Go na Windows, podczas gdy docelowo aplikacja będzie działać np. na systemach opartych o kernel Linuksa.


Ponadto warto wspomnieć o dobrej jakości bibliotece standardowej, która jest dostarczana wraz z językiem. Wraz z nią, dostajemy dobrej jakości interfejsy i metody do tworzenia m.in. aplikacji serwerowych lub klienckich dla potrzeb udostępniania lub odpytywania API, operacja na plikach i wielu innych przydatnych rzeczach. Dzięki temu jest mniejsza szansa, że do czegoś relatywnie prostego będziemy od razu musieli szukać jakiejś dodatkowej biblioteki, choć trzeba uczciwie przyznać, że język Go, a konkretnie jego biblioteka standardowa, z powodów swojej filozofii prostoty, nie posiada pewnych “podstawowych” narzędzi znanych z innych języków: np. zestawu funkcji dla list typu map/filter/reduce, czy nawet funkcji do zwracania wartości bezwzględnej.


Pełniejszą listą projektów pisanych z użyciem tego języka dysponuje często aktualizowane repozytorium na githubie Awesome Go, które dodatkowo pokazuje te projekty posegregowane listą kategorii.


W moim serwisie, który właśnie czytasz, oraz na kanale na YouTube, znajdziesz prosty kurs programowania w Go dla początkujących, który powinien ułatwić Ci rozpoczęcie przygody z tym ciekawym językiem. Większość materiałów będzie dostępna w postaci filmów na YouTube, jednakże będę się starał również przygotowywać wersje tekstowe dla osób, które preferują taką formę przekazu.

 

Lista artykułów w kategorii “programowanie w Go”