Fordele og ulemper ved Golang (Go)

Go, ofte kaldet Golang, er et open source programmeringssprog fra Google og lavede sin første stabile udgivelse i 2011. Robert Griesemer, Rob Pike og Ken Thompson startede først designet til Go i 2007, og det blev åbent i 2009.

Punkt at bemærke : Golang er inspireret af sprog som Modula, Smalltalk, Oberon, Algol, Pascal, C og Newsqueak.

Programmeringssproget er arvet fra Oberon-sproget, mens syntaksen blev inspireret af C, OOP fra Smalltalk. Samtidigheden blev taget fra Newsqueak.

Det er tid til at gå

Hovedårsagen til, at Googles Golang blev så populær, er at den præsenterede nogle få gode fordele sammenlignet med andre hurtige sprog, for eksempel C.

Kompilering af runtime-fejl, afhængigheder og hastighed er enorme, så sprog som Ruby, Node.js eller Javascript giver muligvis ikke nogle gange de ønskede resultater. Node og JS er lidt vilde, Ruby kan blive en men usikker og langsom, og Java kan til tider blive detaljeret og kompleks.

Go bekæmper disse problemer til en vis grad og giver brugeren nogle fordele. Selvfølgelig er der også nogle ulemper, når alt kommer til alt har du to sider af mønten.

 

1) Oplysningerne

Google finansierer Golang . Og det har nogle virkelige genier, da dets skabere, Robert Griesemer, Rob Pike og Ken Thompson allerede er kendt for deres bidrag i Unix, JVM, C, B osv. Interessant er troen på, at sproget blev bygget til at bekæmpe fortidens problemer og for at forudse fremtidige udfordringer.

2) Det er let at lære

Hvis dit team af udviklere søger at skifte fra deres gamle sprog til et nyt, ville Go være et godt valg, fordi der kun er en lille ændring i syntaksen, da det næsten ligner andre lærte sprog. Dokumentationen er også let at følge. Holdet kan mestre det inden for få uger, nogle gange endda timer, hvis du bruger standardbiblioteket. At skrive en simpel kommandolinjeapp og en simpel HTTP-server er alt sammen et stykke kage.

3) samtidighed

Samtidighed er berygtet for at være vanskelig, men heldigvis med dette open source programmeringssprog er samtidighed let og meget let. Udvikleren kan afslutte anmodningerne hurtigere og frigøre ressourcerne til hardware og netværk meget tidligere.

4) Open source af natur

Hvis der er problemer, vil gophers, som Golang-udviklerne kaldes, opdage og rette problemerne, så de løses let, før de bliver et problem.

5) Affald indsamlet sprog

Sproget gør det lettere for udviklerne at udføre aktiviteter som hukommelsesstyring. Det håndterer alt det runt arbejde alene.

6) Statisk kodeanalyse

Programmeringssproget afhænger fuldstændigt af statisk kodeanalyse. For eksempel godoc til dokumentation, glimt til kodeformatliste, gofmt til kodeformatering og så videre. Go-værktøjerne implementeres som enkeltstående kommandolinjeapplikationer, så de let kan integreres i ethvert kodemiljø. Sproget gør et godt stykke arbejde med statisk kodeanalyse, og det dækker din ryg, så det gør det pålideligt.

7) Leveres med indbygget testværktøj

Udviklere elsker det faktum, at sproget kommer med et indbygget testværktøj, og det faktum, at det har den enkleste API. Effektiviteten af dette værktøj gør det let at teste og profilere eksekverbare koder. Avancerede funktioner som at køre tests parallelt, markere testene og så videre er også tilgængelige.

8) Sproget er hurtigt

Den enkle struktur og syntaks er bestemt en fordel, og udviklere har lettere ved at lære. Derudover er den blottet for type arv og klasser. Dette gør det lettere for dig at frigive et produkt på markedet hurtigt og endnu bedre vedligeholde det.

9) Kompileret direkte til maskinkode

Da Go ikke har nogen virtuel maskine, kan den kompilere direkte til maskinkoden, hvis du kan udelukke Go’s formidlingssamling. Dette gør det virkelig hurtigt. Derudover kan du kompilere på tværs af platforme til Windows, Android, Linux og mange flere.

10) Sød maskot

Hvis udseendet har nogen betydning for dig, bliver du forelsket i den søde gopher-maskot, der er sprogets identitet.

Et par virksomheder, der allerede bruger Go:

  • Google
  • Youtube
  • Facebook
  • BBC
  • Æble
  • Docker
  • Twitter
  • New York Times
  • Dropbox
  • The Economist
  • IBM

Ifølge Tiobe-indeks Programming Language Hall of Fame gik til Go i 2016. Tjek billedet nedenfor:

GitHub præsenterer også liste over populære programmeringssprog . Go er i de første 15. Tjek det nedenfor:

Ulemperne

1) Et ungt sprog, så det udvikler sig stadig

At være et meget ungt sprog kan udviklere have svært ved at udnytte bibliotekerne maksimalt. De bliver muligvis nødt til at skrive bibliotekerne selv, og der er ikke mange bøger eller online kurser, der kan hjælpe, mens de er i tvivl.

2) Fravær af manuel hukommelsesstyring

Manuel hukommelsesstyring er vigtig, og manglen på det kan føre til overhead affaldsindsamling, problemer som pauser, hvilket igen kan føre til systemprogrammering.

3) For simpelt

Sprogets enkelhed kan være et problem, da det gør det overfladisk. Og i et forsøg på at gøre det simpelt spildte sproget flere års programmeringssprog.

4) Fejlhåndtering er ikke perfekt

Selvom fejlhåndtering ikke er perfekt i Go, kan ufuldkommenheden få dig. Der søges stadig efter løsninger, og der er kommet forslag til fejlhåndtering.

5) Runtime sikkerhed er ikke så god

Go er sikkert, men det leverer ikke det niveau af sikkerhed, som Rust giver. Sikkerhedsniveauet er kun kompileringstid og til en vis grad runtime. Go fokuserer på produktionshastigheden, og Rust koncentrerer sig om sikkerhedsaspektet.

Andre ulemper inkluderer overbelastning af operatører og problemer med kodekopiering og metaprogrammering, fordi disse ikke kan kontrolleres statisk.

Afslutning af tanker

Go er bestemt et godt valg, når du er på et nyt projekt eller planlægger at forbedre det næste. Når du først er vant til Golang-udviklingen, kan du gøre det mainstream, fordi dets fordele er langt overlegne sammenlignet med ulempen.

Det hjælper dig med at opbygge komplekse apps på tidslinjen og budgettet og kan nemt håndtere 1000 samtidige anmodninger pr. Sekund, hvilket kan være notorisk svært på andre sprog. Når alt kommer til alt kan du bygge dine egne produkter uden at bruge nogen tredjepartstjenester.

Interessante artikler:
Interessante svar på quora om fordele og ulemper ved Golang.
Tjek, hvad udviklere siger om Go-programmeringssprog.

Billedkilde: Flickr.com/ Waldherr / tshein


Forfatteren: Reema Oamkumar er engageret som en tankeleder på www.Software-Developer-India.com, som er en del af YUHIRO Group. YUHIRO er en tysk-indisk virksomhed, der leverer programmører til IT-virksomheder, agenturer og IT-afdelinger.

Skriv et svar

This site uses Akismet to reduce spam. Learn how your comment data is processed.