Links sobre NAnt

Les comparto estos enlaces sacados de Jean-Paul S. Boodhoo’s Blog, para que les puedan sacar provecho. Es un completo tutorial sobre NAnt, que inclusive en las ultimas partes habla sobre el servidor de integración continua Cruise Control.

Automating Your Builds With NAnt – Part 1

Automating Your Builds With NAnt – Part 2

Automating Your Builds With NAnt – Part 3

Automating Your Builds With NAnt – Part 4

Automating Your Builds With NAnt – Part 5

Automating Your Builds With NAnt – Part 6

Automating Your Builds With NAnt – Part 7

Automating Your Builds With NAnt – Part 8

Video de Part 8

Clean Up your NAnt build files with fileset references

Sample CC.Net Configuration Section

Configurar referencias para Db4o Analyzer

Para poder usar referencias de nuestras clases, entidades quizás, en Db4oAnalyzer, por ahora solo lo podemos hacer utilizando el archivo de configuración de la aplicación Db4oAnalyzer.exe.config.

<?xml version=”1.0″ encoding=”utf-8″ ?>
<configuration>

    <configSections>
        <section name=”db4oanalyzer” type=”Db4oAnalyzer.Core.Cfg.Db4oAnalyzerSection, Db4oAnalyzer” />
    </configSections>

    <db4oanalyzer>
        <references>

            <add name=”System” framework=”true” />
            <add name=”System.Data” framework=”true” />
            <add name=”Db4objects.Db4o.dll” />

            <add name=”E:\Assemblies\Entities.dll” />

        </references>
    </db4oanalyzer>

</configuration>

 El path del assembly con nuestras entidades de negocio (”Entitties.dll”) lo hemos puesto al final de los otros assemblies. Las entidades que corresponden al framework son marcadas: framework=”true”, el default es false.

Por ahora, estas referencias deben ser configuradas antes de iniciar la aplicación. 

Cómo compilar con NAnt

NAnt es un poderoso automatizador de compilación de código abierto que funciona con Mono también. NAnt es del mismo estilo que MSBuild, cuando usamos Visual Studio, sin que lo sepamos, estamos usando MSBuild.

Para automatizar la compilación de Db4o Analyzer agregué un archivo .build, de modo que,bajan el fuentedescargan NAnt y pueden compilar el fuente de esta manera:

Abrir una consola y tipear nant desde la ubicación del archivo .build


/> nant 

Abrir una console y tipear nant con el parametro indicandole donde está el archivo:


E:\nant-0.85\bin\NAnt.exe -f:”E:\projects\db4oanalyzer\default.build”

Para compilar con NAnt con Mono desde Windows, podemos usar el NAnt que viene con el installer del Mono Framework. Abrimos la consola de Mono (Mono 1.2.3.1 Command Prompt) que se tuvo que haber instalado un acceso directo de ella, y ejecutamos NAnt tal como lo habiamos hecho para el .Net Framework de Microsoft.

Para compilar con NAnt en Linux, en distribuciones como Debian/Ubuntu, es un poco más facil, primeramente, para instalar NAnt hacemos:


#apt-get install nant

y luego vamos al directorio donde se encuentra nuestro archivo .build y hacemos:


#nant

y listo, NAnt se encargará de encontrar un archivo con la extensión .build y realizar la compilación según el mismo.

Db4o Analyzer

Comenzé este pequeño proyecto Db4o Analyzer para facilitar el modo de probar nuestras consultas con db4o, escribiendolas desde una “snippet” IDE.

Por ahora, está soportando a C# como único lenguaje, pero la idea es extenderlo hacia otros. Tiene resaltado de Sintaxis e autocompletado de código, y esto gracias a las librerias opensource que se encuentran como parte del Core de SharpDevelop. De hecho esta herramienta fue escrita en dicha IDE.

La idea básica es ir agregando comando para poder visualizar mejor los objetos retornados, por ahora, podemos hacer esto:

draw<Persona>(db.Query<Persona>());

y con esto se realizará el query hasta la base, y podremos obtener en un arbol la consulta:

 Con este mismo enfoque podemos hacer nuestras queries, inclusive pobrar nuestras Native Queries.

ToDo (Cosas por hacer):

  • Soportar VB proximamente.
  • Permitir referenciar otras assemblies sin reiniciar la IDE.
  • Modulo de Configuración de la Aplicación.
  • refactoring !

Formatear código para publicar en la web o blogs

Este enlace me lo debía desde hace tiempo. Con esta herramienta web podemos formatear el codigo C#, Vb, HTML o SQL a html para poder publicarlo en blogs o en nuestros sitios.

Solamente debemos copiar esto en la sección <head> de nuestro blog o site:

<link rel=”stylesheet” type=”text/css” href=”csharp.css” >

El código de esta herramienta, que usa expresiones regulares está aquí.

Los métodos extendidos clarifican el código

Estuve jugando con los Métodos Extendidos en C# 3.0, y la verdad que esta feature hace que el código sea más legible.

string[] terminos = new string[] { “gurí”, “guaina”, “tereré”, “mate” };

            foreach (var item in terminos)
                Console.WriteLine(item);

Utilizando estas extensiones de métodos:

public delegate void VoidsHandler<T>(T param);

    public static class DarioExtend
    {
        public static void ApplyToAll<T>(this IList<T> lista, VoidsHandler<T> handler)
        {
            foreach (var item in lista)
            {
                handler(item);
            }
        }

        public static void WriteLine<T>(this IList<T> lista)
        {
            foreach (var item in lista)
            {
                Console.WriteLine(item);
            }

        }
    }

La forma de imprimir podría cambiarse por:

terminos.ApplyToAll(item => Console.WriteLine(item));

ó por esto:

 terminos.WriteLine();

Ayende en DotNetRocks!

Ya se puede descargar el episodio de .DotNetRocks con Oren Eini (Ayende) aquí hablando sobre NHibernate.
Sino lo conocías, este es su blog.