Breve introdução à Linguagem de Programação Go Imprimir E-mail
Avaliação do Usuário: / 8
PiorMelhor 
Nerdices - Programação
Escrito por MDK   
Qua, 11 de Novembro de 2009 15:06
Go Programming Language Essa é a mais nova linguagem de programação disponível no mundo (e com licença BSD). E adivinhe quem está por de trás dela? Sim, o Google, o grande gigante da comunicação. Mas por que mais uma nova linguagem?

Segundo o próprio Google, não houve aparecimento de uma grande inovação em linguagens de programação na última década. Embora os computadores tenham se tornado mais rápidos, o desenvolvimento de applicações não acompanhou tal evolução. Há diversas outras explicações na página da linguagem, disponível em http://golang.org/

Lá você encontrará diversos tutoriais, dicas e a especificação desta nova lingugem de programação, que é baseada na família da linguagem C e com elementos sintáticos encontrados em Python.

Então vamos meter a mão na massa (ao menos um pouco Smile) Aqui seguem os passos para o download e instalação do mesmo (testado num Slackware 13), de acordo com a própria página de instalação (um artigo sobre a linguagem em si, com comparações à diversas outras será disponibilizado em breve):

Declare as seguintes variáves de ambiente (bom colocar isso em seu bashrc):
$GOROOT: diretório de trabalho do código fonte;
$GOOS: sistema operacional. As escolhas possíveis podem ser: linux, darwin ou nacl. Sim, eles não suportam windows, ao menos por hora.
$GOARCH: arquitetura de sua máquina, pode ser: amd64, 386 ou arm;
$GOBIN: diretorio onde os binarios serão colocados. Atente ao fato que tal diretório deve estar em seu $PATH, uma vez que serão copiados arquivos necessários para a própria compilação do Go.

Verifique também se seu sistema possui as seguintes dependências: ed e bison.

Faça o download a partir do Mercurial com o seguinte comando:
hg clone -r release https://go.googlecode.com/hg/ $GOROOT


Ou se preferir, baixe um snapshot feito agora a pouco, com 3,4Mb (contra 38Mb do mercurial)

Para a instalação você deverá estar conectado à internet para executar alguns testes durante a instalação. Desta forma (assumindo que todos as variáveis de sistema acimma citadas tenham sido corretamente definidas), entre com os seguintes comandos:
cd $GOROOT/src
./all.bash


Se tudo ocorrer bem a seguinte mensagem deverá ser impressa em seu terminal:
--- cd ../test
 N known bugs; 0 unexpected bugs


Caso encontre uma mensagem de erro da seguinte forma:
 make[2]: Entering directory `/home/mdk/projects/GO/src/pkg/archive/tar'
 6g -o _gotest_.6 common.go reader.go writer.go reader_test.go writer_test.go
 rm -f _test/archive/tar.a
 gopack grc _test/archive/tar.a _gotest_.6 
 make[2]: Leaving directory `/home/mdk/projects/GO/src/pkg/archive/tar'
 gotest: error: no tests matching Test([^a-z].*)? in _test/archive/tar.a
 make[1]: *** [test] Error 2
 make[1]: Leaving directory `/home/mdk/projects/GO/src/pkg/archive/tar'
 make: *** [archive/tar.test] Error 2


defina/sobreescreva a seguinte variável de sistema:
export LC_ALL=C



Com tudo instalado, você será capaz de escrever seu primeiro programa para testar o bagulho (teste.go):
// Isso e' um cometario
/* bem como este tambem! */

package main

import "fmt"

func main(){
 fmt.Printf("Ei, essa coisa funciona!!\n")
}


Compilando-o (frisando mais uma vez sobre as variaveis de sistema):
 6g teste.go

para 64 bits ou
8g teste.go

para 32 bits

Fazendo a ligação:
 6l teste.6


E por fim, executando:
 ./6.out


Há também um backend do gcc para tal, o gccgo
Se gosta de usar Makefiles, há exemplos em $GOROOT/src/cmd/godoc/Makefile e $GOROOT/src/pkg/*/Makefile
E para quem programa utilizando o excelente Vi IMproved (\o/), há o arquivo de sintaxe da linguagem em $GOROOT/misc/vim/vim.go

E é isto. Espero ter ajudado com esta rápida introdução ao Go. Em breve espero poder inserir mais material sobre o mesmo a todos que se interessarem pelo assunto.

Bom divertimento! Wink

Fontes: Mashable e Go Programming Language
Última atualização em Sex, 13 de Novembro de 2009 19:36
 


Queremos saber...

Nós temos 13 visitantes online

Tags

Login



Valid XHTML and CSS.