Go logo

Język programowania Go

Język Go (inaczej Golang) to język programowania opracowany przez pracowników Google - Roberta Griesemera, Roba Pike'a oraz Kena Thompsona. Łączy w sobie łatwość pisania aplikacji charakterystyczną dla języków dynamicznych (np. Python, Lisp) oraz wydajność języków kompilowanych (np. C, C++). Głównymi założeniami twórców tego języka miały być prostota oraz dostosowanie do sposobu pracy w nowoczesnym środowisku IT.

Język Golang wywodzi się z tej samej rodziny języków co C i Java, a to oznacza, że składnia tych języków jest bardzo podobna. Programiści znający powyższe języki nie będą mieli problemu z szybkim opanowaniem języka Go. Obecnie Golang znajduje się na 16 miejscu na liście najpopularniejszych języków programowania wg Indeksu TIOBE (czyli miary popularności języków) (stan na maj 2021 r.).

Zalety Go:

  • język jest kompilowalny - co zapewnia wykrywanie błędów składni już w procesie kompilowania oraz przyspieszenie działania (w przeciwieństwie do języków interpretowanych),
  • statyczne typowanie - zapewnia większą optymalizację oraz możliwość wykrycia większej liczby błędów w czasie kompilacji,
  • prostota języka - ułatwia proces nauki języka, w szczególności osobom, które znają np. język C. Dzięki prostocie języka można skupić się na problemie, zamiast na sposobie, w jaki go rozwiązać,
  • wielowątkowość - pozwala wykonywać różne czynności z wykorzystaniem więcej niż jednego wątku,
  • wieloparadygmatowość - Go łączy w sobie paradygmaty funkcjonalne, imperatywne i obiektowe, co niweluje spadek czytelności kodu programu wraz ze wzrostem jego objętości,
  • rozbudowana dokumentacja -zawiera szczegółowe informacje na temat działania poszczególnych pakietów -> https://golang.org/pkg/,
  • bogaty pakiet standardowy - oferuje wiele rozwiązań do problemów często spotykanych w procesie tworzenia aplikacji.

Przykładowy kod


package main

import "fmt"
                                        
func main() {
                                        
    var a [5]int
    fmt.Println("emp:", a)
                                        
    a[4] = 100
    fmt.Println("set:", a)
    fmt.Println("get:", a[4])
                                        
    fmt.Println("len:", len(a))
                                        
    b := [5]int{1, 2, 3, 4, 5}
    fmt.Println("dcl:", b)
                                        
    var twoD [2][3]int
    for i := 0; i < 2; i++ {
        for j := 0; j < 3; j++ {
            twoD[i][j] = i + j
         }
     }
    fmt.Println("2d: ", twoD)
 }
  
      
Go logo
Aktualne szkolenia