<?xml version="1.0" encoding="utf-8" standalone="yes"?><rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom"><channel><title>C# on csegura</title><link>https://csegura.github.io/tags/c%23/</link><description>Recent content in C# on csegura</description><generator>Hugo</generator><language>en-us</language><lastBuildDate>Sat, 16 Jan 2010 00:00:00 +0100</lastBuildDate><atom:link href="https://csegura.github.io/tags/c%23/index.xml" rel="self" type="application/rss+xml"/><item><title>Fuzzy Logic &amp; lambda expressions</title><link>https://csegura.github.io/posts/2010/10_01_16_fuzzy_logic/</link><pubDate>Sat, 16 Jan 2010 00:00:00 +0100</pubDate><guid>https://csegura.github.io/posts/2010/10_01_16_fuzzy_logic/</guid><description>&lt;p>Para un proyecto que estoy realizando, he realizado una prueba de concepto probado a aplicar lógica difusa con el fin de realizar ciertas acciones a partir de una serie de datos imprecisos.&lt;/p>
&lt;p>A la hora de expresar las reglas encargadas de modelar nuestro sistema de lógica difusa, (IF-THEN) la mayoría de los sistemas que he visto requerían de un pequeño y simple analizador sintáctico para interpretar las reglas, en este punto me he preguntado si en vez de un analizador sintáctico, podríamos usar expresiones lambda y una interfaz fluida.&lt;/p></description></item><item><title>Polar RS300X GUI</title><link>https://csegura.github.io/posts/2010/10_01_10_polar_rs300x_gui/</link><pubDate>Sun, 10 Jan 2010 00:00:00 +0100</pubDate><guid>https://csegura.github.io/posts/2010/10_01_10_polar_rs300x_gui/</guid><description>&lt;p>Estas navidades el Olentzero, Santa Claus, Papa Noel ó uno mismo, vaya ud. a saber … me dejo un pulsometro Polar RS300x, uno de esos aparatitos que te miden las pulsaciones (para evitar que a los que nos vamos haciendo mayores nos dé un chunguito)&lt;/p>
&lt;p>La verdad es que no está nada mal, viene con el transmisor WearLink que es la cinta que te atas en el pecho que se encarga de enviar la frecuencia cardiaca al reloj, con un sensor S1 que es un podómetro que te pones en la zapatilla y una vez calibrado, mide la distancia y la velocidad, y finalmente con el FlowLink que es un dispositivo USB a través del cual puedes enviar la información a una web para (&lt;a href="https://www.polarpersonaltrainer.com" target="_blank">www.polarpersonaltrainer.com&lt;/a>) para mantener un histórico de las sesiones de entrenamiento.&lt;/p></description></item><item><title>Unit Testing</title><link>https://csegura.github.io/posts/2008/08_09_21_unit_testing/</link><pubDate>Sun, 21 Sep 2008 00:00:00 +0100</pubDate><guid>https://csegura.github.io/posts/2008/08_09_21_unit_testing/</guid><description>&lt;p>Aquí continúa el drama de Unit Test para SharePoint. Esta vez hemos reunido esfuerzos entre nosotros, Carlos Segura (&lt;a href="http://www.ideseg.com" target="_blank">http://www.ideseg.com&lt;/a> ) y Gustavo Velez (&lt;a href="http://www.gavd.net" target="_blank">http://www.gavd.net&lt;/a> ), para intentar sacar algo en claro. Programadores del mundo de SharePoint, uníos! …&lt;/p>
&lt;p>Unit Test, SharePoint y que es lo importante:&lt;/p>
&lt;p>Testeo Unitario es una técnica de programación que permite asegurar que lo que se ha programado hoy cumple las condiciones exigidas, y que las seguirá cumpliendo en el futuro, cuando se hagan modificaciones en el código fuente. Existe numerosa información al respecto, tanto en libros de texto como en internet, así que no repetiremos las bases de la técnica; en resumen, es deseable que se
cumplan algunas condiciones:&lt;/p></description></item><item><title>CAS Policies</title><link>https://csegura.github.io/posts/2008/08_07_23_cas_policies/</link><pubDate>Wed, 23 Jul 2008 00:00:00 +0100</pubDate><guid>https://csegura.github.io/posts/2008/08_07_23_cas_policies/</guid><description>&lt;p>Muchos de los desarrolladores de SharePoint, terminan optando por desplegar sus aplicaciones en el GAC, para evitar problemas de seguridad. Esta no es la manera más correcta y cada vez más administradores de sistemas, exigen que las soluciones se desplieguen en los directorios de aplicación.&lt;/p>
&lt;p>Los ensamblados que se ejecutan desde el GAC, se ejecutan bajo total confianza (Full Trust) y están disponibles para todos los servidores virtuales y todas las aplicaciones, lo cual termina siendo menos seguro si desconocemos la procedencia del ensamblado, cosa que ocurre con frecuencia.&lt;/p></description></item><item><title>Format vs Concat</title><link>https://csegura.github.io/posts/2008/08_05_14_format_vs_concat/</link><pubDate>Wed, 14 May 2008 00:00:00 +0100</pubDate><guid>https://csegura.github.io/posts/2008/08_05_14_format_vs_concat/</guid><description>&lt;p>Esto post es para recordar simplemente que concatenar cadenas con String.Format es una mala práctica y para eso tenemos ese gran olvidado que es String.Concat.&lt;/p>
&lt;p>Y como muestra un ejemplo…&lt;/p>
&lt;p>&lt;img src="https://csegura.github.io/images/Sharepoint/FormatVsConcat.gif" alt="">&lt;/p>
&lt;div class="highlight">&lt;pre tabindex="0" style="color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;">&lt;code class="language-csharp" data-lang="csharp">&lt;span style="display:flex;">&lt;span>&lt;span style="color:#66d9ef">public&lt;/span> &lt;span style="color:#66d9ef">void&lt;/span> Format()
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>{
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span> &lt;span style="color:#66d9ef">for&lt;/span> (&lt;span style="color:#66d9ef">int&lt;/span> i = &lt;span style="color:#ae81ff">0&lt;/span>; i &amp;lt; &lt;span style="color:#ae81ff">1000&lt;/span>; i++)
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span> {
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span> String.Format(&lt;span style="color:#e6db74">&amp;#34;{0},{1}&amp;#34;&lt;/span>, &lt;span style="color:#e6db74">&amp;#34;Test&amp;#34;&lt;/span>, &lt;span style="color:#e6db74">&amp;#34;Test&amp;#34;&lt;/span>);
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span> }
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>}
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span> 
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>&lt;span style="color:#66d9ef">public&lt;/span> &lt;span style="color:#66d9ef">void&lt;/span> Concat()
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>{
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span> &lt;span style="color:#66d9ef">for&lt;/span> (&lt;span style="color:#66d9ef">int&lt;/span> i = &lt;span style="color:#ae81ff">0&lt;/span>; i &amp;lt; &lt;span style="color:#ae81ff">1000&lt;/span>; i++)
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span> {
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span> String.Concat(&lt;span style="color:#e6db74">&amp;#34;Test&amp;#34;&lt;/span>,&lt;span style="color:#e6db74">&amp;#34;,&amp;#34;&lt;/span>, &lt;span style="color:#e6db74">&amp;#34;Test&amp;#34;&lt;/span>);
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span> }
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>}
&lt;/span>&lt;/span>&lt;/code>&lt;/pre>&lt;/div></description></item></channel></rss>