golang

Recenzia knihy Programovací jazyk Go

Recenzia knihy Programovací jazyk Go
Programovací jazyk Go, autor Alan A. A. Donovan a Brian Kernighan, je uvedený v tomto príspevku. Brian Kernighan je známy ako spoluautor Programovacieho jazyka C a samotná táto kniha bola pre generáciu inžinierov oddelená ako štandardný text. Program Go sa často označuje ako 21. storočie C a programovací jazyk Go môže byť pre neho veľmi dobre štandardným referenčným textom.

Začiatok

Kniha začína silným znakom Výukový program kapitola, ktorá vám ponúka jednoduchý program „Hello, World“ a tiež ukazuje niektoré z výhod používania Go. Minimalizmus určite osloví programátorov, ktorí ho majú nafúknuté knižnice. Nemôžete deklarovať premennú a nepoužívať ju vo zvyšku svojho programu Go. Knižnicu nemôžete importovať a nepoužívať vo svojom kóde. Jednoducho sa to nebude kompilovať. O formáte kódu sa nemusíte hádať. Napríklad veková bitka medzi:

func main ()

// A
func main ()

Vyrovnáva ho kompilátor, ktorý prijíma iba prvý a nie druhý. Ďalšie nuansy riešia nástroje ako gofmt, ktorý vezme váš zdrojový súbor Go a naformátuje ho štandardizovaným spôsobom. Všetky programy Go sa teda riadia rovnakou konvenciou, čo zase zlepšuje čitateľnosť kódu.

Prvá kapitola zdôrazňuje tieto predajné miesta a robí skutočne dobrú prácu, keď dáva čitateľom okúsiť, o čom je Go v skutočnosti: Jazyk na všeobecné účely určený na generovanie statických binárnych súborov s čo najmenším nadúvaním.

Stručnosť

Skúsení programátori sú unavení z učenia sa rovnakých konceptov ako pre cykly, príkazy if-else atď. Znova a znova pre rôzne jazyky. Prvá kapitola sa vkráda do všetkých týchto nudných informácií tým, že nabáda používateľov k písaniu jednoduchých programov Unix-y (ako to bolo v prípade programovacieho jazyka C).

Jedna nevýhoda tohto rýchle zavedenie je skutočnosť, že noví čitatelia budú syntaxou úplne zmätení. Programy po dvoch alebo troch príkladoch v prvej kapitole rýchlo začnú používať bodkové operátory a rôzne objektovo orientované programovacie koncepty. To je dôležité pre udržanie rýchlosti a stručnosti celkového zážitku z čítania a je to veľmi vedomou voľbou autorov.

Kniha tiež predpokladá, že čitatelia sú oboznámení s najmenej jedným programovacím jazykom predtým, ako si túto knihu prečítajú. Môže to byť jazyk Python, JavaScript, Java, C alebo akýkoľvek iný univerzálny jazyk.

Sprievodná webová stránka

Kniha obsahuje sprievodnú webovú stránku. Programy uvedené v knihe môžete priamo importovať z tejto webovej stránky a spustiť ich bez nutnosti písania (alebo kopírovania a vkladania z aplikácie Kindle). Na tejto webovej stránke si môžete dokonca zadarmo pozrieť prvú kapitolu (ktorá je mimochodom moja obľúbená) a rozhodnúť sa, či je táto kniha pre vás alebo nie.

Autori venovali pozornosť bolestiam programátora, ktorý sa snažil naučiť nový jazyk. Rozptýlenie je obmedzené na minimum, pričom každý webový odkaz na tento program je uvedený navrchu. Môžete teda načítať kód, spustiť ho, vyladiť ho a podľa potreby na ňom stavať.

Na tejto webovej stránke je tiež obsiahnutý komplexný zoznam errata. Môžete ho odkázať, ak si myslíte, že je niečo v poriadku.

Vážna vec

Ak čakáte jednoduchého sprievodcu kauzálnym skriptovaním, nie je to kniha pre vás. Dôvod je ten, že najskôr je pokrytá veľa pôdy a potom sú podrobnosti plnené, ako postupujeme k ďalším kapitolám.

Táto kniha je určená pre ľudí, ktorí chcú pochopiť konštrukty, dôkladné podrobnosti o tom, ako funguje Go. Budete vytvárať GIF, písať webové servery a vykresľovať sady Mandelbrot a ešte oveľa viac, ale nič z toho by nedávalo zmysel, pokiaľ by ste nevenovali pozornosť jemnejším bodom uvedeným v predchádzajúcich kapitolách (s tým, že kapitola 1 je niečím výnimkou, pretože je to myslené ako prehľad jazyka).

Väčšina zvyšku knihy sa zameriava na rôzne podrobnosti týkajúce sa syntaxe týkajúce sa syntaxe, vrátane slučiek riadenia vecí, premenných, funkcií, metód, rutín Go a oveľa viac. To všetko ilustruje to, že čitateľa núti prechádzať užitočnými programami a nie vymyslenými idealistickými scenármi.

Aj keby ste chceli preskočiť väčšinu kapitol uprostred knihy, dôrazne odporúčam preštudovať si kapitolu 5, aby ste pochopili paniku, manipuláciu s chybami a anonymné funkcie. Dôrazne by som však navrhol postupne prejsť všetky kapitoly, kým dôjdeme ku korunovačnému klenotu Go - Súbežnosť.

Dôraz na súbežnosť

Jazyk Go je navrhnutý od základu s ohľadom na súbežnosť. Väčšina moderných procesorov je viacjadrových a viacvláknových, ale programátori pohŕdajú komplikáciami, ktorým čelia pri písaní programov spustených na takejto architektúre. S cloudovým výpočtom smerujúcim k distribuovaným systémom bude súbežný kód čoskoro jediným dobre fungujúcim kódom.

Kapitola o súbežnosti je napísaná tak, aby vypudila z hlavy strach zo súbežného dizajnu. Je to komplikované, to áno, ale nie beznádejné. Kniha skvele objasňuje, ako vám program Go môže pomôcť vyvinúť z toho správne myslenie.

Záver

Skúsenosti s Kernighanom z prvých dní UNIXu sú stále veľmi životaschopné v modernej dobe cloudových desktopov, GPU, IOT, cloudu a čohokoľvek, čo bude nasledovať ďalej. On a Donovan odviedli skvelú prácu pri rozširovaní tejto múdrosti aplikačného dizajnu a filozofie UNIX pomocou jednoduchého moderného jazyka s ohľadom na výkon a ja nemám váhu odporúčať túto knihu komukoľvek, od študenta strednej školy až po staršieho softvérového inžiniera s desaťročia skúseností.

WinMouse vám umožňuje prispôsobiť a vylepšiť pohyb ukazovateľa myši na počítači so systémom Windows
Ak chcete vylepšiť predvolené funkcie kurzora myši, použite freeware WinMouse. Pridáva ďalšie funkcie, ktoré vám pomôžu vyťažiť zo svojej skromnej myš...
Tlačidlo ľavého kliknutia myši nefunguje v systéme Windows 10
Ak používate samostatnú myš s prenosným počítačom alebo stolovým počítačom, ale nefunguje ľavé tlačidlo myši vo Windows 10/8/7 z nejakého dôvodu uvádz...
Kurzor pri písaní v systéme Windows 10 skáče alebo sa pohybuje náhodne
Ak zistíte, že kurzor myši skáče alebo sa pohybuje sám, automaticky a náhodne pri písaní na notebooku alebo počítači so systémom Windows, niektoré z t...