Archivo de la categoría: Tutoriales

Consumiendo APIs REST con Windows 8 [I/II] (Evento 21/03)

El pasado 21 de marzo en la Universidad de Salamanca, estuvimos hablando de diferentes APIs REST.

Durante algo más de una hora vimos cómo a través de APIs Rest podemos consumir y crear contenidos desde nuestras aplicaciones. En este primer artículo de la serie, veremos cómo consumir servicios existentes, primero por consola, y luego a través de un cliente Windows 8.

Sigue leyendo

Anuncios

Horizontal scroll with HTML5 for Windows Store apps

These days I have spent some of spare time developing an application for Windows 8 using the Karmacracy API. For this, I have tried to minimize the WinJS usage and default controls, while maintaining the design previously known as “Metro”. The result so far is this, although it may be subject to changes and improvements:

karmacracy-stage-6

In this article we will see how to get the horizontal scroll, keeping elements such as the title and the login box.

Sigue leyendo

Conseguir scroll horizontal con Javascript para aplicaciones Windows Store

En estos días he empleado algo de mi tiempo libre desarrollando una aplicación para Windows 8 usando la API de Karmacracy para la cual he intentado usar al mínimo WinJS y los controles por defecto, manteniendo, además, el diseño anteriormente conocido como “Metro”. El resultado hasta ahora es este, aunque está sujeto a cambios, y a mejoras:

karmacracy-stage-6

En este artículo veremos cómo conseguir el scroll horizontal, conservando elementos como el título y el cuadro de inicio de sesión.

Sigue leyendo

Excepciones con Test Unitarios en C#

Una kata, en el contexto de desarrollo de software, es un ejercicio de programación que nos permite, en un entorno controlado, probar nuevas técnicas y mejorar la calidad de nuestro código. Una de las maneras más interesantes de realizarlas es a través de la plataforma Solveet, que, en colaboración con la web 12meses12katas, proponen un ejercicio mensual.

En el ejercicio del pasado mes, descubrí que nunca había probado un método que devolviera una excepción, así que recurrí a lo primero que sabía, un bloque try catch, aunque el resultado deja bastante que desear:

[TestMethod]
public void TestMethodThatShouldReturnAnException()
{
  try
  {
    CodeMachine machine = CodeMachineBuilder.Generate("KKKKK");
    Assert.Fail();
  }
  catch (IncorrectCharactersException){}
}

Un bloque catch vacío es una de las cosas menos recomendadas desarrollando software, ya que se pueden capturar excepciones que no deseamos. Por suerte, Microsoft ha puesto a nuestra disposición el siguiente artículo: A Unit Testing Walkthrough with Visual Studio Team Test, que, aunque algo antiguo, nos propone otra manera de controlar las excepciones en un test unitario:

[TestMethod]
[ExpectedException(typeof(IncorrectCharactersException))]
public void
TestMethodThatShouldReturnAnException
()
{
 CodeMachine machine = CodeMachineBuilder.Generate("KKKK");
}

Con un atributo llamado ExpectedException y el tipo de excepción que esperamos, podemos mantener el código limpio y elegante, así, podemos seguir con nuestras pruebas.

Controlar el tiempo que lleva una aplicación activa con Powershell

Powershell es una herramienta muy versátil para desarrolladores y administradores de sistema, ya que, al igual que la shell de unix, permite automatizar tareas repetitivas con facilidad. Una de estas tareas puede ser controlar un proceso, aplicación o programa, cuanto tiempo lleva activo, y el uso de recursos que está haciendo.

En este artículo se verá cómo obtener el tiempo de un proceso en Powershell, el uso de CPU y RAM, así como enviar un e-mail con esa información de manera periódica.

Sigue leyendo

Detectar etiquetas HTML usando expresiones regulares en C#

A veces es necesario acceder de manera automatizada a sitios web, analizando el contenido de los mismos buscando datos o patrones. Una de las maneras más útiles y flexibles de desarrollar estas tareas es mediante el uso de expresiones regulares.

Una expresión regular es un texto formado por símbolos específicos, que componen un patrón. Este patrón se emplea para localizar elementos en un texto que cumplan los criterios establecidos.

<h1>(.*)</h1>

Esta expresión coincidirá para cualquier título que contenga la página. El significado es sencillo: El punto significa cualquier caracter, incluídos los saltos de línea, y el asterisco significa ninguno o cualquier número de ellos. Los paréntesis significan que es un grupo, es decir, que queremos capturar ese contenido (no solo comprobar que está en el texto). Sigue leyendo

Depurando aplicaciones de consola con Visual Studio

Existen varias maneras de depurar aplicaciones de consola usando Visual Studio, y en este breve artículo veremos alguna de ellas.

Debug/Start debugging.

Podemos lanzar este comando con las combinaciones de teclas F5 (para depurar) o Ctrl + F5 (Iniciar sin depurar). Habitualmente en una aplicación de consola tendremos parámetros de entrada, y podemos personalizar dichos parámetros en la ventana de propiedades del proyecto (click derecho sobre el proyecto, Properties), pestaña Debug, podemos especificar los argumentos con los que ejecutamos el proceso

Asociar a proceso

Esto nos permite depurar un proceso que ya esté en ejecución, y podemos detener la depuración sin que ello implique detener el proceso. Esta opción se encuentra en el menú de Debug/ Attach to process. Se nos mostrará una ventana donde podremos seleccionar el proceso al que nos asociaremos.

Lanzar el depurador desde el código

Una manera muy interesante que nos permite lanzar una instancia del depurador en el momento que nosotros deseemos, es agregar al código fuente la siguiente sentencia:

System.Diagnostics.Debugger.Launch();

Esto lanzará una ventana en la que podremos seleccionar qué depurador queremos usar para la sesión, y es útil cuando tenemos una característica específica que queremos probar.

Estas tres maneras nos permiten depurar nuestra aplicación en diferentes escenarios, y podemos combinarlas según nos sea más útil.