﻿<?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>Alex&#039;s Blog =&#62; .Net MonoTouch MonoDroid &#38; MonoMac</title>
	<atom:link href="http://alexsoto.me/feed/" rel="self" type="application/rss+xml" />
	<link>http://alexsoto.me</link>
	<description>.NET &#38; MONO Everywhere</description>
	<lastBuildDate>Wed, 06 Feb 2013 16:27:36 +0000</lastBuildDate>
	<language>es-ES</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.5.1</generator>
		<item>
		<title>Para que sirve la keyword var en c#? Mitos Leyendas y Realidades</title>
		<link>http://alexsoto.me/para-que-sirve-la-keyword-var-en-c-mitos-leyendas-y-realidades/</link>
		<comments>http://alexsoto.me/para-que-sirve-la-keyword-var-en-c-mitos-leyendas-y-realidades/#comments</comments>
		<pubDate>Sat, 17 Nov 2012 05:39:49 +0000</pubDate>
		<dc:creator>dalexsoto</dc:creator>
				<category><![CDATA[csharp]]></category>

		<guid isPermaLink="false">http://alexsoto.me/?p=14</guid>
		<description><![CDATA[Hola de nuevo!!, después de algunos meses de tener abandonado el blog me he propuesto en volverlo a levantar las excusas y pretextos de porque no lo actualice salen sobrando así que espero estar un poco (un mucho) mas activo &#8230; <a href="http://alexsoto.me/para-que-sirve-la-keyword-var-en-c-mitos-leyendas-y-realidades/">Continue reading <span class="meta-nav">&#8594;</span></a>]]></description>
				<content:encoded><![CDATA[<!-- Start Shareaholic LikeButtonSetTop Automatic --><div style="clear: both; min-height: 1px; height: 3px; width: 100%;"></div><div class='shareaholic-like-buttonset' style='float:none;height:30px;'><a class='shareaholic-fblike' data-shr_layout='button_count' data-shr_showfaces='false' data-shr_href='http%3A%2F%2Falexsoto.me%2Fpara-que-sirve-la-keyword-var-en-c-mitos-leyendas-y-realidades%2F' data-shr_title='Para+que+sirve+la+keyword+var+en+c%23%3F+Mitos+Leyendas+y+Realidades'></a><a class='shareaholic-googleplusone' data-shr_size='medium' data-shr_count='true' data-shr_href='http%3A%2F%2Falexsoto.me%2Fpara-que-sirve-la-keyword-var-en-c-mitos-leyendas-y-realidades%2F' data-shr_title='Para+que+sirve+la+keyword+var+en+c%23%3F+Mitos+Leyendas+y+Realidades'></a><a class='shareaholic-tweetbutton' data-shr_count='horizontal' data-shr_href='http%3A%2F%2Falexsoto.me%2Fpara-que-sirve-la-keyword-var-en-c-mitos-leyendas-y-realidades%2F' data-shr_title='Para+que+sirve+la+keyword+var+en+c%23%3F+Mitos+Leyendas+y+Realidades'></a></div><div style="clear: both; min-height: 1px; height: 3px; width: 100%;"></div><!-- End Shareaholic LikeButtonSetTop Automatic --><p>Hola de nuevo!!, después de algunos meses de tener abandonado el blog me he propuesto en volverlo a levantar las excusas y pretextos de porque no lo actualice salen sobrando así que espero estar un poco (un mucho) mas activo en el blog subiendo nuevamente tutoriales sobre MonoTouch y sobre las nuevas plataformas en las cuales el equipo de mono se encuentra trabajando tales como MonoDroid y MonoMac .</p>
<p>Y donde están mis modales “Feliz Año Viejo” (Si viejo porque ya estamos en el 2011 =P ). Ok vamos al punto.</p>
<p>En estos dias festivos tuve una pequeña discusión con cierta persona (cuyo nombre sera “Bob” por obvias razones) donde el me vio programando utilizando la palabra reservada “var” para declarar ciertas variables a lo cual Bob en su gran experiencia (que ya tiene programando un buen tiempo en c#) me dice:</p>
<blockquote><p>
  Bob: Oye, porque utilizas “var” para declarar variables, eso hace tu código mas lento ya que le das mas carga al compilador, ademas de que tu código se hace mas difícil de leer, debes de declarar variables “Strongly Typed”</p>
</blockquote>
<p>Este comentario desenlazó una muy enriquecedora platica a lo cual me lleva a darles los siguientes puntos:</p>
<p>Utilizar “var” no hace que tus variables sean “weakly typed”, todas las variables que se declaran con “var” son “Strongly Typed”, C# por naturaleza es un lenguaje statico. “var” no es un tipo de dato, “var” lo que hace es decirle al compilador que busque e infiera el tipo de dato deseado, este se infiere al momento de compilar. Dado que el tipo de dato se infiere al momento del compilado, el utilizar “var” no hará que tu programa sea mas lento. “var” en la mayoría de los casos es opcional, pero existen casos donde su uso es forzoso. La palabra reservada “var” como ya lo mencione, no es un tipo de dato. System.String si es un tipo de dato, int32, UInt32, float, decimal, object etc. Si son tipos de dato, pero “var” definitivamente no lo es. El tipo de dato es inferido al momento del compilado de la aplicación, este es inferido gracias a lo que se encuentra en la parte derecha de el simbolo de = como lo podemos ver en el siguiente ejemplo.</p>
<pre><code class="language-cs">var variable = 10;</code></pre>
<p>Es totalmente identico hacer lo siguiente:</p>
<pre><code class="language-cs">int variable = 10;</code></pre>
<p>En ambos casos la variable se hace “Strongly Typed” a una variable de tipo entero, así que si nosotros intentamos lo siguiente esto no va a compilar por nada del mundo:</p>
<pre><code class="language-cs">var variable = 10;
variable = "Quiero que seas Diez";</code></pre>
<p>Así que siguiendo la logica, ninguno de los siguientes casos compilará:</p>
<pre><code class="language-cs">var variable; //Este no compila obviamente porque no tiene de donde inferir el tipo de dato.
var variable = null; //Tampoco compilará porque que tal si quisiéramos que variable fuera igual a 10</code></pre>
<p>Dado la logica de arriba este siguiente ejemplo tampoco compilará:</p>
<pre><code class="language-cs">int variable = null;</code></pre>
<p>Una cosa en lo que si le doy la razón a Bob es que si usamos de manera exagerada la sentencia “var” en nuestro código si se reducirá la legibilidad de nuestro código de manera significativa, pero tambien esta el otro lado, “var” nos puede ayudar a reducir drasticamente lo escrito de código, ademas de aumentar como se lee el código, como podemos ver en el siguiente ejemplo:</p>
<pre><code>var configuracion = new List&lt;KeyValuePair&lt;string, string&gt;&gt;();
List&lt;KeyValuePair&lt;string, string&gt;&gt; configuracion = new List&lt;KeyValuePair&lt;string, string&gt;&gt;();
</code></pre>
<p>En este ejemplo la palabra reservada “var” es opcional ya que es elección de nosotros lo programadores si la usamos o no. Tambien como lo mencione anteriormente hay veces que el uso de “var” es imposible de evitar, como lo es en el caso de linq:</p>
<pre><code class="language-cs">var query = clientes.Select( c => new { Nombre = c.Nombre } );
//—————————————————————
var query = from c in clientes
select new
{
    Nombre = c.Nombre
};</code></pre>
<p>Estos 2 últimos ejemplos son 2 formas de expresar una sentencia en LINQ, esto regresa un tipo “Anonimo”, pero no se confundan un tipo anonimo no significa que estemos utilizando variables “weakly typed”, Al contrario estamos utilizando variables “Strongly Typed” solo que le estamos dando el trabajo al compilador de que el cree el Tipo de dato necesario.</p>
<p>Espero que con esto quede mucho mas claro cuando usar “var” y hayan quedado claros algunos de los mitos y leyendas que circulan alrededor de el uso de esta palabra reservada.</p>
<p>Cualquier duda o comentario ya saben no duden en preguntar u opinar Saludos!!</p>
<p>Alex Soto</p>
<div class="shr-publisher-14"></div><!-- Start Shareaholic LikeButtonSetBottom Automatic --><!-- End Shareaholic LikeButtonSetBottom Automatic -->]]></content:encoded>
			<wfw:commentRss>http://alexsoto.me/para-que-sirve-la-keyword-var-en-c-mitos-leyendas-y-realidades/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>Acceso a MySQL desde el iPhone utilizando MonoTouch C# desde cero</title>
		<link>http://alexsoto.me/mysql-desde-el-iphone/</link>
		<comments>http://alexsoto.me/mysql-desde-el-iphone/#comments</comments>
		<pubDate>Sat, 17 Nov 2012 05:31:55 +0000</pubDate>
		<dc:creator>dalexsoto</dc:creator>
				<category><![CDATA[MonoTouch]]></category>

		<guid isPermaLink="false">http://alexsoto.me/?p=12</guid>
		<description><![CDATA[Hola amigos que tal, en esta entrega les traigo el como accesar a una base de datos (MySQL) desde el iPhone, a través de un WebService. En el ejemplo hago uso de DataSets, Procedimientos Almacenados, DataAdapters y DataRows, algunos se &#8230; <a href="http://alexsoto.me/mysql-desde-el-iphone/">Continue reading <span class="meta-nav">&#8594;</span></a>]]></description>
				<content:encoded><![CDATA[<!-- Start Shareaholic LikeButtonSetTop Automatic --><div style="clear: both; min-height: 1px; height: 3px; width: 100%;"></div><div class='shareaholic-like-buttonset' style='float:none;height:30px;'><a class='shareaholic-fblike' data-shr_layout='button_count' data-shr_showfaces='false' data-shr_href='http%3A%2F%2Falexsoto.me%2Fmysql-desde-el-iphone%2F' data-shr_title='Acceso+a+MySQL+desde+el+iPhone+utilizando+MonoTouch+C%23+desde+cero'></a><a class='shareaholic-googleplusone' data-shr_size='medium' data-shr_count='true' data-shr_href='http%3A%2F%2Falexsoto.me%2Fmysql-desde-el-iphone%2F' data-shr_title='Acceso+a+MySQL+desde+el+iPhone+utilizando+MonoTouch+C%23+desde+cero'></a><a class='shareaholic-tweetbutton' data-shr_count='horizontal' data-shr_href='http%3A%2F%2Falexsoto.me%2Fmysql-desde-el-iphone%2F' data-shr_title='Acceso+a+MySQL+desde+el+iPhone+utilizando+MonoTouch+C%23+desde+cero'></a></div><div style="clear: both; min-height: 1px; height: 3px; width: 100%;"></div><!-- End Shareaholic LikeButtonSetTop Automatic --><p>Hola amigos que tal, en esta entrega les traigo el como accesar a una base de datos (MySQL) desde el iPhone, a través de un WebService. En el ejemplo hago uso de DataSets, Procedimientos Almacenados, DataAdapters y DataRows, algunos se preguntaran ¿Qué son todas esas cosas? Bueno pues a continuación tratare de dar una breve explicación de cada uno de los elementos.</p>
<h2>¿Qué es un DataSet?</h2>
<p>Un DataSet es un modo desconectado de nuestra base de datos, los DataSets nos permiten recoger información, actualizar datos, eliminarlos, añadirlos, etc…</p>
<p><center></center>Como este es un modelo desconectado, los DataSets son independientes de la tecnología utilizada como base de datos. Por lo tanto podemos decir que un DataSet es un objeto independiente que no conoce ni la fuente ni el origen de los datos, esta libertad la consigue gracias al formato XML. Los DataSets pueden estar formados por varias tablas, vistas, relaciones etc.</p>
<p>Como ya habrán intuido un DataSet es una copia en memoria del modelo de nuestra base de datos por lo tanto tenemos tablas, renglones columnas etc. Existen 3 formas con las cuales podemos trabajar con los DataSets</p>
<ol>
<li>Creando objetos tipo DataTable para almacenarlos en el DataSet mediante programación.</li>
<li>Llenando el DataSet con información de una base de datos utilizando un mediador entre ambos que es el DataAdapter.</li>
<li>Trabajar con origenes de datos de tipo XML y también con un poco más de trabajo con orígenes tipo JSON.</li>
</ol>
<p>Esta es una breve introducción al DataSet y no estoy cubriendo todo lo que puede hacer este increíble objeto, de hecho esta es una de las mayores ventajas que tiene .NET sobre cualquier otra tecnología. Si quieren buscar más información sobre este objeto, les recuerdo que <a href="http://www.google.com.mx/search?q=dataset&amp;ie=utf-8" target="_blank">Google it´s your friend</a>, existe bastante información y ejemplos de los diferentes usos que tiene este objeto <img src="http://alexsoto.me/wp-includes/images/smilies/icon_smile.gif" alt=":)" /> .</p>
<h2>¿Qué es un DataAdapter?</h2>
<p>Un DataAdapter no es más que un puente entre la base de datos y el DataSet, este objeto se encarga de recibir la información de la base de datos y darle el formato adecuado para llenar el DataSet.</p>
<h2><strong>¿Qué es un DataRow?</strong></h2>
<p>Un objeto DataRow como su nombre lo indica es un renglón de un DataTable, este se utiliza para extraer los valores de un reglón completo de una tabla, en el video queda creo yo un poco más claro su uso.</p>
<h2>¿Qué son los Procedimientos Almacenados?</h2>
<p>Los Procedimientos almacenados son características que vienen a partir de MySQL 5.0. Un procedimiento almacenado son un conjunto de comandos SQL que se almacenan en el servidor. Una vez hechos, los clientes no necesitan saber los comandos individuales para obtener la informacion necesaria si no que solo le mandan los parametros necesarios al servidor MySQL y el servidor se encarga de extraer la informacion necesaria solamente con los datos que el cliente le mando.</p>
<p>Algunos casos en que los procedimientos almacenados pueden ser muy útiles:</p>
<ul>
<li>Cuando múltiples aplicaciones cliente se escriben en distintos lenguajes o funcionan en distintas plataformas, pero necesitan realizar la misma operación en la base de datos.</li>
<li>Cuando la seguridad es muy importante. Los bancos, por ejemplo, usan procedimientos almacenados para todas las operaciones comunes. Esto proporciona un entorno seguro y consistente, y los procedimientos pueden asegurar que cada operación se loguea apropiadamente. En tal entorno, las aplicaciones y los usuarios no obtendrían ningún acceso directo a las tablas de la base de datos, sólo pueden ejecutar algunos procedimientos almacenados.</li>
</ul>
<p>Los procedimientos almacenados son muy parecidos a las funciones que realizamos en una clase de .NET, nosotros le mandamos los parámetros necesarios a la función, nosotros no sabemos el funcionamiento interno de esa función pero si sabemos que nos regresara la información que necesitamos. Esto reduce drásticamente el tráfico entre el servidor de base de datos y el cliente, ya que en vez de mandarle muchísimas cadenas string de consultas SQL, solo le mandamos parámetros a esa función.</p>
<p>Bueno espero les sirva el video para sus futuros proyectos, verán que es bastante sencillo. Ya saben cualquier duda, comentario, sugerencia la pueden poner aquí y tratare de responder lo mas rápido posible. Saludos!</p>
<p>&nbsp;<br />
<center><iframe src="http://player.vimeo.com/video/10575345" width="584" height="425" frameborder="0" webkitAllowFullScreen mozallowfullscreen allowFullScreen></iframe></center></p>
<div class="shr-publisher-12"></div><!-- Start Shareaholic LikeButtonSetBottom Automatic --><!-- End Shareaholic LikeButtonSetBottom Automatic -->]]></content:encoded>
			<wfw:commentRss>http://alexsoto.me/mysql-desde-el-iphone/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Uso de WebServices en MonoTouch usando CSharp desde el iPhone</title>
		<link>http://alexsoto.me/uso-de-webservices-en-monotouch-usando-csharp-desde-el-iphone/</link>
		<comments>http://alexsoto.me/uso-de-webservices-en-monotouch-usando-csharp-desde-el-iphone/#comments</comments>
		<pubDate>Sat, 17 Nov 2012 05:28:31 +0000</pubDate>
		<dc:creator>dalexsoto</dc:creator>
				<category><![CDATA[MonoTouch]]></category>

		<guid isPermaLink="false">http://alexsoto.me/?p=10</guid>
		<description><![CDATA[Hola amigos en esta entrega les tengo un ejemplo de cómo invocar un servicio web desde el iPhone, pero que es un ¿WebService? a continuación les dejo una breve explicación de lo que es y para qué sirve  ¿Qué es &#8230; <a href="http://alexsoto.me/uso-de-webservices-en-monotouch-usando-csharp-desde-el-iphone/">Continue reading <span class="meta-nav">&#8594;</span></a>]]></description>
				<content:encoded><![CDATA[<!-- Start Shareaholic LikeButtonSetTop Automatic --><div style="clear: both; min-height: 1px; height: 3px; width: 100%;"></div><div class='shareaholic-like-buttonset' style='float:none;height:30px;'><a class='shareaholic-fblike' data-shr_layout='button_count' data-shr_showfaces='false' data-shr_href='http%3A%2F%2Falexsoto.me%2Fuso-de-webservices-en-monotouch-usando-csharp-desde-el-iphone%2F' data-shr_title='Uso+de+WebServices+en+MonoTouch+usando+CSharp+desde+el+iPhone'></a><a class='shareaholic-googleplusone' data-shr_size='medium' data-shr_count='true' data-shr_href='http%3A%2F%2Falexsoto.me%2Fuso-de-webservices-en-monotouch-usando-csharp-desde-el-iphone%2F' data-shr_title='Uso+de+WebServices+en+MonoTouch+usando+CSharp+desde+el+iPhone'></a><a class='shareaholic-tweetbutton' data-shr_count='horizontal' data-shr_href='http%3A%2F%2Falexsoto.me%2Fuso-de-webservices-en-monotouch-usando-csharp-desde-el-iphone%2F' data-shr_title='Uso+de+WebServices+en+MonoTouch+usando+CSharp+desde+el+iPhone'></a></div><div style="clear: both; min-height: 1px; height: 3px; width: 100%;"></div><!-- End Shareaholic LikeButtonSetTop Automatic --><p style="text-align: left;">Hola amigos en esta entrega les tengo un ejemplo de cómo invocar un servicio web desde el iPhone, pero que es un ¿WebService? a continuación les dejo una breve explicación de lo que es y para qué sirve <img src="http://alexsoto.me/wp-includes/images/smilies/icon_wink.gif" alt=";)" /></p>
<h2 style="text-align: left;">¿Qué es un WebService?</h2>
<p style="text-align: left;">“Es un conjunto de protocolos y estandares que sirven para intercambiar datos entre aplicaciones de software desarrolladas en lenguajes de programacion diferentes y ejecutadas sobre cualquier plataforma.. <a title="WebService" href="http://es.wikipedia.org/wiki/Webservice" target="_blank">Wikipedia</a>”</p>
<p style="text-align: left;" align="center"> Tratare de hacerlo un poco más entendible ( :p ).Vamos a ver a un WebService como un mayordomo, yo le pido a mi mayordomo que me traiga de comer un coctel de futas especificándole las frutas que quiero (fresa, mango y sandia). El mayordomo va a la cocina y le dice a la cocinera que quiere un coctel de frutas de fresa, mango y sandia, ella lo prepara se lo entrega al mayordomo y el mayordomo viene me lo entrega a mí.</p>
<p style="text-align: left;">Un ejemplo más técnico, el iPhone no tiene de manera nativa los drivers para pedir datos a un servidor de MySQL así que requiere de un intermediario para pedir los datos al servidor de MySQL, El iPhone hace la petición al WebService, el WebService pide los datos al servidor de MySQL, el servidor de MySQL regresa los datos al WebService, el WebService prepara y le da el formato a los datos para que el iPhone los entienda y manda los datos solicitados al iPhone.</p>
<p style="text-align: left;">Por conclusión sacamos que un WebService nos sirve para romper las barreras de interoperabilidad que existen entre los diferentes dispositivos y lenguajes de programación.</p>
<h2 style="text-align: left;">¿Cómo se logra esto?</h2>
<p style="text-align: left;">Esto se logra a través de la adopción de estándares abiertos, las organizaciones W3C y OASIS son las encargadas de la arquitectura y reglamentación de los servicios Web, también se creó un organismo llamado WS-I que es el encargado de desarrollar diferentes perfiles para definir de una mejor manera estos estándares.</p>
<h2 style="text-align: left;">¿Que estándares se usan en los WebServices?</h2>
<p style="text-align: left;">Al conjunto de servicios y protocolos se les llama “Web Services Protocol Stack”, los estándares utilizados son</p>
<ul style="text-align: left;">
<li>SOAP (Simple Object Access Protocol) también conocido como XML-RPC</li>
<li>HTTP (Hyper Text Transfer Protocol)</li>
<li>WSDL (Web Services Description Language)</li>
<li>UDDI (Universal Description, Discovery and Integration)</li>
<li>WS-Security (Web Service Security)</li>
<li>XML (Extensible Markup Language)</li>
</ul>
<p style="text-align: left;">Si quieren aprender un poco más sobre los WebServices y cómo funcionan internamente les recomiendo ampliamente el tutorial de <a title="w3Schools" href="http://w3schools.com/webservices/default.asp" target="_blank">W3Schools sobre los WebServices</a> (en inglés) o como ya sobran <a title="WebServices" href="http://www.google.com.mx/#hl=es&amp;source=hp&amp;q=servicios+web&amp;meta=&amp;aq=f&amp;aqi=g10&amp;aql=&amp;oq=&amp;gs_rfai=&amp;fp=93c9fbd37c2c255f" target="_blank">Google</a> es su amigo <img src="http://alexsoto.me/wp-includes/images/smilies/icon_wink.gif" alt=";)" /></p>
<p style="text-align: left;">pues espero que este pequeño tutorial les sirva amigos y como siempre, cualquier duda pueden ponerla en los comentarios y tratare de responderla lo mas pronto posible.</p>
<p style="text-align: left;">Nos leemos despues. Saludos</p>
<p style="text-align: left;">
<p><center><iframe src="http://player.vimeo.com/video/10272115" width="584" height="425" frameborder="0" webkitAllowFullScreen mozallowfullscreen allowFullScreen></iframe></center></p>
<div class="shr-publisher-10"></div><!-- Start Shareaholic LikeButtonSetBottom Automatic --><!-- End Shareaholic LikeButtonSetBottom Automatic -->]]></content:encoded>
			<wfw:commentRss>http://alexsoto.me/uso-de-webservices-en-monotouch-usando-csharp-desde-el-iphone/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Ejemplo simple de suma en MonoTouch mas que un Hola mundo</title>
		<link>http://alexsoto.me/calculadora-monotouch/</link>
		<comments>http://alexsoto.me/calculadora-monotouch/#comments</comments>
		<pubDate>Sat, 17 Nov 2012 05:22:32 +0000</pubDate>
		<dc:creator>dalexsoto</dc:creator>
				<category><![CDATA[Sin categoría]]></category>

		<guid isPermaLink="false">http://alexsoto.me/?p=5</guid>
		<description><![CDATA[Este es mi primer post en este blog, así que es oficial es mi “HolaMundo” en el mundo bloggero entonces que mejor que para conmemorar mi primer post que un Hola mundo para el iPhone utilizando esta nueva tecnología llamada &#8230; <a href="http://alexsoto.me/calculadora-monotouch/">Continue reading <span class="meta-nav">&#8594;</span></a>]]></description>
				<content:encoded><![CDATA[<!-- Start Shareaholic LikeButtonSetTop Automatic --><div style="clear: both; min-height: 1px; height: 3px; width: 100%;"></div><div class='shareaholic-like-buttonset' style='float:none;height:30px;'><a class='shareaholic-fblike' data-shr_layout='button_count' data-shr_showfaces='false' data-shr_href='http%3A%2F%2Falexsoto.me%2Fcalculadora-monotouch%2F' data-shr_title='Ejemplo+simple+de+suma+en+MonoTouch+mas+que+un+Hola+mundo'></a><a class='shareaholic-googleplusone' data-shr_size='medium' data-shr_count='true' data-shr_href='http%3A%2F%2Falexsoto.me%2Fcalculadora-monotouch%2F' data-shr_title='Ejemplo+simple+de+suma+en+MonoTouch+mas+que+un+Hola+mundo'></a><a class='shareaholic-tweetbutton' data-shr_count='horizontal' data-shr_href='http%3A%2F%2Falexsoto.me%2Fcalculadora-monotouch%2F' data-shr_title='Ejemplo+simple+de+suma+en+MonoTouch+mas+que+un+Hola+mundo'></a></div><div style="clear: both; min-height: 1px; height: 3px; width: 100%;"></div><!-- End Shareaholic LikeButtonSetTop Automatic --><p style="text-align: left;">Este es mi primer post en este blog, así que es oficial es mi “HolaMundo” en el mundo bloggero entonces que mejor que para conmemorar mi primer post que un Hola mundo para el iPhone utilizando esta nueva tecnología llamada MonoTouch!</p>
<p style="text-align: left;">Bueno este ejemplo es clásico así que vamos a darle un giro y vamos a hacer algo un poco más práctico, una suma de 2 números para demostrar lo fácil que es programar para estos grandiosos dispositivos móviles de Apple.</p>
<p style="text-align: left;" align="center"> Pero primero se preguntaran ¿¿Qué es MonoTouch??… Pues hasta hace algún tiempo si queríamos desarrollar para el iPhone/iPodTouch estábamos obligados a conocer Objective-C, que es el lenguaje que utiliza esta plataforma pero todo esto cambia con el lanzamiento de MonoTouch. Ahora con esta herramienta podemos tomar nuestros conocimientos de C# y la plataforma .NET que Microsoft desarrolló para el desarrollo de aplicaciones y aplicarlos para la creación de aplicaciones para estos dispositivos.</p>
<p style="text-align: left;">El IDE utilizado para programar se llama MonoDevelop tiene un aspecto visual muy intuitivo (muy parecido a Visual Studio®) y esta es la herramienta principal para el desarrollo de aplicaciones, este se ayuda también del InterfaceBuilder que es la herramienta gráfica que Apple nos ofrece a través de su SDK y nos sirve  para diseñar nuestra interfaz gráfica del equipo.</p>
<p style="text-align: left;">MonoTouch se encuentra ya en la versión estable 1.4 y en la versión beta 1.9, la versión 1.0 fue lanzada el día 14 de septiembre del 2009 por Miguel de Icaza (quien es el líder del proyecto mono) a través de su <a href="http://tirania.org/blog/archive/2009/Sep-14.html">blog</a>.</p>
<p style="text-align: left;">En lo personal pienso que este es un gran paso para todos los desarrolladores que manejamos la plataforma .NET porque cada vez más se va rompiendo la barrera que se tenía en la plataforma, que solo funcionaba sobre ciertas arquitecturas. También Miguel de Icaza hace poco anuncio la salida de MonoDroid que es la implementación de Mono sobre el sistema operativo Android® de Google®, esto abre muchísimas oportunidades de negocio ¿Por qué? Pues véanlo de la siguiente manera “solo programas la lógica de tu aplicación una vez, y con algunos cambios mínimos la tienes corriendo sobre iPhone, iPod, iPad, Escritorio (Linux, Windows y Mac), Zune HD®, XBOX 360®, Windows Mobile® 7, Android y demás plataformas que soporten .NET” así que a mi punto de vista se ve un futuro muy favorable para la plataforma .NET especialmente hablando de C#.</p>
<p style="text-align: left;">Con esto en mente les dejo con este pequeño video tutorial que espero les sea de ayuda para entrar a este increíble mundo de MonoTouch. Nos leemos después <img src="http://alexsoto.me/wp-includes/images/smilies/icon_smile.gif" alt=":)" /></p>
<p><center><br />
P.D. Cualquier duda pueden ponerla en los comentarios y tratare de responderla a la brevedad posible.</center></p>
<p><iframe src="http://player.vimeo.com/video/9814432?color=ffffff" width="584" height="425" frameborder="0" webkitAllowFullScreen mozallowfullscreen allowFullScreen></iframe></p>
<div class="shr-publisher-5"></div><!-- Start Shareaholic LikeButtonSetBottom Automatic --><!-- End Shareaholic LikeButtonSetBottom Automatic -->]]></content:encoded>
			<wfw:commentRss>http://alexsoto.me/calculadora-monotouch/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
	</channel>
</rss>
