<?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>Linux, Java y programación &#187; monodevelop</title>
	<atom:link href="http://casidiablo.net/tag/monodevelop/feed/" rel="self" type="application/rss+xml" />
	<link>http://casidiablo.net</link>
	<description>Blog de Java, Programación y Linux</description>
	<lastBuildDate>Fri, 11 Nov 2011 05:41:21 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.2.1</generator>
		<item>
		<title>Video Tutorial de Introducción a MonoDevelop</title>
		<link>http://casidiablo.net/video-introduccion-monodevelop/</link>
		<comments>http://casidiablo.net/video-introduccion-monodevelop/#comments</comments>
		<pubDate>Thu, 11 Jun 2009 03:22:08 +0000</pubDate>
		<dc:creator>Cristian</dc:creator>
				<category><![CDATA[.net]]></category>
		<category><![CDATA[C-Sharp]]></category>
		<category><![CDATA[linux]]></category>
		<category><![CDATA[mono]]></category>
		<category><![CDATA[programación]]></category>
		<category><![CDATA[video tutoriales]]></category>
		<category><![CDATA[monodevelop]]></category>
		<category><![CDATA[video]]></category>

		<guid isPermaLink="false">http://casidiablo.net/?p=3063</guid>
		<description><![CDATA[¡Hola de nuevo! En esta ocasión me gustaría compartir con ustedes este video tutorial acerca de MonoDevelop. No es nada avanzado, solo muestra algunas características de este IDE. El video en cuestión lo grabé hace más o menos siete meses, pero casualmente había olvidado que lo había grabado Y, aunque ya vamos en la versión [...]]]></description>
			<content:encoded><![CDATA[
<div class="topsy_widget_data topsy_theme_blue" style="float: right;margin-left: 0.75em; background: url(data:,%7B%20%22url%22%3A%20%22http%253A%252F%252Fcasidiablo.net%252Fvideo-introduccion-monodevelop%252F%22%2C%20%22style%22%3A%20%22big%22%2C%20%22title%22%3A%20%22Video%20Tutorial%20de%20Introducci%C3%B3n%20a%20MonoDevelop%22%20%7D);"></div>
<p style="text-align: justify;">¡Hola de nuevo! En esta ocasión me gustaría compartir con ustedes este video tutorial acerca de MonoDevelop. No es nada avanzado, solo muestra algunas características de este IDE. El video en cuestión lo grabé hace más o menos siete meses, pero casualmente había olvidado que lo había grabado <img src='http://casidiablo.net/wordpress/wp-includes/images/smilies/icon_razz.gif' alt=':P' class='wp-smiley' />  Y, aunque ya vamos en la versión 2 de MonoDevelop, no quiero perder el trabajo que alguna vez hice.</p>
<p style="text-align: justify;"><embed src="http://blip.tv/play/g9MGgYjCR5OibA%2Em4v" type="application/x-shockwave-flash" width="640" height="430" allowscriptaccess="always" allowfullscreen="true"></embed></p>
<p style="text-align: justify;">Como siempre, pueden encontrar el vídeo en <a title="Esta dividido en dos partes (Youtube solo deja videos menores de 10 minutos)" href="http://www.youtube.com/watch?v=sbdI1iSoRYE">Youtube</a> o en <a href="http://www.vimeo.com/5084692">Vimeo</a>. Aunque creo que hay un pedazo que se ve feo y el sonido no es el mejor, espero que les guste y disculpen lo feo <img src='http://casidiablo.net/wordpress/wp-includes/images/smilies/icon_biggrin.gif' alt=':D' class='wp-smiley' /> </p>

]]></content:encoded>
			<wfw:commentRss>http://casidiablo.net/video-introduccion-monodevelop/feed/</wfw:commentRss>
		<slash:comments>8</slash:comments>
		</item>
		<item>
		<title>Números aleatorios en C#</title>
		<link>http://casidiablo.net/numeros-random-c-sharp/</link>
		<comments>http://casidiablo.net/numeros-random-c-sharp/#comments</comments>
		<pubDate>Thu, 24 Jul 2008 17:02:52 +0000</pubDate>
		<dc:creator>Cristian</dc:creator>
				<category><![CDATA[.net]]></category>
		<category><![CDATA[C-Sharp]]></category>
		<category><![CDATA[mono]]></category>
		<category><![CDATA[programación]]></category>
		<category><![CDATA[C++]]></category>
		<category><![CDATA[juegos]]></category>
		<category><![CDATA[monodevelop]]></category>

		<guid isPermaLink="false">http://casidiablo.net/?p=1143</guid>
		<description><![CDATA[La generación de números aleatoreos es una de las prácticas más importantes en cualquier lenguaje de programación, sobre todo cuando deseamos desarrollar juegos, por ejemplo. Para usar números aleatorios en C# podemos utilizar la clase Random del namespace System, de la siguiente manera: El método Next de la clase Random genera y devuelve un número [...]]]></description>
			<content:encoded><![CDATA[
<div class="topsy_widget_data topsy_theme_blue" style="float: right;margin-left: 0.75em; background: url(data:,%7B%20%22url%22%3A%20%22http%253A%252F%252Fcasidiablo.net%252Fnumeros-random-c-sharp%252F%22%2C%20%22style%22%3A%20%22big%22%2C%20%22title%22%3A%20%22N%C3%BAmeros%20aleatorios%20en%20C%23%22%20%7D);"></div>
<p>La generación de números aleatoreos es una de las prácticas más importantes en cualquier lenguaje de programación, sobre todo cuando deseamos desarrollar juegos, por ejemplo. Para usar números aleatorios en <a href="http://casidiablo.net/c-y-net/">C#</a> podemos utilizar la clase <strong>Random</strong> del namespace <strong>System</strong>, de la siguiente manera:</p>
<pre class="brush: csharp; title: ; notranslate">Random objeto = new Random();
int numero = objeto.Next();</pre>
<p>El método Next de la clase Random genera y devuelve un número aleatorio entre 0 y la constante <strong>Int32.MaxValue</strong> (2,147,483,647). El número es generado después de (como decía mi profesora de matemáticas) <em>complejos procesos matemáticos</em>, y como en casi todos los lenguajes necesitan de una semilla (seed) para ser generados, que por defecto es la hora del sistema.</p>
<p>Aún así, muchas veces necesitamos que el número sea generado en un rango específico de valores. Por ejemplo, para una aplicación que simule el lanzamiento de un dado de seis caras necesitamos generar números entre 1 y 6. Para lograr esto, el método <strong>Next</strong> puede recibir además un entero que indica el rango máximo del número aleatorio. Por ejemplo, el código:</p>
<pre class="brush: csharp; title: ; notranslate">Random objeto = new Random();
int numero = objeto.Next(6);</pre>
<p>generaría un número aleatorio entre 0 y 7 (pero no 6), es decir, seis posibles números. Pero, si desearamos algún rango más exacto, podríamos hacer algo como:</p>
<pre class="brush: csharp; title: ; notranslate">Random objeto = new Random();
int numero = objeto.Next(1, 7);</pre>
<p>lo que generaría números entre 1 y 7 (pero no 7), de nuevo seis números posibles.</p>
<h3>Ejemplo completo&#8230;</h3>
<p>En el siguiente ejemplo se utilizará la clase <strong>Random</strong> para generar una serie de números aleatorios cada vez que se presiona un botón:</p>
<p style="text-align: center;"><img class="aligncenter" title="pantallazo numero aleatorio" src="http://casidiablo.net/wordpress/wp-content/uploads/2008/07/pantallazo-numero-aleatorio.png" alt="pantallazo numero aleatorio" /></p>
<p>El código lo pongo para su descarga abajo, ya que lo hice con <a href="http://casidiablo.net/aplicaciones-con-gui-en-net-%c2%bfgtk-o-windows-forms/">Gtk# usando MonoDevelop</a>, y sería engorroso poner todo el código. Así que solo pondré la parte del código que nos interesa:</p>
<pre class="brush: csharp; title: ; notranslate">    private Random obj = new Random();
    //Método ejecutado al presionar el botón
    protected virtual void generar_Click (object sender, System.EventArgs e)
    {
        etiqueta.Text = &quot;&quot;;
        for(int i = 0; i &lt; 4 ; i++)
        {
            for(int j = 0; j &lt; 4 ; j++)
                etiqueta.Text += obj.Next(1, 10) +&quot;\t\t&quot;;
            etiqueta.Text += &quot;\n\n&quot;;
        }
    }</pre>
<h3>Enlaces y descargas</h3>
<ul>
<li><a href="http://casidiablo.net/descargar/Numeros+Aleatorios+C+Sharp" class="tooltip" title="Proyecto para MonoDevelop">Descargar código fuente del ejemplo (usando Gtk#)</a></li>
<li><a href="http://casidiablo.net/descargar/RandomInt" class="tooltip" title="Proyecto para VisualStudio">Descargar proyecto similar en inglés (usando Windows Forms)</a></li>
<li><a href="http://casidiablo.net/aplicaciones-con-gui-en-net-%c2%bfgtk-o-windows-forms/" class="tooltip" title="¿Tienes dudas al elegir? Consulta!">Aplicaciones con GUI en .NET: ¿Gtk# o Windows Forms?</a></li>
</ul>

]]></content:encoded>
			<wfw:commentRss>http://casidiablo.net/numeros-random-c-sharp/feed/</wfw:commentRss>
		<slash:comments>16</slash:comments>
		</item>
		<item>
		<title>Aplicaciones con GUI en .NET: ¿Gtk# o Windows Forms?</title>
		<link>http://casidiablo.net/aplicaciones-con-gui-en-net-%c2%bfgtk-o-windows-forms/</link>
		<comments>http://casidiablo.net/aplicaciones-con-gui-en-net-%c2%bfgtk-o-windows-forms/#comments</comments>
		<pubDate>Mon, 05 May 2008 20:03:51 +0000</pubDate>
		<dc:creator>Cristian</dc:creator>
				<category><![CDATA[.net]]></category>
		<category><![CDATA[artículos]]></category>
		<category><![CDATA[C-Sharp]]></category>
		<category><![CDATA[linux]]></category>
		<category><![CDATA[mono]]></category>
		<category><![CDATA[programación]]></category>
		<category><![CDATA[C++]]></category>
		<category><![CDATA[ejemplos]]></category>
		<category><![CDATA[ejercicios]]></category>
		<category><![CDATA[monodevelop]]></category>

		<guid isPermaLink="false">http://www.casidiablo.net/wordpress/index.php/2008/05/05/aplicaciones-con-gui-en-net-%c2%bfgtk-o-windows-forms/</guid>
		<description><![CDATA[Hace tiempo discutía con algunas personas la mejor manera de usar Mono tanto en el escritorio Linux como en Windows. Me refiero al momento de escoger entre Windows Forms y Gtk#, para desarrollar aplicaciones con interfaz gráfica. Personalmente pienso que la mejor opción es, inclinándome hacia el lado del software libre, usar Mono + Gtk#. [...]]]></description>
			<content:encoded><![CDATA[
<div class="topsy_widget_data topsy_theme_blue" style="float: right;margin-left: 0.75em; background: url(data:,%7B%20%22url%22%3A%20%22http%253A%252F%252Fcasidiablo.net%252Faplicaciones-con-gui-en-net-%2525c2%2525bfgtk-o-windows-forms%252F%22%2C%20%22style%22%3A%20%22big%22%2C%20%22title%22%3A%20%22Aplicaciones%20con%20GUI%20en%20.NET%3A%20%C2%BFGtk%23%20o%20Windows%20Forms%3F%22%20%7D);"></div>
<p><img border="0" width="600" src="http://i270.photobucket.com/albums/jj96/Casidiablo/gtk-mono.png" height="455" /></p>
<p>Hace tiempo discutía con algunas personas la <em>mejor manera de usar Mono</em> tanto en el escritorio <a href="http://www.casidiablo.net/wordpress/index.php/category/linux/">Linux</a> como en Windows. Me refiero al momento de escoger entre <a href="http://en.wikipedia.org/wiki/Windows_Forms" title="Read at the Wikipedia ;)">Windows Forms</a> y <a href="http://en.wikipedia.org/wiki/Gtk_Sharp" title="Read at the Wikipedia ;)">Gtk#</a>, para desarrollar aplicaciones con interfaz gráfica. Personalmente pienso que <strong>la mejor opción es, inclinándome hacia el lado del <a href="http://www.casidiablo.net/wordpress/index.php/category/software-libre/">software libre</a>, usar <a href="http://www.casidiablo.net/wordpress/index.php/2007/12/10/acerca-de-mono/">Mono</a> + <a href="http://en.wikipedia.org/wiki/Gtk_Sharp" title="Read at the Wikipedia ;)">Gtk#</a></strong>. Claro, eso también depende de tus gustos como desarrollador y, más importante aún, de las necesidades del proyecto a realizar.</p>
<p>Lo que quiero enseñarles en esta entrada es <em>cómo se pueden tomar diferentes caminos</em>, y aclarar algunas dudas que me han planteado ciertos lectores. Siendo así, vamos a tomar como ejemplo a dos programas sencillos: el primero usando <a href="http://en.wikipedia.org/wiki/Gtk_Sharp" title="Read at the Wikipedia ;)">Gtk#</a> y corriendo tanto en <a href="http://www.casidiablo.net/wordpress/index.php/category/linux/">Linux</a> como Windows, y el otro usando <a href="http://en.wikipedia.org/wiki/Windows_Forms" title="Read at the Wikipedia ;)">Windows Forms</a> corriendo tanto en Windows como <a href="http://www.casidiablo.net/wordpress/index.php/category/linux/">Linux</a>.</p>
<h3>Desarrollando y ejecutando aplicaciones Gtk# y Windows Forms usando Mono</h3>
<p>Antes de comenzar con los ejercicios, veamos qué necesitamos para desarrollar y ejecutar aplicaciones que usen <a href="http://en.wikipedia.org/wiki/Gtk_Sharp" title="Read at the Wikipedia ;)">Gtk#</a> y <a href="http://en.wikipedia.org/wiki/Windows_Forms" title="Read at the Wikipedia ;)">Windows Forms</a>. Es necesario (obviamente) tener dicho framework instalado; afortunadamente, la mayoría de las distribuciones Gnu/Linux actuales tienen los paquetes necesarios en los repositorios, e incluso vienen con lo necesario para ejecutar aplicaciones desarrolladas con <a href="http://www.casidiablo.net/wordpress/index.php/2007/12/10/acerca-de-mono/">Mono</a> (como <a href="http://www.gnome.org/projects/tomboy/">Tomboy</a>, <a href="http://f-spot.org/Main_Page">Fspot</a> o <a href="http://banshee-project.org/Main_Page">Banshee</a>). <em>Para compilar aplicaciones C# para mono es necesario utilizar el <a href="http://www.mono-project.com/CSharp_Compiler">CSharp Compiler</a> (<code>cms</code>)</em>.</p>
<p>También, es posible <a href="http://www.go-mono.com/mono-downloads/download.html">descargar mono</a> para los más importantes sistemas operativos, incluyendo por supuesto sistemas Microsoft Windows. Para tal caso es posible descargar una versión completa (<a href="http://www.casidiablo.net/wordpress/index.php/2007/12/10/acerca-de-mono/">Mono</a> + <a href="http://en.wikipedia.org/wiki/Gtk_Sharp" title="Read at the Wikipedia ;)">Gtk#</a> + XSP), o tan solo el intérprete + <a href="http://en.wikipedia.org/wiki/Gtk_Sharp" title="Read at the Wikipedia ;)">Gtk#</a> para un <em>Framework .NET</em> ya instalado sobre el ordenador.</p>
<h3>Código del programa que usa Gtk#</h3>
<p><span id="more-890"></span><br />
//Ejemplo GTK (EjemploGtk.cs)<br />
using Gtk;<br />
using System;<br />
class EjemploGtk {<br />
	static void Main()<br />
	{<br />
		Application.Init ();<br />
		//Crear el boton<br />
		Button btn = new Button (&#8220;Hola monito!&#8221;);<br />
		//Asignar un evento al evento Clic del boton<br />
		btn.Clicked += new EventHandler (hola);<br />
		//Crear el objeto ventana<br />
		Window ventana = new Window (&#8220;Lindo primate!&#8221;);<br />
		//Asignar un metodo al evento Cerrar ventan<br />
		ventana.DeleteEvent += new DeleteEventHandler (cerrar_ventana);<br />
		//Asigna el ancho y alto de la ventana<br />
		ventana.DefaultWidth = 200;<br />
        ventana.DefaultHeight = 60;<br />
		//Anyadir el boton a la ventana<br />
		ventana.Add (btn);<br />
		//Mostrar la ventana<br />
		ventana.ShowAll ();<br />
		//Ejecutar la aplicacion<br />
		Application.Run ();<br />
	}<br />
	static void cerrar_ventana (object obj, DeleteEventArgs args)<br />
	{<br />
		Application.Quit ();<br />
	}<br />
	static void hola (object obj, EventArgs args)<br />
	{<br />
		Console.WriteLine(&#8220;Lindo monito!&#8221;);<br />
		Application.Quit ();<br />
	}<br />
}</p>
<p>Para compilarlo y ejecutarlo puedes usar los siguientes comandos:</p>
<p class="consola">mcs -pkg:gtk-sharp-2.0 EjemploGtk.cs<br />
mono EjemploGtk.exe</p>
<p>El resultado es el mismo tanto en Linux como en Windows:</p>
<p style="text-align: center"><img width="259" src="http://i270.photobucket.com/albums/jj96/Casidiablo/gtk-linux.png" alt="gtk sobre linux" height="91" title="gtk sobre linux" /> <img width="208" src="http://i270.photobucket.com/albums/jj96/Casidiablo/gtk-win.png" alt="gtk-sharp sobre windows" height="94" title="gtk-sharp sobre windows" /></p>
<h3>Código del programa que usa Windows Forms</h3>
<p>Este programa hace exactamente lo mismo que el anterior, pero esta vez usando Windows Forms para la interfaz gráfica:</p>
<p>//Ejemplo Windows Forms (EjemploWinForms.cs)<br />
using System.Drawing;<br />
using System.Windows.Forms;<br />
using System;<br />
class EjemploWinForms : Form{<br />
	static void Main(){<br />
		Application.Run(new EjemploWinForms());<br />
	}<br />
	public EjemploWinForms() {<br />
		//Crear e iniciar el boton, y sus propiedades<br />
		Button boton = new Button();<br />
		boton.Location = new Point(0, -1);<br />
		boton.Name = &#8220;boton&#8221;;<br />
		boton.Size = new System.Drawing.Size(193, 60);<br />
		boton.TabIndex = 0;<br />
		boton.Text = &#8220;Botoncito&#8221;;<br />
		//Asignar un evento al evento Clic del boton<br />
		boton.Click += new System.EventHandler(hola);<br />
		//Indicar el tamanyo de la ventana<br />
		ClientSize = new System.Drawing.Size(193, 60);<br />
		//Anyadir el boton<br />
		Controls.Add(boton);<br />
		Text = &#8220;Ventanita&#8221;;<br />
		ResumeLayout(false);<br />
	}<br />
	private void hola(object sender, EventArgs e) {<br />
		Console.WriteLine(&#8220;Un mensajito!&#8221;);<br />
		Close ();<br />
	}<br />
}</p>
<p>Para compilarlo y ejecutarlo puedes usar los siguientes comandos:</p>
<p class="consola">mcs -r:System.Drawing.dll,System.Windows.Forms.dll EjemploWinForms.cs<br />
mono EjemploWindowsForms.exe</p>
<p>El resultado es el mismo tanto en Linux como en Windows:</p>
<p style="text-align: center"><img width="199" src="http://i270.photobucket.com/albums/jj96/Casidiablo/winforms-linux.png" alt="windows forms sobre linux" height="92" title="windows forms sobre linux" /> <img width="208" src="http://i270.photobucket.com/albums/jj96/Casidiablo/winforms-win.png" alt="windows forms sobre windows" height="94" title="windows forms sobre windows" /></p>
<h3>Consideraciones a tener en cuenta</h3>
<p>Al momento de desarrollar aplicaciones con GUIs en C# de manera rápida, tenemos basicamente dos opciones:</p>
<ul>
<li>Podemos <strong>usar Monodevelop que incluye un editor de interfaces gráficas</strong> basado en Stetic y que por supuesto desarrolla dichas interfaces bajo <a href="http://en.wikipedia.org/wiki/Gtk_Sharp" title="Read at the Wikipedia ;)">Gtk#</a>.</li>
<li>O usar el editor de interfaces de Microsoft Visual Studio que, aunque no es libre, he de reconocer que es bastante bueno y completo. En este caso las aplicaciones correrían usando Windows Forms.</li>
</ul>
<p>Por supuesto, si deseamos usar Mono como plataforma de desarrollo no vale la pena usar herramientas Microsoft. De hecho, opino que el framework de Mono incluye librerías para ejecutar aplicaciones que usen Windows Forms, no con el fin de desarrollar aplicaciones que usen dichas librerías, sino para facilitar la migración de proyectos existentes hacia Mono.</p>
<h3>Enlaces interesantes</h3>
<ul>
<li><a href="http://www.mono-project.com/">Página oficial del proyecto Mono</a></li>
<li><a href="http://www.monodevelop.com/">Página oficial de Monodevelop</a></li>
<li><a href="http://http://www.casidiablo.net/wordpress/index.php/c-y-net/">Ejemplos de programación C#</a></li>
</ul>
<p><a href="http://www.casidiablo.net/codigos/C_Sharp/Ejemplos_Gtk_WinForms_Mono.zip" title="Descargar código fuente!" class="descargacodigo">Descargar código fuente de los ejemplos</a></p>

]]></content:encoded>
			<wfw:commentRss>http://casidiablo.net/aplicaciones-con-gui-en-net-%c2%bfgtk-o-windows-forms/feed/</wfw:commentRss>
		<slash:comments>47</slash:comments>
		</item>
		<item>
		<title>Publicada la versión 1.0 de MonoDevelop</title>
		<link>http://casidiablo.net/publicada-la-version-10-de-monodevelop/</link>
		<comments>http://casidiablo.net/publicada-la-version-10-de-monodevelop/#comments</comments>
		<pubDate>Mon, 17 Mar 2008 20:33:39 +0000</pubDate>
		<dc:creator>Cristian</dc:creator>
				<category><![CDATA[.net]]></category>
		<category><![CDATA[mono]]></category>
		<category><![CDATA[software libre]]></category>
		<category><![CDATA[hack]]></category>
		<category><![CDATA[monodevelop]]></category>

		<guid isPermaLink="false">http://www.casidiablo.net/wordpress/index.php/2008/03/17/publicada-la-version-10-de-monodevelop/</guid>
		<description><![CDATA[El equipo de desarrollo de MonoDevelop ha liberado la versión 1.0 de este IDE para Mono, un implementación libre de .NET para plataformas Linux y MacOSX. Sin duda una buena noticia para los usuarios de esta plataforma, y en general para la comunidad de software libre. Anuncio &#124;  Ver las características de este IDE]]></description>
			<content:encoded><![CDATA[
<div class="topsy_widget_data topsy_theme_blue" style="float: right;margin-left: 0.75em; background: url(data:,%7B%20%22url%22%3A%20%22http%253A%252F%252Fcasidiablo.net%252Fpublicada-la-version-10-de-monodevelop%252F%22%2C%20%22style%22%3A%20%22big%22%2C%20%22title%22%3A%20%22Publicada%20la%20versi%C3%B3n%201.0%20de%20MonoDevelop%22%20%7D);"></div>
<p align="center"><img src="http://img204.imageshack.us/img204/4452/logomonodevelopii6.png" /></p>
<p>El equipo de desarrollo de <a href="http://www.casidiablo.net/wordpress/index.php/2007/12/16/caracteristicas-monodevelop/">MonoDevelop</a> ha liberado la versión 1.0 de este IDE para <a href="http://www.casidiablo.net/wordpress/index.php/category/programacion/net/mono/">Mono</a>, un implementación libre de .NET para plataformas Linux y MacOSX. Sin duda una buena noticia para los usuarios de esta plataforma, y en general para la comunidad de software libre.</p>
<p><a href="http://lists.ximian.com/pipermail/monodevelop-list/2008-March/007517.html">Anuncio</a> |  <a href="http://www.monodevelop.com/MonoDevelop_1.0_Released">Ver las características de este IDE</a></p>

]]></content:encoded>
			<wfw:commentRss>http://casidiablo.net/publicada-la-version-10-de-monodevelop/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Breve introducción al MonoDevelop</title>
		<link>http://casidiablo.net/caracteristicas-monodevelop/</link>
		<comments>http://casidiablo.net/caracteristicas-monodevelop/#comments</comments>
		<pubDate>Sun, 16 Dec 2007 16:31:12 +0000</pubDate>
		<dc:creator>Cristian</dc:creator>
				<category><![CDATA[.net]]></category>
		<category><![CDATA[C-Sharp]]></category>
		<category><![CDATA[linux]]></category>
		<category><![CDATA[mono]]></category>
		<category><![CDATA[programación]]></category>
		<category><![CDATA[programas]]></category>
		<category><![CDATA[software libre]]></category>
		<category><![CDATA[C++]]></category>
		<category><![CDATA[hack]]></category>
		<category><![CDATA[monodevelop]]></category>
		<category><![CDATA[opensuse]]></category>

		<guid isPermaLink="false">http://www.casidiablo.net/wordpress/index.php/2007/12/16/caracteristicas-monodevelop/</guid>
		<description><![CDATA[Desarrollo de aplicaciones .NET usando el Entorno de Desarrollo Integrado: MonoDevelop Continuando con el tema del desarrollo de aplicaciones en la plataforma .NET, específicamente usando el lenguaje de programación C#, les mostraré un ejemplo del uso de MonoDevelop, un IDE de programación especial para trabajar con la plataforma libre .NET: Mono. La idea de este [...]]]></description>
			<content:encoded><![CDATA[
<div class="topsy_widget_data topsy_theme_blue" style="float: right;margin-left: 0.75em; background: url(data:,%7B%20%22url%22%3A%20%22http%253A%252F%252Fcasidiablo.net%252Fcaracteristicas-monodevelop%252F%22%2C%20%22style%22%3A%20%22big%22%2C%20%22title%22%3A%20%22Breve%20introducci%C3%B3n%20al%20MonoDevelop%22%20%7D);"></div>
<h3>Desarrollo de aplicaciones .NET usando el Entorno de Desarrollo Integrado: MonoDevelop</h3>
<p style="text-align: center"><img border="0" width="265" src="http://img204.imageshack.us/img204/4452/logomonodevelopii6.png" alt="monodevelop" height="50" /></p>
<p>Continuando con el tema del <a href="http://www.casidiablo.net/wordpress/index.php/c-y-net/">desarrollo de aplicaciones en la plataforma .NET</a>, específicamente usando el lenguaje de programación C#, les mostraré un ejemplo del uso de <a href="http://www.monodevelop.com/Main_Page">MonoDevelop</a>, un IDE de programación especial para trabajar con la <a href="http://www.casidiablo.net/wordpress/index.php/2007/12/10/acerca-de-mono/">plataforma libre .NET: Mono</a>.</p>
<p>La idea de este documento es mostrar algunas características importantes para el desarrollo de aplicaciones usando este IDE de programación, para lo cual vamos a crear paso a paso una aplicación muy bí¡sica, en donde aprenderemos a implementar clases y a referenciar librerías.</p>
<p>Lo primero es <a href="http://www.monodevelop.com/Download">descargar el MonoDevelop</a>. Puedes descargar las fuentes y compilarlas tu mismo, o buscar algún paquete para tu distribución (.deb, .rpm, etc.), aunque si no quieres liarte tal vez querrás usar openSuse, que te permite instalarlo desde los CDs de instalación. Una vez instalado, lo ejecutamos y veremos algo como lo siguiente:</p>
<p align="center"><a href="http://img204.imageshack.us/img204/8486/59910022tl5.png" title="Ver grande"><img border="0" width="700" src="http://img204.imageshack.us/img204/8486/59910022tl5.png"/></a></p>
<p>Como puedes ver su interfaz es limpia y <span id="more-765"></span>agradable, y si ya has usado cualquier otro IDE te resultará bastante fácil acostumbrarte a éste. Ahora, vamos a crear un nuevo proyecto: &#8220;<em>Archivo</em> &gt;&gt; <em>Nuevo Proyecto</em>&#8220;. En esta parte debemos seleccionar el tipo de proyecto a desarrollar (en este caso va a ser un Proyecto vacío de <a href="http://www.casidiablo.net/wordpress/index.php/c-y-net/">C#</a>), su nombre, la ubicación donde lo guardaremos, etc.:</p>
<p align="center"><img border="0" src="http://img204.imageshack.us/img204/8724/45665579ok5.png"/></p>
<p>Le damos clic en <em>Adelante</em>, y luego en <em>Finalizar</em> (en esta parte habrá aparecido algunas otras opciones avanzadas que no trataremos en este documento). Ahora vamos a crear un nuevo archivo: Clic derecho en la raíz de la solución, <em>Añadir</em> &gt;&gt; <em>Nuevo archivo&#8230;</em>:</p>
<p align="center"><img border="0" src="http://img204.imageshack.us/img204/5922/70750587xi4.png"/></p>
<p>En este punto podemos escoger varios tipos de archivo, pero para este ejemplo seleccionamos <em>General</em>, luego <em>Clase vacía</em> y digitamos el nombre de nuestra nueva clase:</p>
<p align="center"><img border="0" src="http://img204.imageshack.us/img204/5420/58907434hk7.png"/></p>
<p>MonoDevelop creará el archivo y escribirá una estructura base para la aplicación (importar el namespace <em>System</em>, crear nuestro namespace, crear la clase, crear el constructor). Ahora ya podemos comenzar a editar nuestra clase:</p>
<p align="center"><img border="0" src="http://img204.imageshack.us/img204/6559/53116020px0.png"/></p>
<p>Nuestro clase tendrá, al principio, lo siguiente:</p>
<pre class="brush: csharp; title: ; notranslate">// Ejemplo.cs creado con MonoDevelop
// Usuario: casidiablo a las 14:48 de la fecha 15/12/2007
//

using System;

namespace EjemploMono
{
    public class Ejemplo
    {

        public Ejemplo()
        {
            Console.WriteLine(&quot;Este es el constructor&quot;);
        }
        static void Main(string[] args)
        {
            new Ejemplo();
        }
    }
}</pre>
<p>Vamos entonces a ver algunas características interesantes que nos ofrece MonoDevelop al codificar nuestras clases:</p>
<p><strong>Auto-completamiento de código en clases del estándar:</strong></p>
<p>Luego de escribir una clase, en este caso la clase Console, al teclear la tecla punto (para llamar a alguna función de esa clase) se desplegará un menú donde aparecerá la lista de los métodos de la clase:</p>
<p align="center"><img border="0" src="http://img204.imageshack.us/img204/5641/50169344xe5.png"/></p>
<p><strong>Compilando el código</strong></p>
<p>Para compilar nuestro proyecto: <em>Proyecto</em> &gt;&gt; <em>Construir</em> solución o presionamos <em>F8</em>, con lo cual podremos probar y depurar nuestra solución:</p>
<p align="center"><img border="0" src="http://img204.imageshack.us/img204/2271/89252537oh0.png"/></p>
<p>En la parte de abajo podremos ver información acerca de la compilación del archivo:</p>
<p align="center"><img border="0" src="http://img204.imageshack.us/img204/9734/56333383fv8.png"/></p>
<p>Si por ejemplo tenemos un error en el código fuente, veremos algo como lo siguiente:</p>
<p align="center"><img border="0" src="http://img204.imageshack.us/img204/9186/92066735hl8.png"/></p>
<p><strong>Ejecutar nuestra aplicación</strong></p>
<p>Para probar nuestro proyecto: <em>Proyecto</em> &gt;&gt; <em>Ejecutar</em> o presionamos <em>F5</em>, con lo cual podremos ejecutar nuestra solución:</p>
<p align="center"><img border="0" src="http://img204.imageshack.us/img204/7184/10oc2.png"/></p>
<p><strong>¡ Ahora usemos el API de Windows Forms para mostrar un cuadro de dialogo !</strong></p>
<p>Vamos a modificar nuestra aplicación para usar el API de Windows Forms, con la cual podremos crear aplicaciones con interfaces gráficas que podrán correr sin ningún problema sobre plataformas Windows.</p>
<p>Lo primero es añadir la referencia a las librerías de <strong>Windows Forms</strong> (<em>System.Windows.Forms</em>), para lo cual le damos clic derecho en la carpeta <em>Referencias</em> en el visor de la solución y luego clic en <em>Editar referencias&#8230;</em>:</p>
<p align="center"><img border="0" src="http://img204.imageshack.us/img204/1882/11vf3.png"/></p>
<p>Seleccionamos el paquete <em>System.Windows.Forms</em> y damos clic en <em>Aceptar</em>:</p>
<p align="center"><img border="0" src="http://img204.imageshack.us/img204/4874/12mt2.png"/></p>
<p>Debemos usar el namespace <em>System.Windows.Forms</em>, y podemos darnos cuenta que, después de referenciar el paquete, al declarar el paquete podemos usar el auto-completamiento de código:</p>
<p align="center"><img border="0" src="http://img204.imageshack.us/img204/7020/13yh2.png"/></p>
<p>Además, el auto-completamiento de código lo podemos usar para ver lo métodos de una determinada clase, y los parámetros que debemos enviarle. Por ejemplo, vamos a crear un método llamado <em>mostrarMensaje()</em>, en donde usaremos la clase <em>MessageBox</em> para mostrar un cuadro de dialogo. Fijémonos cómo MonoDevelop nos indica los parámetros que debemos pasarle al método <em>Show()</em>:</p>
<p align="center"><img border="0" src="http://img204.imageshack.us/img204/2778/14ga9.png"/></p>
<p>MonoDevelop no solo te ayuda auto-completando los métodos de librerías ajenas, sino que nos proporciona esta útil funcionalidad en nuestros propios métodos:</p>
<p align="center"><img border="0" src="http://img204.imageshack.us/img204/6788/15xx5.png"/></p>
<p>Al final nuestro código tendrá el siguiente contenido:</p>
<pre class="brush: csharp; title: ; notranslate">// Ejemplo.cs creado con MonoDevelop
// Usuario: casidiablo a las 14:48 de la fecha 15/12/2007
//

using System;
using System.Windows.Forms;

namespace EjemploMono
{
    public class Ejemplo
    {

        public Ejemplo()
        {
            Console.WriteLine(&quot;Este es el constructor&quot;);
        }
        public void mostrarMensaje()
        {
            MessageBox.Show(&quot;Este es el texto&quot;, &quot;Y este el titulo&quot;);
        }
        static void Main(string[] args)
        {
            new Ejemplo().mostrarMensaje();
        }
    }
}</pre>
<p>Al ejecutarlo veremos lo siguiente:</p>
<p align="center"><img border="0" src="http://img204.imageshack.us/img204/3117/16if9.png"/></p>
<p><strong>¿Porqué usar Windows Forms en vez de Gtk? ¿Qué no te gustaba el software libre y tal?</strong></p>
<p>Como programadores, y aunque amemos las filosofías del software libre, tenemos que estar al tanto de todo cuanto nos sea posible, y esto irremediablemente nos &#8220;obliga&#8221; a que aprendamos a desarrollar software para sistemas Microsoft Windows. Desafortunadamente, Microsoft tiene una GRAN cuota en el mercado, y por tanto debemos estar preparados para crear e  implementar aplicaciones compatibles con sus sistemas operativos.</p>
<p>Si estás interesado en estos temas, seguro tienes una gran ventaja sobre los desarrolladores de software pro-Microsoft, que solo aprenden lo estrictamente necesario. Usando herramientas como Mono, no solo eres LIBRE sino que tienes un panorama muchísimo más amplio para el desarrollo de soluciones de software. No desaproveches la oportunidad.</p>
<p>Un saludo!</p>
<p><strong>Descagas:</strong></p>
<ul>
<li><a href="http://casidiablo.net/descargar/Mono+Develop">Descargar este artículo en formato PDF</a></li>
<li><a href="http://casidiablo.net/descargar/Mono+Develop+Versi%C3%B3n+Editable">Descargar este artículo en formato ODT, para que puedas editarlo</a></li>
</ul>

]]></content:encoded>
			<wfw:commentRss>http://casidiablo.net/caracteristicas-monodevelop/feed/</wfw:commentRss>
		<slash:comments>12</slash:comments>
		</item>
		<item>
		<title>C# y .NET</title>
		<link>http://casidiablo.net/c-y-net/</link>
		<comments>http://casidiablo.net/c-y-net/#comments</comments>
		<pubDate>Mon, 10 Dec 2007 14:27:08 +0000</pubDate>
		<dc:creator>Cristian</dc:creator>
				<category><![CDATA[off-topic]]></category>
		<category><![CDATA[C++]]></category>
		<category><![CDATA[ejemplos]]></category>
		<category><![CDATA[ejercicios]]></category>
		<category><![CDATA[java]]></category>
		<category><![CDATA[mono]]></category>
		<category><![CDATA[monodevelop]]></category>
		<category><![CDATA[programación]]></category>
		<category><![CDATA[python]]></category>

		<guid isPermaLink="false">http://www.casidiablo.net/wordpress/index.php/c-y-net/</guid>
		<description><![CDATA[C# (pronunciado &#8220;si sharp&#8221; o C sostenido) es un lenguaje de programación orientado a objetos desarrollado y estandarizado por Microsoft como parte de su plataforma .NET, que después fue aprobado como un estándar por la ECMA e ISO. Su sintaxis básica deriva de C/C++ y utiliza el modelo de objetos de la plataforma .NET el [...]]]></description>
			<content:encoded><![CDATA[
<div class="topsy_widget_data topsy_theme_blue" style="float: right;margin-left: 0.75em; background: url(data:,%7B%20%22url%22%3A%20%22http%253A%252F%252Fcasidiablo.net%252Fc-y-net%252F%22%2C%20%22style%22%3A%20%22big%22%2C%20%22title%22%3A%20%22C%23%20y%20.NET%22%20%7D);"></div>
<div class="nota">C<strong>#</strong> (pronunciado <em><strong>&#8220;si sharp&#8221;</strong></em> o <strong>C sostenido</strong>) es un lenguaje de programación orientado a objetos desarrollado y estandarizado por Microsoft como parte de su plataforma .NET, que después fue aprobado como un estándar por la ECMA e ISO.<br />
Su sintaxis básica deriva de C/C++ y utiliza el modelo de objetos de la plataforma .NET el cual es similar al de Java aunque incluye mejoras derivadas de otros lenguajes (más notablemente de Delphi y Java). C# fue diseñado para combinar el control de lenguajes de bajo nivel como C y la velocidad de programación de lenguajes de alto nivel como Visual Basic.</div>
<h3>Ejemplos, ejercicios C#, código fuente</h3>
<ul>
<li>Entradas:
<ul>
<li> <strong><a title="Leer entrada" href="http://www.casidiablo.net/wordpress/index.php/2007/12/10/acerca-de-mono/">Acerca de Mono</a></strong></li>
<li><a title="Leer entrada" href="http://www.casidiablo.net/wordpress/index.php/2007/12/10/c-crear-una-aplicacion-usando-mono-referenciando-windowsforms/">C#, crear una aplicación usando Mono [referenciando Windows.Forms]</a></li>
<li><strong><a title="Leer entrada" href="http://www.casidiablo.net/wordpress/index.php/2007/12/16/caracteristicas-monodevelop/">Breve introducción al MonoDevelop</a></strong></li>
<li><a title="Leer entrada" href="http://www.casidiablo.net/wordpress/index.php/2007/12/10/c-crear-una-aplicacion-usando-visual-studio/">C#, crear una aplicación usando Visual Studio</a></li>
</ul>
</li>
<li>Código fuente:
<ul>
<li><a href="http://www.casidiablo.net/wordpress/index.php/2007/12/10/codigo-c-sharp-programas-basicos/">Programas básicos (1)</a></li>
<li><a href="http://www.casidiablo.net/wordpress/index.php/2007/12/10/codigo-c-sharp-programas-basicos-2/">Programas Básicos (2)</a></li>
<li><a href="http://www.casidiablo.net/wordpress/index.php/2007/12/10/codigo-c-sharp-instrucciones-control/">Instrucciones de control</a></li>
<li><a href="http://www.casidiablo.net/wordpress/index.php/2007/12/17/codigo-ejemplo-funciones-c-sharp/">Ejemplo básico de métodos en C Sharp</a></li>
<li><a href="http://casidiablo.net/funciones-referencia-valor-c-sharp/">Paso de variables Por Referencia vs Por Valor C Sharp</a></li>
<li><a href="http://casidiablo.net/numeros-random-c-sharp/">Números aleatorios en C Sharp</a></li>
</ul>
</li>
<li>Ejercicios con arreglos
<ul>
<li><a href="http://casidiablo.net/arreglos-en-c-sharp/">Arreglos en C Sharp</a></li>
<li><a href="http://casidiablo.net/ejercicios-basicos-manejo-arreglos-c-sharp/">Ejemplos básicos de manipulación de arreglos en C Sharp</a></li>
<li><a href="http://casidiablo.net/paso-arreglos-por-valor-referencia-csharp/">Paso de valores por valor y referencia en C Sharp [arreglos] &#8211; 1ra parte</a></li>
<li><a href="http://casidiablo.net/paso-array-valor-referencia-c-sharp/">Paso de valores por valor y referencia en C Sharp [arreglos] &#8211; 2da parte</a></li>
<li><a href="http://casidiablo.net/ordenamiento-array-c-sharp-metodo-burbuja/">Ordenar arreglos C Sharp &#8211; Método burbuja</a></li>
<li><a href="http://casidiablo.net/buscar-elementos-dentro-array-csharp-metodo-lineal/">Buscar datos dentro de arreglos C Sharp &#8211; Método Lineal</a></li>
<li><a href="http://casidiablo.net/ejemplo-localizacion-binaria-c-sharp/">Busqueda Binaria &#8211; C Sharp</a></li>
<li><a href="http://casidiablo.net/matrices-en-c-sharp/">Arreglos bidimensionales en C Sharp</a></li>
</ul>
</li>
<li>Programación Orientada a Objetos
<ul>
<li><a href="http://casidiablo.net/poo-c-sharp/">Programación Orientada a Objetos en C Sharp</a></li>
<li><a href="http://casidiablo.net/constructores-clases-c-sharp/">Ejemplo de constructores de clases en C Sharp</a></li>
<li><a href="http://casidiablo.net/get-set-c-sharp/">Uso de propiedades para acceder a los atributos de objetos en C Sharp</a></li>
<li><a href="http://casidiablo.net/atributos-estaticos-destructores-c-sharp/}">Variables estáticas y destructores en C Sharp</a></li>
<li><a href="http://casidiablo.net/constantes-en-c/">Constantes en C Sharp</a></li>
</ul>
</li>
</ul>
<h3>Nos toca trabajar un poquito con Microsoft</h3>
<p>La idea de ésta sección es recopilar bastante información, ejemplos, y código fuente acerca de C#. Este blog centra sus temas en <a href="http://www.casidiablo.net/wordpress/index.php/category/linux/">Gnu/Linux</a> y <a href="http://www.casidiablo.net/wordpress/index.php/category/programacion/">Programación</a>&#8230; y hasta el momento no habíamos tocado más que Java. Ahora que voy a tratar C#, es imposible no hablar acerca de Microsoft e incluso mostrar ejemplos de programación con productos para Windows como <a href="http://www.google.com.co/search?q=Microsoft+Visual+Studio&amp;ie=utf-8&amp;oe=utf-8&amp;aq=t&amp;rls=FlockInc.:en-US:official&amp;client=firefox">Microsoft Visual Studio</a>.</p>
<p>Afortunadamente el mundo de Gnu/Linux posee una comunidad activa e inquieta, y contamos con un excelente proyecto llamado Mono:</p>
<p class="cita"><strong>Mono</strong> es el nombre de un proyecto de <a title="Código abierto" href="http://es.wikipedia.org/wiki/C%C3%B3digo_abierto">código abierto</a> iniciado por <a title="Ximian" href="http://es.wikipedia.org/wiki/Ximian">Ximian</a> y actualmente impulsado por <a title="Novell" href="http://es.wikipedia.org/wiki/Novell">Novell</a> (tras su adquisición de Ximian para crear un grupo de herramientas libres, basadas en <a title="GNU/Linux" href="http://es.wikipedia.org/wiki/GNU/Linux">GNU/Linux</a> y compatibles con <a title=".NET de Microsoft" href="http://es.wikipedia.org/wiki/.NET_de_Microsoft">.NET</a> según lo especificado por el <a title="ECMA" href="http://es.wikipedia.org/wiki/ECMA">ECMA</a>.<br />
Mono posee importantes componentes útiles para desarrollar <a title="Software" href="http://es.wikipedia.org/wiki/Software">software</a>:</p>
<ul>
<li>Una <a title="Máquina virtual" href="http://es.wikipedia.org/wiki/M%C3%A1quina_virtual">máquina virtual</a> de lenguaje común de infraestructura (CLI) que contiene un cargador de clases, un <a title="Compilador en tiempo de ejecución" href="http://es.wikipedia.org/wiki/Compilador_en_tiempo_de_ejecuci%C3%B3n">compilador en tiempo de ejecución</a> (JIT), y unas rutinas de recolección de memoria.</li>
<li>Una biblioteca de clases que puede funcionar en cualquier lenguaje que funcione en el CLR (Common Language Runtime).</li>
<li>Un <a title="Compilador" href="http://es.wikipedia.org/wiki/Compilador">compilador</a> para el lenguaje <a title="C Sharp" href="http://es.wikipedia.org/wiki/C_Sharp">C#</a>, MonoBasic (la versión para mono de <a title="Visual Basic" href="http://es.wikipedia.org/wiki/Visual_Basic">Visual Basic</a>), <a title="Lenguaje de programación Java" href="http://es.wikipedia.org/wiki/Lenguaje_de_programaci%C3%B3n_Java">Java</a> y <a title="Python" href="http://es.wikipedia.org/wiki/Python">Python</a>.</li>
<li>El CLR y el Sistema de tipos común (CTS) permite que la aplicación y las bibliotecas sean escritas en una amplia variedad de lenguajes diferentes que compilen para <a title="Byte code" href="http://es.wikipedia.org/wiki/Byte_code">byte code</a></li>
<li>Esto significa por ejemplo, que si defines una clase que haga una manipulación algebraica en <a title="C Sharp" href="http://es.wikipedia.org/wiki/C_Sharp">C#</a>, esa clase puede ser reutilizada en cualquier lenguaje que soporte el &#8220;CLI&#8221;. Puede crear una clase en <a title="C Sharp" href="http://es.wikipedia.org/wiki/C_Sharp">C#</a>, una subclase en <a title="Cplusplus" href="http://es.wikipedia.org/wiki/Cplusplus">C++</a> e instanciar esa clase en un programa en <a title="Lenguaje de programación Eiffel" href="http://es.wikipedia.org/wiki/Lenguaje_de_programaci%C3%B3n_Eiffel">Eiffel</a>.</li>
<li>Un sistema de objetos único, sistema de hilos, bibliotecas de clases y sistema recolector de memoria pueden ser compartidos por todos estos lenguajes.</li>
<li>Es un proyecto independiente de la plataforma. Actualmente Mono corre sobre <a title="Linux" href="http://es.wikipedia.org/wiki/Linux">Linux</a>, <a title="FreeBSD" href="http://es.wikipedia.org/wiki/FreeBSD">FreeBSD</a>, <a title="UNIX" href="http://es.wikipedia.org/wiki/UNIX">UNIX</a>, <a title="Mac OS X" href="http://es.wikipedia.org/wiki/Mac_OS_X">Mac OS X</a>, <a title="Solaris (sistema operativo)" href="http://es.wikipedia.org/wiki/Solaris_%28sistema_operativo%29">Solaris</a> y plataformas <a title="Windows" href="http://es.wikipedia.org/wiki/Windows">Windows</a>.</li>
</ul>
<p>Por tanto, intentaré llevar en paralelo los temas relacionados con C#, mostrando ejemplos tanto en plataformas Windows como en Gnu/Linux.</p>
<h3>Listado de Tutoriales C# y enlaces interesantes</h3>
<ul>
<li><strong>En Español</strong>:
<ul>
<li><a title="Descargar PDF!" href="http://casidiablohost.googlepages.com/EllenguajedeprogramacinC.pdf">El lenguaje de programación C#</a> por <a href="mailto:josanguapo@hotmail.com">José Antonio</a> <a href="http://www.josanguapo.com/">González Seco</a></li>
<li><a href="http://www.programacionfacil.com/csharp_net/start">Tutorial C#</a> (<a href="http://www.programacionfacil.com/">más tutoriales de la misma fuente</a>)</li>
<li><a href="http://www.canalvisualbasic.net/temarios/manual_c_sharp.asp">Manual de C Sharp</a></li>
</ul>
</li>
<li><strong>En inglés:</strong>
<ul>
<li><a href="http://www.csharp-station.com/Tutorial.aspx">C# Tutorial</a> por <a href="http://www.csharp-station.com/default.aspx">C# Station</a></li>
<li><a href="http://www.softsteel.co.uk/tutorials/cSharp/cIndex.html">C# Tutorial</a> en SoftSteel</li>
<li><a href="http://www.25hoursaday.com/CsharpVsJava.html">C#, desde la perspectiva de un programador en Java</a></li>
<li><a href="http://www.ssw.uni-linz.ac.at/Teaching/Lectures/CSharp/Tutorial/Part1.pdf">Indroduction a C#</a></li>
<li><a href="http://www.ssw.uni-linz.ac.at/Teaching/Lectures/CSharp/Tutorial/Part2.pdf">Avanced C#</a></li>
<li><a href="http://csharp.net-tutorials.com/">http://csharp.net-tutorials.com/</a></li>
<li><a href="http://my.execpc.com/~gopalan/dotnet/net_tutorial.html">The Advanced C#/.NET Tutorial</a></li>
<li><a href="http://www.csharphelp.com/archives2/archive402.html">C# Tutorial For Beginners</a></li>
</ul>
</li>
</ul>
<h3>Fuentes:</h3>
<ul>
<li><a href="http://es.wikipedia.org/wiki/C_Sostenido">http://es.wikipedia.org/wiki/C_Sostenido</a></li>
<li><a href="http://es.wikipedia.org/wiki/Proyecto_Mono">http://es.wikipedia.org/wiki/Proyecto_Mono</a></li>
</ul>

]]></content:encoded>
			<wfw:commentRss>http://casidiablo.net/c-y-net/feed/</wfw:commentRss>
		<slash:comments>35</slash:comments>
		</item>
		<item>
		<title>Bloging semanal</title>
		<link>http://casidiablo.net/bloging-semanal/</link>
		<comments>http://casidiablo.net/bloging-semanal/#comments</comments>
		<pubDate>Fri, 12 Oct 2007 21:33:37 +0000</pubDate>
		<dc:creator>Cristian</dc:creator>
				<category><![CDATA[blogsfera]]></category>
		<category><![CDATA[mono]]></category>
		<category><![CDATA[monodevelop]]></category>
		<category><![CDATA[videos]]></category>

		<guid isPermaLink="false">http://www.casidiablo.net/wordpress/index.php/2007/10/12/bloging-semanal/</guid>
		<description><![CDATA[Desafortunadamente ya no he tenido mucho tiempo ultimamente, y por lo tanto no he colocado muchas entradas esta semana. Para reivindicarme con el lector, mejor coloco los enlaces de las cosas interesantes que leí en el transcurso de la semana (y posiblemente siga haciendolo todos los viernes). A por ellos! Gmail aumentará el limite de [...]]]></description>
			<content:encoded><![CDATA[
<div class="topsy_widget_data topsy_theme_blue" style="float: right;margin-left: 0.75em; background: url(data:,%7B%20%22url%22%3A%20%22http%253A%252F%252Fcasidiablo.net%252Fbloging-semanal%252F%22%2C%20%22style%22%3A%20%22big%22%2C%20%22title%22%3A%20%22Bloging%20semanal%22%20%7D);"></div>
<p>Desafortunadamente ya no he tenido mucho tiempo ultimamente, y por lo tanto no he colocado muchas entradas esta semana. Para reivindicarme con el lector, mejor coloco los enlaces de las cosas interesantes que leí en el transcurso de la semana (y posiblemente siga haciendolo todos los viernes). A por ellos!</p>
<ul>
<li><a href="http://www.theinquirer.es/2007/10/12/gmail_aumentara_el_limite_de_almacenamiento.html" title="En The Inquirer" target="_blank">Gmail aumentará el limite de almacenamiento</a></li>
<li><a href="http://www.genbeta.com/2007/10/10-firefox-tendra-una-version-movil" title="En Genbeta" target="_blank">Firefox tendrá una versión móvil</a></li>
<li><a href="http://www.fentlinux.com/web/?q=node/4506" title="En FentLinux" target="_blank">El liberado la versión 2.6.22.10 del Kernel Linux</a></li>
<li><a href="http://www.anieto2k.com/2007/10/11/mejora-esteticamente-los-listados-de-ficheros-de-apache/" title="En el blog de aNieto2K" target="_blank">Mejora estéticamente los listados de ficheros de Apache</a></li>
<li><a href="http://www.blux20.com/2007/10/monodevelop-10-beta-1/" title="En Blux 2.0" target="_blank">Liberado MonoDeveloped 1.0 beta 1</a></li>
<li><a href="http://kernelsource.org/2007/10/08/xnest-accediendo-a-otra-sesion-grafica-de-usuario-dentro-de-una-ventana/" title="En Kernel Source" target="_blank">Xnest, accediendo a otra sesión gráfica de usuario dentro de una ventana</a></li>
<li><a href="http://laventanamuerta.rxfly.net/descargar-la-wikipedia-setiembre-2007/" title="En La Ventana Muerta" target="_blank">Descargar la Wikipedia (setiembre 2007)</a></li>
<li><a href="http://120linux.com/firefox-3-para-diciembre/" title="En 120% Linux" target="_blank">Firefox 3 para diciembre</a></li>
<li><a href="http://www.dosbit.com/2007/10/11-google-earth-ya-soporta-videos-de-youtube" title="En DosBit" target="_blank">Google Earth ya soporta videos en Youtube</a></li>
<li><a href="http://mundogeek.net/archivos/2007/10/12/ubuntu-gutsy-gibbon-rc/" title="En MundoGeek" target="_blank">Ubuntu Gusty Gibbon RC</a></li>
<li><a href="http://ubuntulife.net/wordpress/?p=3112" title="En UbuntuLife" target="_blank">Axel, acelerador ultra rapido de descargas para Linux</a></li>
<li><a href="http://tuxpepino.wordpress.com/2007/10/10/configurar-y-migrar-a-evolution/" title="Entre tuxes y pepinos" target="_blank">Configurar y migrar a Evolution</a></li>
<li><a href="http://feeds.feedburner.com/~r/LinuxeandoPorUnMundoSinVentanas/~3/167031596/" title="En Linuxeando" target="_blank">Cómo instalar Linux Mint Celena</a></li>
</ul>

]]></content:encoded>
			<wfw:commentRss>http://casidiablo.net/bloging-semanal/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>.NET en GNU/Linux&#8230; de la mano de mono</title>
		<link>http://casidiablo.net/net-en-gnulinux-de-la-mano-de-mono/</link>
		<comments>http://casidiablo.net/net-en-gnulinux-de-la-mano-de-mono/#comments</comments>
		<pubDate>Tue, 21 Aug 2007 23:43:34 +0000</pubDate>
		<dc:creator>Cristian</dc:creator>
				<category><![CDATA[.net]]></category>
		<category><![CDATA[artículos]]></category>
		<category><![CDATA[linux]]></category>
		<category><![CDATA[mono]]></category>
		<category><![CDATA[programación]]></category>
		<category><![CDATA[revistas]]></category>
		<category><![CDATA[C++]]></category>
		<category><![CDATA[monodevelop]]></category>

		<guid isPermaLink="false">http://www.casidiablo.net/wordpress/index.php/2007/08/21/net-en-gnulinux-de-la-mano-de-mono/</guid>
		<description><![CDATA[Otro de los excelentes artículos de la revista Linux+, esta vez redactado por Francisco Javier Carazo Gil, en donde se explica desde&#8230; qué es el Proyecto Mono, de qué se compone, porqué surge, hasta&#8230; cómo instalarlo desde el tarball, qué es C#, como se programa usando MonoDevelop, el uso del compilador mcs, entre otros. Es [...]]]></description>
			<content:encoded><![CDATA[
<div class="topsy_widget_data topsy_theme_blue" style="float: right;margin-left: 0.75em; background: url(data:,%7B%20%22url%22%3A%20%22http%253A%252F%252Fcasidiablo.net%252Fnet-en-gnulinux-de-la-mano-de-mono%252F%22%2C%20%22style%22%3A%20%22big%22%2C%20%22title%22%3A%20%22.NET%20en%20GNU%2FLinux...%20de%20la%20mano%20de%20mono%22%20%7D);"></div>
<p><img align="left" width="150" src="http://blog.ninethsense.com/blog_images/mono.gif" alt="Logo Mono" height="156" title="Logo Mono" />Otro de los excelentes artículos de la revista Linux+, esta vez redactado por <a target="_blank" href="http://jcarazo.net" title="Ir a la web de Javier!">Francisco Javier Carazo Gil</a>, en donde se explica desde&#8230; qué es el <a target="_blank" href="http://www.casidiablo.net/wordpress/index.php/2007/12/10/acerca-de-mono/">Proyecto Mono</a>, de qué se compone, porqué surge, hasta&#8230; cómo instalarlo desde el tarball, qué es <a target="_blank" href="http://www.casidiablo.net/wordpress/index.php/c-y-net/">C#</a>, como se programa usando <a target="_blank" href="http://www.monodevelop.com" title="Ver el sitio oficial">MonoDevelop</a>, el uso del <a target="_blank" href="http://www.mono-project.com/CSharp_Compiler">compilador mcs</a>, entre otros. Es una pequeña pero susutanciosa fuente de información que servirá de mucho a las personas que aún no conocen el proyecto o tienen la curiosidad de saber de que trata.</p>
<p><a target="_blank" href="http://casidiablohost.googlepages.com/mono.pdf" title="Descargar artículo">Descargar en PDF!</a></p>

]]></content:encoded>
			<wfw:commentRss>http://casidiablo.net/net-en-gnulinux-de-la-mano-de-mono/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
	</channel>
</rss>

