Fordeler og ulemper med Golang (Go)

Go, ofte referert til som Golang, er et åpen kildekode-programmeringsspråk fra Google, og gjorde sin første stabile utgivelse i 2011. Robert Griesemer, Rob Pike og Ken Thompson initierte først designet for Go i 2007, og det ble åpent i 2009.

Punkt å merke seg : Golang er inspirert av språk som Modula, Smalltalk, Oberon, Algol, Pascal, C og Newsqueak.

Programmeringsspråket er arvet fra Oberon-språket, mens syntaksen ble inspirert av C, OOP fra Smalltalk. Samtidigheten ble hentet fra Newsqueak.

Det er på tide å gå

Hovedårsaken til at Googles Golang ble så populær er at den ga noen gode fordeler sammenlignet med andre raske språk, for eksempel C.

Kompilering av kjøretidsfeil, avhengighet og hastighet er enorm, så språk som Ruby, Node.js eller Javascript gir ikke noen ganger de ønskede resultatene. Node og JS er litt ville, Ruby kan bli en, men usikker og langsom, og Java kan til tider bli omfattende og kompleks.

Go bekjemper disse problemene til en viss grad og gir noen fordeler for brukeren. Selvfølgelig er det også noen ulemper, når alt kommer til alt har du to sider av mynten.

 

1) Påloggingsinformasjonen

Google finansierer Golang . Og den har noen ekte genier, da skaperne, Robert Griesemer, Rob Pike og Ken Thompson allerede er kjent for sine bidrag i Unix, JVM, C, B etc. Interessant er troen på at språket ble bygget for å bekjempe problemene i fortiden, og for å forutse fremtidige utfordringer.

2) Det er lett å lære

Hvis teamet ditt av utviklere ønsker å skifte fra det gamle språket til et nytt, ville Go være et godt valg fordi det bare er en liten endring i syntaksen, siden den ser nesten ut som andre lærte språk. Dokumentasjonen er også enkel å følge. Teamet kan mestre det i løpet av få uker, noen ganger til og med timer hvis du bruker standardbiblioteket. Å skrive en enkel kommandolinjeapp og enkel HTTP-server er alt et stykke kake.

3) Samtidighet

Samtidighet er beryktet for å være vanskelig, men heldigvis med dette åpen kildekode er programmeringsspråk samtidighet og veldig enkel. Utvikleren kan fullføre forespørslene raskere, og frigjøre ressursene for maskinvare og nettverk mye tidligere.

4) Åpen kildekode av natur

Hvis det er noen problemer, vil gophers, som Golang-utviklerne kalles, oppdage og rette opp problemene, slik at de lett løses før de blir et problem.

5) Søppel samlet språk

Språket gjør det lettere for utviklerne å utføre aktiviteter som minnehåndtering. Den håndterer alt kjørearbeidet av seg selv.

6) Statisk kodeanalyse

Programmeringsspråket er helt avhengig av statisk kodeanalyse. For eksempel godoc for dokumentasjon, glimt for kodestiloppføring, gofmt for kodeformatering og så videre. Go-verktøyene er implementert som frittstående kommandolinjeapplikasjoner, slik at de enkelt kan integreres i ethvert kodemiljø. Språket gjør en god jobb med statisk kodeanalyse, og det dekker ryggen din, så det gjør det pålitelig.

7) Leveres med innebygd testverktøy

Utviklere elsker det faktum at språket kommer med et innebygd testverktøy og det faktum at det har det enkleste API. Effektiviteten til dette verktøyet gjør det enkelt å teste og profilere kjørbare koder. Avanserte funksjoner som å kjøre tester parallelt, merke testene og så videre er også tilgjengelige.

8) Språket er raskt

Den enkle strukturen og syntaksen er definitivt en fordel, og utviklere synes det er lettere å lære. I tillegg er det blottet for arv og klasser. Dette gjør det lettere for deg å frigjøre et produkt i markedet raskt, og enda bedre, vedlikeholde det.

9) Kompilert direkte til maskinkoden

Ettersom Go ikke har noen virtuell maskin, kan den kompileres direkte til maskinkoden hvis du kan ekskludere Go’s mellomledd. Dette gjør det veldig fort. I tillegg kan du kompilere plattformer til Windows, Android, Linux og mange flere.

10) Søt maskot

Hvis utseende har noen betydning for deg, vil du bli forelsket i den søte gopher-maskoten som er identiteten til språket.

Noen få selskaper som allerede bruker Go:

  • Google
  • YouTube
  • Facebook
  • BBC
  • eple
  • Docker
  • Twitter
  • New York Times
  • Dropbox
  • Økonomen
  • IBM

I følge Tiobe-indeks Programming Language Hall of Fame gikk til Go i 2016. Sjekk bildet nedenfor:

GitHub presenterer også liste over populære programmeringsspråk . Go er i de første 15. Sjekk det nedenfor:

Ulempene

1) Et ungt språk, så det utvikler seg fortsatt

Å være et veldig ungt språk, kan utviklere synes det er vanskelig å utnytte bibliotekene maksimalt. De må kanskje skrive bibliotekene selv, og det er ikke mange bøker eller online kurs for å hjelpe, mens de er i tvil.

2) Fravær av manuell minnehåndtering

Manuell minnestyring er viktig, og mangelen på det kan føre til overheadavfall, problemer som pauser, som igjen kan føre til systemprogrammering.

3) For enkelt

Enkelheten i språket kan være et problem, da det gjør det overfladisk. Og i et forsøk på å gjøre det enkelt, kastet språket bort flere år med programmeringsspråk.

4) Feilhåndtering er ikke perfekt

Selv om feilhåndtering ikke er perfekt i Go, kan ufullkommenheten få deg. Det søkes fortsatt etter løsninger, og forslag har kommet opp for feilhåndtering.

5) Runtime-sikkerhet er ikke så bra

Go er trygt, men det gir ikke sikkerhetsnivået som Rust gir. Sikkerhetsnivået er bare kompileringstid og til en viss grad kjøretid. Go fokuserer på produksjonshastigheten, og Rust konsentrerer seg om sikkerhetsaspektet.

Andre ulemper inkluderer overbelastning av operatører og problemer med kodeduplisering og metaprogrammering fordi de ikke kan kontrolleres statisk.

Avsluttende tanker

Go er definitivt et godt valg når du er på et nytt prosjekt, eller planlegger å forbedre det neste. Når du først er vant til Golang-utviklingen, kan du gjøre den til vanlig, fordi fordelene er langt bedre enn sammenlignet med ulempen.

Det hjelper deg med å bygge komplekse apper i tidslinjen og budsjettet og kan enkelt håndtere 1000 samtidige forespørsler per sekund, noe som kan være notorisk vanskelig på andre språk. Tross alt kan du bygge dine egne produkter uten å bruke noen tredjeparts tjenester.

Interessante artikler:
Interessante svar på quora om fordeler og ulemper ved Golang.
Sjekk hva utviklere sier om Go-programmeringsspråket.

Bildekilde: Flickr.com/ Waldherr / tshein


Forfatteren: Reema Oamkumar er engasjert som tankeleder på www.Software-Developer-India.com som er en del av YUHIRO Group. YUHIRO er en tysk-indisk bedrift som tilbyr programmerere til IT-selskaper, byråer og IT-avdelinger.

Legg igjen en kommentar

Dette nettstedet bruker Akismet for å redusere spam. Lær om hvordan dine kommentar-data prosesseres.