Zdążyłem się już nieco przyzwyczaić do składni i poznać niektóre tajniki, wiec w moim uznaniu przyszła pora na kontynuację. Po doczytaniu i doszkoleniu się mogę śmiało przyznać że GoLang ma swoje zalety. Poza faktem ze jest open-sourcowy , ma stosunkowo prostą składnię co zdecydowanie ułatwia uczenie, Go ma też całkiem sporą wydajność (choć jak wspominałem binarki do najmniejszych nie należą),
a to powoduje z kolei że programy w nim pisane mają szerokie zastosowania w "backendzie".
Z zalet więc śmiało mogę wymienić :
--- prosta składnia
--- open-source (pokopać sobie można w kodzie kompilatora (co też pozwala na poznanie różnych ciekawostek))
--- ujednolicone i wbudowane w język nazewnictwo struktur i funkcji
--- ujednolicony styl , który wreszcie ucina debaty wielkich programistów na temat jakie wcięcia mają być w kodzie
--- kompilator w miarę inteligentnie informuje nas ERROREM gdy z uporem maniaka importujemy nie potrzebne pakiety.
--- ponadto takie małe ustrojstwo jak goroutines (o czym napiszę inszą razą) ułatwia i wspomaga nas przy programowaniu wielowątkowym.
Wygląda to naprawdę dobrze, a jestem na początku drogi i traktuję naukę Go jako dobrą zabawę i oderwanie od
pracy ot tak na rozluźnienie mięśni. Stąd wymowny tytuł tego arta wskazujący na skecz kabaretu Ani Mru Mru ...
bo moi drodzy tak odbieram w tej chwili naukę tego języka jak dobrą zabawę. Ale jak się okazuje może być strzałem w 10 bowiem Go jest jednym z lepiej opłacanych języków programowania (oczywiście nie zamierzam zostać płatnym zabójcą z korpo klepiącym w Go)
ale dla młodszych adeptów może być to jakaś wskazówka dla obrania kierunku rozwoju. Po tak wymownym wstępie wielu z was zapewne się zastanawia gdzie go by zastosować, bo na przykład Python'a wielu z nas używa do szybkiej automatyzacji różnych czynności.
No tu was zaskoczę , ale poczytałem to i owo w dokumentacji języka dostępnej TU,
przekopałem się przez tutorial, który z pomocą wspomnianych w poprzednim wpisie
książek pozwala mi go łatwiej rozumieć i poznawać oraz się uczyć. Zauważyłem, że świetnie daje sobie radę przy budowaniu API ,
parsowaniu danych JSON, XAML , YAML czy konstruowaniu mikroserwisów czy małych apkach serwerowych.
Ale nie piszę kolejnego Wstępniaka w stylu Pampucha, więc dla oderwania od tej hmm .. prozy
Tu macie darmowy WeBook/ebook An Introduction to Programming in Go Autorstwa Caleb'a Doxey'a w języku angielskim dostępny właśnie jako hmm chyba wymyśliłem nowe słowo (WeBook) do czytania jako książkostrona i jako tradycyjny PDF.
I teraz chyba przejdziemy to takiego w miarę prostego mikrokursu, w sumie tak bo nie mam zamiaru jak co niektórzy klepać wkoło jakie są typy zmiennych , kręcić 20 filmow po minimum 120min o funkcjach, strukturach
by zrobić sobie lukę na kolejne kilka godzin wideo z lasu o alternatywnych rozwiązaniach tylko po to by znów wracać na początek .... nie to wydaje mi się pozbawione sensu gdyż zwracam się niejako do ludzi, którzy programują w takim czy innym języku i znają podstawy, a ci który by chcieli zacząć przygodę z programowaniem właśnie od Go i nie mieli styczności z programowaniem szybko dostrzegą, że wskazane materiały doskonale omawiają i wyczerpują temat podstaw i opisów. Dlatego tak na szybko postaramy się bezboleśnie wejść w kod ...
(xbary wygoń kota)
...
Wiecie najważniejsze by przyswoić sobie składnię i jak to najlepiej zrobić - pokazać w prostym kodzie
i omówić ... gdyż to co się ukaże będzie nas prześladować w każdym programie niczym wspomniany kot xbarego
śpiący na klawiaturze
- package main
- import (
- "fmt"
- )
- func main() {
- fmt.Println("Hello World!")
- }
co stanowi kwintesencję języka czyli właśnie jego składnię. Więc tak prostymi słowami ...
w Go program to taka paczka w której chowamy różne drobiazgi. I tak najprościej sobie to wyobrazić.
więc mamy paczkę main (od której zawsze zaczyna się wykonywanie programu) i paczek może być wiele
cała ciężarówka jak przy przeprowadzce ... dlatego właśnie w pierwszym wierszu widzimy package main. jako ze tu niema wiele w tym kodzie ... mamy tylko jedną paczkę i to małą ... ale kazda biblioteka itd ... w większych programach będzie również paczką . Myślę ze paczka będzie bardziej obrazowa od skrótów myślowych z pierwszego arta o go
ale wróćmy do tematu ...
Wiec mając tą naszą paczkę "main" wkładamy do niej inną paczuszkę , albo kilka i to właśnie deklarujemy poprzez import ... czyli nasz program będzie używał paczuszki "fmt" .
fmt to taki pakiet/biblioteka który będzie zwyczajowo w niemal każdej paczce (coś jak wypełniacz) bowiem zawiera on usprawnienia formatowania i wypisywania danych.
dalej mamy jedyną naszą funkcję i do tego główną main() nie zwraca ona żadnych wyników i nie przyjmuje żadnych argumentów. Wniej znajduje się cały kod program zwany ciałem , a mieści się w obrębie nawiasów klamrowych { }. W tym banale mamy aż jedną linijkę kodu czyli nic wielkiego zwyczajne wywołanie publicznej funkcji Println, która znajduje się w paczce fmt a argumentem tej funkcji jest string "Hello World"
...
Prawda że składnia jest banalna i jak już wspominałem obywamy się bez kończenia wierszy ";"
dlaczego jednak napisałem funkcja publiczna ... no właśnie jak wspominałem wcześniej niema w Go modyfikatorów dostępu, ale gdy nasza funkcja ma nazwę pisaną dużym znakiem jest właśnie publiczna.
jeśli małymi znakami jest prywatna i nie możemy z niej skorzystać w innych paczkach poza tą w której jest.
I to w zasadzie wszystko co na tą chwile powinniśmy wiedzieć o składni -- prawda że prosto ?
W następnym wpisie napiszemy już jakiś program ze zmiennymi i stałymi nieco bardziej wyrafinowany
od Hello World , ale równie banalny.
