REKLAMA

Programista 5/2015 (36) – Anatomia języka Go

Go jest kompilowanym, współbieżnym, statycznie typowanym językiem programowania z automatycznym odśmiecaniem pamięci. Powstał pod szyldem firmy Google. Autorzy projektu są między innymi odpowiedzialni za powstanie UTF-8, systemu Unix, plan9 oraz wielu narzędzi, z których większość z nas korzysta do dzisiaj.

>>3 strony tego artykułu do pobrania w .pdf<<

Go wypełnia niszę pomiędzy C, Javą oraz Pythonem, zdecydowanie przyciągając zwłaszcza programistów z tej ostatniej grupy językowej. Opublikowany w 2009 roku szybko stał się popularnym wyborem dla aplikacji back-endowych – serwerów HTTP, API czy prostych narzędzi konsolowych. Bogata biblioteka standardowa, zawierająca wysokiej jakości implementacje protokołów sieciowych (tcp, udp, http, mail, smtp, rpc), serializacji (json, xml, gob), sterowników do baz danych (sql) oraz kryptografii (wszystko napisane w czystym Go, bez odwoływania się do bibliotek napisanych w C) zdecydowanie sprawiają, że język jest konkurencyjny w tej dziedzinie aplikacji. Kompilator tworzy pojedynczy, statycznie linkowany program, który bardzo ułatwia wdrażanie aplikacji na serwerach, pomijając wszelakie problemy ze spełnianiem zależności. Pisać w Go można na systemach Linux, Mac OS X, FreeBSD, NetBSD, OpenBSD, MS Windows oraz Plan 9 dla platform i386, amd64, ARM i IBM PowerPC.

Część osób zapewne nie zdaje sobie sprawy z tego, że w ich codziennym życiu kod napisany w Go przewija się dość często. Serwis dl.google.com został przepisany z C++ na Go około roku 2013. Odpowiada on za dystrybucje aktualizacji Chrome, SDK Androida, Google Earth i wielu innych danych hostowanych na serwerach Google. W 2011 roku powstał również projekt Vitess, który odpowiada za skalowanie instancji MySQL dla YouTube. Zatem za każdym razem, gdy oglądacie film na YouTube, w tle pracę wykonuje aplikacja napisana w Go. Popularna platforma konteneryzacji – Docker również w całości została napisana w Go. Przykłady można mnożyć prawie w nieskończoność. Go nabiera tempa. Jest używany produkcyjnie przez duże firmy do niebanalnych zadań.

Artykuł pochodzi z miesięcznika "Programista" nr 5/2015 (36). Spis treści całego wydania magazynu: http://programistamag.pl/programista-5-2015-36/

Autorem artykułu jest Adam Wołk. W latach 2003/2007 programował aplikacje webowe w języku Perl oraz Ruby, w 2007/2014 rozwijał system bankowy w języku Oracle PL/SQL. Obecnie programuje w C, Go oraz Dart, tworząc serwis koparo.com. Przygodę z OpenBSD rozpoczął w 2014 roku. Prowadzi bloga o tematyce programowanie/OpenBSD.

Zamów w prenumeracie: >>formularze zamówienia<<

go-1