<?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>Gabriel Rodriguez Plancarte &#187; Mejores Practicas</title>
	<atom:link href="http://gabrielrodriguez.net/tag/mejores-practicas/feed/" rel="self" type="application/rss+xml" />
	<link>http://gabrielrodriguez.net</link>
	<description>Tecnologia, Diseño, Negocios y Desarrollo</description>
	<lastBuildDate>Sat, 12 May 2012 01:41:04 +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>Links del dia #1</title>
		<link>http://gabrielrodriguez.net/links-del-dia-1/</link>
		<comments>http://gabrielrodriguez.net/links-del-dia-1/#comments</comments>
		<pubDate>Sat, 22 Jan 2011 22:59:18 +0000</pubDate>
		<dc:creator>Gabriel</dc:creator>
				<category><![CDATA[.NET]]></category>
		<category><![CDATA[Bases de Datos]]></category>
		<category><![CDATA[Desarrollo de Software]]></category>
		<category><![CDATA[Links del Dia]]></category>
		<category><![CDATA[Mejores Practicas]]></category>
		<category><![CDATA[SQL]]></category>
		<category><![CDATA[Tips]]></category>
		<category><![CDATA[SQL Server]]></category>

		<guid isPermaLink="false">http://gabrielrodriguez.net/?p=814</guid>
		<description><![CDATA[<div class="addthis_toolbox addthis_default_style " addthis:url='http://gabrielrodriguez.net/links-del-dia-1/' addthis:title='Links del dia #1 '  ><a class="addthis_button_facebook_like" fb:like:layout="button_count"></a><a class="addthis_button_tweet"></a><a class="addthis_counter addthis_pill_style"></a></div>Ya que de perdido paso 2 horas al día leyendo artículos técnicos sobre desarrollo de software o cosas relacionadas a sistemas, y durante los últimos 5 años la mayoría de lo que he aprendido ha sido en base a blog posts, he decido empezar una serie de posts recomendado uno o más artículo/posts que haya [...]<div class="addthis_toolbox addthis_default_style addthis_32x32_style" addthis:url='http://gabrielrodriguez.net/links-del-dia-1/' addthis:title='Links del dia #1 ' ><a class="addthis_button_preferred_1"></a><a class="addthis_button_preferred_2"></a><a class="addthis_button_preferred_3"></a><a class="addthis_button_preferred_4"></a><a class="addthis_button_compact"></a></div>]]></description>
			<content:encoded><![CDATA[<div class="addthis_toolbox addthis_default_style " addthis:url='http://gabrielrodriguez.net/links-del-dia-1/' addthis:title='Links del dia #1 '  ><a class="addthis_button_facebook_like" fb:like:layout="button_count"></a><a class="addthis_button_tweet"></a><a class="addthis_counter addthis_pill_style"></a></div><p>Ya que de perdido paso 2 horas al día leyendo artículos técnicos sobre desarrollo de software o cosas relacionadas a sistemas, y durante los últimos 5 años la mayoría de lo que he aprendido ha sido en base a blog posts, he decido empezar una serie de posts recomendado uno o más artículo/posts que haya leído durante ese día, categorizados por tecnología o área.</p>
<p>No se si logre hacer esto diariamente, pero al menos el intento se hará. Aquí estan los primeros artículos interesantes que he leído el día de hoy:</p>
<p><strong>SQL</strong></p>
<p><a title="SQL - Introduction to JOINS - Basic of JOINS" href="http://blog.sqlauthority.com/2009/04/13/sql-server-introduction-to-joins-basic-of-joins/">Introduction to JOINS &#8211; Basic of JOINS</a>: Escrito por Pinal Dave, un experto de SQL. Mucha gente no sabe explicar los JOINS en SQL o la diferencia exacta entre ellos, buen artículo.</p>
<p><strong>Personal Improvement</strong></p>
<p><a title="Basic Presentation Skills Training - Notes from Joel Abrahamsson" href="http://joelabrahamsson.com/entry/notes-from-basic-presentation-skills-training">Basic Presentation Skills Training &#8211; Notes from Joel Abrahamsson</a>: Parte de mi rol de trabajo es dar algunas presentaciones técnicas, y la verdad es que la mayoría de la gente no somos buenos para esto. Buenas notas y tips de este desarrollador que está tomando un curso al respecto.</p>
<p><strong>.NET / C# / ASP.NET</strong></p>
<p><a title="The State of the ALT.NET Movement" href="http://codebetter.com/iancooper/2011/01/16/alt-next/">ALT.Next</a> &#8211; ALT.NET es un &#8220;movimiento&#8221; o &#8220;corriente&#8221; integrado por varios desarrolladores enfocados en traer las mejores prácticas y herramientas de otras comunidades de desarrollo (Java, Ruby, Python, etc) a la comunidad de Microsoft y .NET en general. Aunque su auge más fuerte ya pasó, este artículo da una idea de hacia donde van.</p>
<p><strong>Desarrollo de Sistemas en General</strong></p>
<p><a title="Software Development Metodologies at a Glance" href="http://blogs.msdn.com/b/jmeier/archive/2011/01/21/methodologies-at-a-glance.aspx">Metodologies at a Glance</a><strong> &#8211; </strong>J.D. Meier, un Principal Program Manager de Microsoft, en el equipo de Patterns &amp; Practices, escribe posts muy útiles constantemente. Este post es un mapa de algunas actividades/artefactos clave en varios procesos de desarrollo de software.</p>
<p>That&#8217;s it. Read on.</p>
<div class="addthis_toolbox addthis_default_style addthis_32x32_style" addthis:url='http://gabrielrodriguez.net/links-del-dia-1/' addthis:title='Links del dia #1 ' ><a class="addthis_button_preferred_1"></a><a class="addthis_button_preferred_2"></a><a class="addthis_button_preferred_3"></a><a class="addthis_button_preferred_4"></a><a class="addthis_button_compact"></a></div>]]></content:encoded>
			<wfw:commentRss>http://gabrielrodriguez.net/links-del-dia-1/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Principios de Diseño Orientado a Objetos (OOD)</title>
		<link>http://gabrielrodriguez.net/principios-de-diseno-orientado-a-objetos-ood/</link>
		<comments>http://gabrielrodriguez.net/principios-de-diseno-orientado-a-objetos-ood/#comments</comments>
		<pubDate>Mon, 17 Aug 2009 00:59:19 +0000</pubDate>
		<dc:creator>Gabriel</dc:creator>
				<category><![CDATA[Desarrollo de Software]]></category>
		<category><![CDATA[Arquitectura]]></category>
		<category><![CDATA[Mejores Practicas]]></category>
		<category><![CDATA[OOP]]></category>
		<category><![CDATA[Principios Basicos]]></category>

		<guid isPermaLink="false">http://gabrielrodriguez.net/?p=476</guid>
		<description><![CDATA[<div class="addthis_toolbox addthis_default_style " addthis:url='http://gabrielrodriguez.net/principios-de-diseno-orientado-a-objetos-ood/' addthis:title='Principios de Diseño Orientado a Objetos (OOD) '  ><a class="addthis_button_facebook_like" fb:like:layout="button_count"></a><a class="addthis_button_tweet"></a><a class="addthis_counter addthis_pill_style"></a></div>Siguiendo con esas cosas que todos deberían saber&#8230;pero que muchos no comprenden totalmente: Robert Martin, mejor conocido como Uncle Bob, explica de manera muy clara los principios básicos de diseño orientado a objetos. No solo es necesario poder recitar estos principios, sino que hay que entenderlos y poder explicar las razones de su importancia. Precisamente [...]<div class="addthis_toolbox addthis_default_style addthis_32x32_style" addthis:url='http://gabrielrodriguez.net/principios-de-diseno-orientado-a-objetos-ood/' addthis:title='Principios de Diseño Orientado a Objetos (OOD) ' ><a class="addthis_button_preferred_1"></a><a class="addthis_button_preferred_2"></a><a class="addthis_button_preferred_3"></a><a class="addthis_button_preferred_4"></a><a class="addthis_button_compact"></a></div>]]></description>
			<content:encoded><![CDATA[<div class="addthis_toolbox addthis_default_style " addthis:url='http://gabrielrodriguez.net/principios-de-diseno-orientado-a-objetos-ood/' addthis:title='Principios de Diseño Orientado a Objetos (OOD) '  ><a class="addthis_button_facebook_like" fb:like:layout="button_count"></a><a class="addthis_button_tweet"></a><a class="addthis_counter addthis_pill_style"></a></div><p>Siguiendo con esas cosas que todos deberían saber&#8230;pero que muchos no comprenden totalmente:</p>
<p><strong>Robert Martin</strong>, mejor conocido como <strong>Uncle Bob</strong>, explica de manera muy clara<strong> los principios básicos de diseño orientado a objetos</strong>. No solo es necesario poder recitar estos principios, sino que<strong> hay que entenderlos y poder explicar las razones de su importancia</strong>.</p>
<p>Precisamente de este articulo que voy a poner la liga, cito un párrafo que es muy cierto:</p>
<p><em>&#8220;All too often today&#8217;s programmers are unaware of the principles that are the foundation of the disciplines that their languages were derived around.&#8221;</em></p>
<p>Los primeros 5 principios son los famosos <strong>SOLID</strong><strong> </strong>(que en muchas ocasiones les tocará leer el acrónimo en artículos)<strong> </strong>y son orientados a <strong>diseño de clases</strong>. Los 3 siguientes<strong> </strong>son orientados a <strong>Cohesión </strong>de librerías de código, y los últimos 3 son orientados a <strong>dependencias </strong>entre librerías de código.</p>
<p>Los principios SOLID:</p>
<ul>
<li><strong>S</strong>ingle Responsibility Principle (SRP)</li>
<li><strong>O</strong>pen-Closed Principle (OCP)</li>
<li><strong>L</strong>iskov Substitution Principle (LSP)</li>
<li><strong>I</strong>nterface Segregation Principle (ISP)</li>
<li><strong>D</strong>ependency Inversion Principle (DIP)</li>
</ul>
<p>Incluso cada uno de los principios está claramente explicado y disponible para <strong>bajarse en PDF por separado</strong>. La siguiente es la liga:</p>
<p><a title="The Principles of OOD" href="http://butunclebob.com/ArticleS.UncleBob.PrinciplesOfOod">The principles of Object Oriented Design</a>, by UncleBob</p>
<div class="addthis_toolbox addthis_default_style addthis_32x32_style" addthis:url='http://gabrielrodriguez.net/principios-de-diseno-orientado-a-objetos-ood/' addthis:title='Principios de Diseño Orientado a Objetos (OOD) ' ><a class="addthis_button_preferred_1"></a><a class="addthis_button_preferred_2"></a><a class="addthis_button_preferred_3"></a><a class="addthis_button_preferred_4"></a><a class="addthis_button_compact"></a></div>]]></content:encoded>
			<wfw:commentRss>http://gabrielrodriguez.net/principios-de-diseno-orientado-a-objetos-ood/feed/</wfw:commentRss>
		<slash:comments>2</slash:comments>
		</item>
		<item>
		<title>Usar solamente string.Format para unir strings y variables</title>
		<link>http://gabrielrodriguez.net/usar-solamente-stringformat-para-unir-strings-y-variables/</link>
		<comments>http://gabrielrodriguez.net/usar-solamente-stringformat-para-unir-strings-y-variables/#comments</comments>
		<pubDate>Thu, 12 Feb 2009 07:33:24 +0000</pubDate>
		<dc:creator>Gabriel</dc:creator>
				<category><![CDATA[.NET]]></category>
		<category><![CDATA[C#]]></category>
		<category><![CDATA[Mejores Practicas]]></category>

		<guid isPermaLink="false">http://gabrielrodriguez.net/?p=150</guid>
		<description><![CDATA[<div class="addthis_toolbox addthis_default_style " addthis:url='http://gabrielrodriguez.net/usar-solamente-stringformat-para-unir-strings-y-variables/' addthis:title='Usar solamente string.Format para unir strings y variables '  ><a class="addthis_button_facebook_like" fb:like:layout="button_count"></a><a class="addthis_button_tweet"></a><a class="addthis_counter addthis_pill_style"></a></div>Los desarrolladores que apenas vayan empezando, acostúmbrense a usar el método string.Format en lugar de estar concatenando strings y variables!! Incluso varios desarrolladores avanzados siguen concatenando en lugar de usar string.Format(), lo cual definitivamente hace mucho más difícil que los desarrolladores principiantes se acostumbren a seguir estándares y Mejores Practicas. La sintaxis para usarlo es [...]<div class="addthis_toolbox addthis_default_style addthis_32x32_style" addthis:url='http://gabrielrodriguez.net/usar-solamente-stringformat-para-unir-strings-y-variables/' addthis:title='Usar solamente string.Format para unir strings y variables ' ><a class="addthis_button_preferred_1"></a><a class="addthis_button_preferred_2"></a><a class="addthis_button_preferred_3"></a><a class="addthis_button_preferred_4"></a><a class="addthis_button_compact"></a></div>]]></description>
			<content:encoded><![CDATA[<div class="addthis_toolbox addthis_default_style " addthis:url='http://gabrielrodriguez.net/usar-solamente-stringformat-para-unir-strings-y-variables/' addthis:title='Usar solamente string.Format para unir strings y variables '  ><a class="addthis_button_facebook_like" fb:like:layout="button_count"></a><a class="addthis_button_tweet"></a><a class="addthis_counter addthis_pill_style"></a></div><p>Los desarrolladores que apenas vayan empezando, <strong>acostúmbrense a usar el método string.Format en lugar de estar concatenando strings y variables</strong>!!</p>
<p>Incluso varios desarrolladores avanzados siguen concatenando en lugar de usar string.Format(), lo cual definitivamente hace mucho más difícil que los desarrolladores principiantes se acostumbren a seguir estándares y Mejores Practicas.</p>
<p>La sintaxis para usarlo es de lo más simple, y además <strong>hace la línea de código muchísimo más legible</strong>, por ejemplo:</p>
<p><code>
<pre class="brush: csharp; title: ; notranslate">labelMensaje.Text = &quot;El usuario &quot; + userName + &quot; realizo el pedido &quot; + numPedido + &quot; el dia &quot; + DateTime.Now.ToString();</pre>
<p></code></p>
<p>Odio ver ese tipo de líneas de código, cuando se puede tener algo tan sencillo como esto:</p>
<p><code>
<pre class="brush: csharp; title: ; notranslate">labelMensaje.Text = string.Format(&quot;El usuario {0} realizo el pedido {1} el dia {2}&quot;, userName, numPedido, DateTime.Now);</pre>
<p></code></p>
<p>Si la legibilidad no es suficiente mejora, también hay que notar que escribir todo el mensaje en un solo string <strong>evita posibles errores de falta de espacios entre palabras y variables</strong>, lo cual es muy común que suceda cuando se concatenan variables, es muy fácil que se coman el espacio al terminar un string antes de concatenar, o al iniciar el string después de haber concatenado.</p>
<div class="addthis_toolbox addthis_default_style addthis_32x32_style" addthis:url='http://gabrielrodriguez.net/usar-solamente-stringformat-para-unir-strings-y-variables/' addthis:title='Usar solamente string.Format para unir strings y variables ' ><a class="addthis_button_preferred_1"></a><a class="addthis_button_preferred_2"></a><a class="addthis_button_preferred_3"></a><a class="addthis_button_preferred_4"></a><a class="addthis_button_compact"></a></div>]]></content:encoded>
			<wfw:commentRss>http://gabrielrodriguez.net/usar-solamente-stringformat-para-unir-strings-y-variables/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>About SCRUM</title>
		<link>http://gabrielrodriguez.net/about-scrum/</link>
		<comments>http://gabrielrodriguez.net/about-scrum/#comments</comments>
		<pubDate>Thu, 25 Dec 2008 01:11:36 +0000</pubDate>
		<dc:creator>Gabriel</dc:creator>
				<category><![CDATA[Desarrollo de Software]]></category>
		<category><![CDATA[Mejores Practicas]]></category>
		<category><![CDATA[SCRUM]]></category>

		<guid isPermaLink="false">http://gabrielrodriguez.net/?p=47</guid>
		<description><![CDATA[<div class="addthis_toolbox addthis_default_style " addthis:url='http://gabrielrodriguez.net/about-scrum/' addthis:title='About SCRUM '  ><a class="addthis_button_facebook_like" fb:like:layout="button_count"></a><a class="addthis_button_tweet"></a><a class="addthis_counter addthis_pill_style"></a></div>En mi primer trabajo usabamos mucho el SCRUM, y siempre se me hizo una practica muy buena, a la cual como principal ventaja le veia no el hecho de que todos estuvieran enterados del estatus de todos, sino que evita mucho el re-trabajo, en funcion de que al platicar un problema con el cual llevabamos [...]<div class="addthis_toolbox addthis_default_style addthis_32x32_style" addthis:url='http://gabrielrodriguez.net/about-scrum/' addthis:title='About SCRUM ' ><a class="addthis_button_preferred_1"></a><a class="addthis_button_preferred_2"></a><a class="addthis_button_preferred_3"></a><a class="addthis_button_preferred_4"></a><a class="addthis_button_compact"></a></div>]]></description>
			<content:encoded><![CDATA[<div class="addthis_toolbox addthis_default_style " addthis:url='http://gabrielrodriguez.net/about-scrum/' addthis:title='About SCRUM '  ><a class="addthis_button_facebook_like" fb:like:layout="button_count"></a><a class="addthis_button_tweet"></a><a class="addthis_counter addthis_pill_style"></a></div><p>En mi primer trabajo usabamos mucho el <strong>SCRUM</strong>, y siempre se me hizo una practica muy buena, a la cual como <strong>principal ventaja</strong> le veia no el hecho de que todos estuvieran enterados del estatus de todos, sino que <strong>evita mucho el re-trabajo</strong>, en funcion de que al platicar un problema con el cual llevabamos un dia o algunas horas batallando, algun desarrollador que estaba en la junta de SCRUM explicaba que ya habia enfrentado ese mismo problema, y como lo habia resuelto.</p>
<p>En el proyecto donde usamos SCRUM en esa compañia, probablemente eramos entre 20 y 30 desarrolladores los que integrabamos el equipo, mas administradores de proyecto, por lo cual definitivamente era muy util tener estas juntas.</p>
<p>Todo esto viene a que encontre este site dedicado al <strong>SCRUM</strong>, llamado <a title="About SCRUM" href="http://aboutscrum.com/" target="_blank">About Scrum</a>. Tiene pocos articulos y un par de videos, pero el contenido es de calidad.</p>
<p>Les recomiendo que lo visiten si quieren saber mas sobre esta practica.</p>
<div class="addthis_toolbox addthis_default_style addthis_32x32_style" addthis:url='http://gabrielrodriguez.net/about-scrum/' addthis:title='About SCRUM ' ><a class="addthis_button_preferred_1"></a><a class="addthis_button_preferred_2"></a><a class="addthis_button_preferred_3"></a><a class="addthis_button_preferred_4"></a><a class="addthis_button_compact"></a></div>]]></content:encoded>
			<wfw:commentRss>http://gabrielrodriguez.net/about-scrum/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
	</channel>
</rss>

