<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	>

<channel>
	<title>GnDx &#187; Google GO</title>
	<atom:link href="http://gndx.org/tag/google-go/feed/" rel="self" type="application/rss+xml" />
	<link>http://gndx.org</link>
	<description>Gnu/linux, Mac OS X &#38; Tecnología</description>
	<lastBuildDate>Tue, 22 May 2012 05:00:41 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.3.2</generator>
		<item>
		<title>Instalacion de Google GO en Mac OS X Snow Leopard</title>
		<link>http://gndx.org/2009/11/instalacion-de-google-go-en-mac-os-x-snow-leopard/</link>
		<comments>http://gndx.org/2009/11/instalacion-de-google-go-en-mac-os-x-snow-leopard/#comments</comments>
		<pubDate>Thu, 19 Nov 2009 11:08:02 +0000</pubDate>
		<dc:creator>GnDx</dc:creator>
				<category><![CDATA[Google]]></category>
		<category><![CDATA[Programacion]]></category>
		<category><![CDATA[Tutoriales]]></category>
		<category><![CDATA[Google GO]]></category>

		<guid isPermaLink="false">http://gndx.org/?p=3386</guid>
		<description><![CDATA[Hace unos días hablábamos de la Introducción al Lenguaje de programación de Google GO en el cual vemos un video de aproximadamente 50 minutos donde nos muestran una breve introducción al leguaje de programación de google donde incorpora el rendimiento y seguridad de C++ y la velocidad de Python. Bueno ahora me eh dado a [...]]]></description>
			<content:encoded><![CDATA[<p style="text-align: justify; ">Hace unos días hablábamos de la <a href="http://gndx.org/2009/11/introduccion-al-lenguaje-de-programacion-de-google-go/" target="_blank">Introducción al Lenguaje de programación de Google GO</a> en el cual vemos un video de aproximadamente 50 minutos donde nos muestran una breve introducción al leguaje de programación de google donde incorpora el rendimiento y seguridad de  C++ y la velocidad de Python. Bueno ahora me eh dado a la tarea de investigar un poco y trabajar con &#8220;GO&#8221; en <strong>Snow Leopard</strong>.</p>
<p style="text-align: center;"><img class="alignnone" src="http://i993.photobucket.com/albums/af51/gndx/google-go-logo.jpg" alt="" width="450" height="279" /></p>
<p style="text-align: justify; ">Para ello tenemos que cumplir con algunos requisitos entre ellos tener instalado La versión mas reciente de Python, Mercurial y XCode en nuestra Mac Intel.</p>
<p style="text-align: justify; "><strong>Descargar e Instalar XCode 3.2</strong></p>
<p style="text-align: justify; ">En mi caso utilice el xcode que venia en mi copia de Snow leopard por lo que no recurrí en bajarlo pero si no lo tienes te sugiero registrarte en Apple Developers y descargar una copia gratuitamente. &#8211; <a href="http://developer.apple.com/TOOLS/Xcode/" target="_blank">Descargar XCode</a></p>
<p style="text-align: justify; "><strong>Descargar e instalar Python 2.6.4 en Mac OS X</strong></p>
<p style="text-align: justify; ">En mi caso quise probar con la versión mas reciente de Python pues mi equipo contaba con la 2.6.2 por lo que decidí instalar la mas reciente desde el sitio oficial de Python. &#8211; <a href="http://www.python.org/download/" target="_blank">Descargar Python </a></p>
<p style="text-align: justify; "><strong>Descargar e Instalar Mercurial 1.4 en Mac OS X</strong></p>
<p style="text-align: justify; ">Mercurial es un sistema de control de versiones multiplataforma, para desarrolladores de software. Está implementado principalmente haciendo uso del lenguaje de programación Python. Por lo que es necesario instalarlo para trabajar con GO. &#8211; <a href="http://mercurial.selenic.com/" target="_blank">Descargar Mercurial </a></p>
<p style="text-align: justify; ">Ahora que tenemos lo necesario para trabajar vamos a agregar las variables necesarias para trabajar con Google &#8220;GO&#8221; en Mac OS X. Para ello tenemos que abrir una terminal y obtener las características de nuestro equipo. Mas información ( <a href="http://golang.org/doc/install.html" target="_blank">Install Google GO</a> )</p>
<p style="text-align: justify; "><strong># Google Go</strong><br />
<strong> export GOROOT=$HOME/go</strong><br />
<em> Nuestro directorio  principal, que puede ser cualquiera.</em></p>
<p style="text-align: justify; "><strong>export GOOS=darwin</strong><br />
<em> Nombre del sistema operativo en nuestro caso es &#8220;darwin&#8221; por usar Mac OS X 10.5.x o 10.6.x ) &#8220;linux&#8221; para sistemas operativos linux y &#8220;NaCI&#8221; para clientes nativos</em></p>
<p style="text-align: justify; "><strong>export GOARCH=386</strong><br />
<em> Nombre de la arquitectura entre las cuales puede estar amd64, 386, am.</em></p>
<p style="text-align: justify; ">Comprobar nuestra arquitectura en OS X<br />
En una terminal tecleamos:</p>
<blockquote>
<p style="text-align: justify; "><span style="color: #ff0000;">samantha:~ GnDx$</span> uname -p</p>
</blockquote>
<p style="text-align: justify; "><strong>export GOBIN=$HOME/bin</strong><br />
<em> Es donde se instalaran los binarios.</em></p>
<p style="text-align: justify; "><strong>export PATH=$GOBIN:$PATH</strong><br />
<em> Asignacion de la ruta.</em></p>
<p style="text-align: justify; ">Por lo que nuestras variables quedarían de la siguiente forma</p>
<blockquote>
<p style="text-align: justify; "># Google Go<br />
export GOROOT=$HOME/go<br />
export GOOS=darwin<br />
export GOARCH=386<br />
export GOBIN=$HOME/bin<br />
export PATH=$GOBIN:$PATH</p></blockquote>
<p style="text-align: justify; ">Lo anterior lo vamos a agregar al archivo <strong>.bash_profile</strong></p>
<p style="text-align: justify; ">En una terminal tecleamos lo siguiente:</p>
<blockquote>
<p style="text-align: justify; "><span style="color: #ff0000;">samantha:~ GnDx$</span> nano .bash_profile</p>
</blockquote>
<p style="text-align: justify; ">o</p>
<blockquote>
<p style="text-align: justify; "><span style="color: #ff0000;">samantha:~ GnDx$</span> vim .bash_profile</p>
</blockquote>
<p style="text-align: justify; ">Puedes elegir cualquiera de los dos editores en terminal para agregar las variables. Una ves agregadas las variables procedemos a comprobar que se agregaron al sistema para ello en la terminal tecleamos lo siguiente:</p>
<blockquote>
<p style="text-align: justify; ">samantha:~ GnDx$ source .bash_profile<br />
samantha:~ GnDx$ env | grep ^GO<br />
GOBIN=/Users/GnDx/bin<br />
GOARCH=386<br />
GOROOT=/Users/GnDx/go<br />
GOOS=darwin<br />
samantha:~ GnDx$</p></blockquote>
<div id="_mcePaste" style="position: absolute; left: -10000px; top: 1136px; width: 1px; height: 1px; overflow-x: hidden; overflow-y: hidden;">samantha:~ GnDx$ env | grep ^GO</div>
<div id="_mcePaste" style="position: absolute; left: -10000px; top: 1136px; width: 1px; height: 1px; overflow-x: hidden; overflow-y: hidden;">GOBIN=/Users/GnDx/bin</div>
<div id="_mcePaste" style="position: absolute; left: -10000px; top: 1136px; width: 1px; height: 1px; overflow-x: hidden; overflow-y: hidden;">GOARCH=386</div>
<div id="_mcePaste" style="position: absolute; left: -10000px; top: 1136px; width: 1px; height: 1px; overflow-x: hidden; overflow-y: hidden;">GOROOT=/Users/GnDx/go</div>
<div id="_mcePaste" style="position: absolute; left: -10000px; top: 1136px; width: 1px; height: 1px; overflow-x: hidden; overflow-y: hidden;">GOOS=darwin</div>
<div id="_mcePaste" style="position: absolute; left: -10000px; top: 1136px; width: 1px; height: 1px; overflow-x: hidden; overflow-y: hidden;">samantha:~ GnDx$</div>
<p>Ahora vamos a crear el repositorio con mercurial por lo que tecleamos lo siguiente en la terminal:</p>
<blockquote>
<p style="text-align: justify; "><span style="color: #ff0000;">samantha:~ GnDx$</span> hg clone -r release https://go.googlecode.com/hg/ $GOROOT</p>
</blockquote>
<p style="text-align: center;"><img class="alignnone" src="http://i993.photobucket.com/albums/af51/gndx/google-go-Instalacion.png" alt="" width="510" height="257" /></p>
<p style="text-align: justify; ">Nos movemos al directorio $GOROOT y luego a src/</p>
<blockquote>
<p style="text-align: justify; "><span style="color: #ff0000;">samantha:~ GnDx$</span> cd $GOROOT<br />
<span style="color: #ff0000;"> samantha:go GnDx$</span> cd src/</p></blockquote>
<p style="text-align: justify; ">Antes de terminar de construir GO en nuestro sistema tenemos que asegurarnos de tener la carpeta /bin si no existiera la creamos desde terminal y le asignamos permisos</p>
<blockquote>
<p style="text-align: justify; "><span style="color: #ff0000;">samantha:src GnDx$</span> mkdir ~/bin<br />
<span style="color: #ff0000;"> samantha:src GnDx$</span> chmod 755 ~/bin</p></blockquote>
<p style="text-align: justify; ">Para asegurarnos de que existe tecleamos en terminal:</p>
<blockquote>
<p style="text-align: justify; "><span style="color: #ff0000;">samantha:src GnDx$</span> [ -d ~/bin ] &amp;&amp; echo &#8216;bin exists&#8217;</p>
</blockquote>
<p style="text-align: justify; ">Ahora si vamos a instalar GO.</p>
<blockquote>
<p style="text-align: justify; "><span style="color: #ff0000;">samantha:src GnDx$</span> ./all.bash</p>
</blockquote>
<p style="text-align: justify; ">Esperamos a que termine de instalarse el lenguaje completo para proceder a hacer el típico Hola mundo en GO. Recordemos que es un lenguaje de programación que no tiene un entorno de trabajo visual por lo que todo lo realizamos desde terminal o podemos editarlo desde nano o vim.</p>
<p style="text-align: justify; "><strong>Nuestro primer programa en GO, Hola Mundo Cruel</strong>.</p>
<p style="text-align: justify; ">Primero tenemos que crear el archivo principal</p>
<blockquote>
<p style="text-align: justify; "><span style="color: #333399;"><span style="color: #ff0000;">samantha:prueba-1 GnDx$</span> </span>cat &gt;holamundo.go &lt;<br />
package main</p>
<p style="text-align: justify; ">import &#8220;fmt&#8221;</p>
<p style="text-align: justify; ">func main() {<br />
fmt.Printf(&#8220;Hola, Mundo Cruel By: GnDx\n&#8221;)<br />
}<br />
EOF<br />
<span style="color: #ff0000;"> samantha:prueba-1 GnDx$</span> ls  ( <strong>Comprobamos que existe</strong> )<br />
holamundo.go<br />
<span style="color: #ff0000;"> samantha:prueba-1 GnDx$</span> 8g holamundo.go ( <strong>Construimos nuestro programa </strong>)<br />
<span style="color: #ff0000;"> samantha:prueba-1 GnDx$</span> 8l holamundo.8 ( <strong>Creamos un enlace </strong>)<br />
<span style="color: #ff0000;"> samantha:prueba-1 GnDx$</span> ./8.out ( <strong>Ejecutamos nuestro programa</strong> )<br />
Hola Mundo Cruel By: GnDx<br />
<span style="color: #ff0000;"> samantha:prueba-1 GnDx$</span></p></blockquote>
<p style="text-align: justify; ">Aquí el resultado de nuestro primer programa hecho en Google GO.</p>
<p style="text-align: center;"><img class="alignnone" src="http://i993.photobucket.com/albums/af51/gndx/google-go-holamundocruel.png" alt="" width="505" height="295" /></p>
<p style="text-align: justify; ">Espero que les sirva como referencia para instalar Google Go y cada ves seamos mas interesados en un novedoso lenguaje de programación y que en mi punto de vista tiene mucho futuro. Para obtener mas información y una guía completa de como trabajar con Google GO visita los siguientes sitios:</p>
<p style="text-align: justify; ">Sitio Oficial: <a href="http://golang.org/doc/install.html">http://golang.org/doc/install.html</a><br />
Sitio Oficial de Tutoriales: <a href="http://golang.org/doc/go_tutorial.html" target="_blank">http://golang.org/doc/go_tutorial.html</a></p>
<p style="text-align: justify; ">
]]></content:encoded>
			<wfw:commentRss>http://gndx.org/2009/11/instalacion-de-google-go-en-mac-os-x-snow-leopard/feed/</wfw:commentRss>
		<slash:comments>3</slash:comments>
		</item>
	</channel>
</rss>

<!-- Performance optimized by W3 Total Cache. Learn more: http://www.w3-edge.com/wordpress-plugins/

Minified using disk: basic (Feed is rejected)
Page Caching using disk: enhanced
Database Caching 3/10 queries in 0.022 seconds using disk: basic
Object Caching 206/216 objects using disk: basic

Served from: gndx.org @ 2012-05-25 15:32:34 -->
