Código fuente

Librerías con su código fuente en CSharp.


Visor de archivos PGN

Una de mis deudas pendientes este año, era crear un visor de archivos PGN y hoy ya tengo la primera versión consumible.

En esta quincena, he detenido el proyecto de generación de informes en el que estaba trabajando y me he tomado unos días libres para escribir un pequeño visor de partidas en WPF. Por supuesto el proyecto era ligeramente más ambicioso y he tenido que refrenarme un poco. No quería que se hiciera eterno, aburrirme y abandonarlo antes de tener una prueba de concepto medianamente interesante.

Leer más...

Lector ePub

Estos días ando actualizando mis librerías y proyectos a las nuevas versiones de.Net estándar. Comienzo a programar con UWP y Xamarin Forms y me veo compilando y recompilando para diferentes versiones de framework, algo que me está trayendo por el camino de la amargura.

Pero también me da algunas sorpresas como reencontrarme con código antiguo que nunca he publicado y a alguien le podría llegar a interesar. Entre ellas me he encontrado una implementación de un lector / creador de libros digitales en formato ePub.

Leer más...

CrioGame: motor de juegos con C#

Llevaba ya tiempo leyendo sobre motores de juegos, concretamente con MonoGame y me apetecía dedicar un tiempo a desarrollar juegos. ¿Y qué mejor momento que el verano para dedicarle un par de meses ?

Dado que mi capacidad como diseñador es bastante escasa, le dí una vuelta de tuerca a la idea de desarrollar un videojuego y decidí ampliar ligeramente el propio motor de MonoGame para que fuera más fácil el desarrollo de juegos sencillos.

Leer más...

BauMessenger: implementación del protocolo XMPP

Los más veteranos del lugar quizá recuerden que sobre el año 2.000 surgieron una nueva línea de aplicaciones conocidas con el nombre genérico de 'aplicaciones de mensajería instantánea '. Entre estas aplicaciones estaban Icq (de Mirabilis), Yahoo ! Messenger (de Yahoo, obviamente) o MSN Messenger (de Microsoft) y plantearon una nueva guerra por captar usuarios similar a la que se había vivido entre los navegadores.

La función de estas aplicaciones eran permitir enviar información de presencia (el usuario está conectado y libre para conversar o no) y mensajes y archivos instantáneamente entre usuarios. Algunos de ellos incluso permitían conversaciones en grupo o chat. Todas ellas utilizaban software de comunicación propietario, es decir, no existía un estándar y era imposible contactar con un usuario a menos que se utilizase la misma aplicación. ¿Os suena de algo ? ¿Alguien ha pensado en WhatsApp / Telegram / Line... ?

Leer más...

Desarrollo de plugins con .Net

El concepto de plugin o extensión es bien conocido para todo desarrollador: un componente dentro de una aplicación que se puede cargar y utilizar en tiempo de ejecución sin vincularlo directamente en tiempo de diseño.

Los plugins nos permiten añadir funcionalidades a nuestra aplicación para las que no estaba preparada en un principio e incluso cargarlos o descargarlos sin necesidad de configuración.

Leer más...

Librería FTP en C#

En las aplicaciones que utilizan FTP para intercambio de archivos, hasta ahora he utilizado un wrapper sobre la librería de FTP de.NET.

En uno de mis últimos proyectos, necesitaba acceder a FTPs y no pude conseguirlo a través de las librerías básicas de.NET. En algunos casos me daban errores de conexión a través de un proxy HTTP y en otros errores de comunicación. Existen formas de solventarlo pero me pareció más eficaz e instructivo implementarlo por mí mismo.

Leer más...

Servidor SMTP para desarrollo (C#)

Este fin de semana tenía la intención de recuperar el código de una librería antigua para generación de informes y aprovechar el tratamiento de plantillas de NSharpDoc para hacerla algo más versátil pero el primer correo electrónico de la mañana desbarató mis planes y me llevó a otro desarrollo completamente diferente.

El correo en sí era sobre una aplicación que ofrecía servidores SMTP para desarrollo, los conocidos como FakeSMTP . Un FakeSMTP no es más que un servidor de SMTP que no envía los correos recibidos a las direcciones de correo finales.

Leer más...

Librería para cálculo de expresiones con C#

Uno de los requisitos que me encuentro frecuentemente en mis proyectos es la interpretación y el cálculo de expresiones matemáticas desde una aplicación.

Una librería que pueda interpretar y ejecutar expresiones matemáticas no es un proceso excesivamente complejo, por he separado esta sección de mi librería de compilación de NHaml de BauPlugStudio y la he subido a GitHub para poder utilizarla por separado.

Leer más...

Introducción a la API de TFS

Estos días he estado jugando con el acceso a Team Foundation Server utilizando sus API y servicios Web.

Aunque una vez que conoces sus bases es bastante fácil de utilizar, la documentación es, en el mejor de los casos, escasa y dispersa por eso he decidido escribir una breve introducción a TFS para programadores.

Leer más...