sábado, diciembre 30, 2006

Guía rápida para MagicDraw - MagicDraw Tutorial

Ésta es una guía rápida para el uso de la herramienta MagicDraw que realicé junto con Miguel A. Orenes como trabajo de una asignatura de análisis de software orientado a objetos.

Se trata de una guía muy simple (no por eso menos buena ;P) ya que es muy clara y explica directamente cómo se hacen las cosas, sin rodeos ni otras explicaciones.

Espero que os sirva...

>> descarga

lunes, diciembre 18, 2006

SmartSort v2: ordenar una lista de string en base a una clave en C# .NET - Sorting a string linked list using a word as a key in C# .NET

Segunda versión donde cambia la forma de tener en cuenta la diferencia de longitudes entre las dos palabras que se comparan, evitando así un posible error de índice fuera de rango a la hora de almacenar posteriormente las palabras en el array intermedio.


public System.Collections.Generic.LinkedList smartSort(
System.Collections.Generic.LinkedList lista,
string clave){

char[] auxs;
LinkedList auxl;
int nmatch;
int longi;

//creo un array de linkedlist de tamaño clave*2+1
LinkedList[] clasi = new LinkedList[clave.Length*2 + 1];

//obtengo los caracteres de la clave
char[] clavec = clave.ToCharArray(0,clave.Length);

//para cada una de las palabras de la lista inicial
IEnumerator enu = lista.GetEnumerator();
while (enu.MoveNext()){
nmatch = 0;
auxs = ((string)enu.Current).ToCharArray();

//me quedo con la menor de las longitudes
longi=clave.Length;
if (((string)enu.Current).Length < longi =" ((string)enu.Current).Length;" i =" 0;" i =" longi">= 0; i--){
if (clavec[i] == auxs[i]) nmatch++;
}

//ahora introducimos la diferencia entre longitudes de palabra
nmatch -= Math.Abs(clave.Length -
enu.Current.ToString().Length);
if (nmatch < nmatch =" 0;//controlamos">();
clasi[nmatch].AddLast(enu.Current.ToString());
}

//creo la lista a devolver
auxl = new LinkedList();
for (int i = clave.Length * 2; i >= 0; i--){
if (clasi[i] != null) {
enu = clasi[i].GetEnumerator();
while (enu.MoveNext()){
auxl.AddLast(enu.Current.ToString());
}
}
}

//devuelvo la lista
return auxl;
}

martes, diciembre 12, 2006

Uso del modelo de eventos (Observer) en C#.NET - Using events model in C#.NET

Este es un ejemplo muy simple del uso del modelo de eventos (modelo muy parecido al Observer u Observador o también llamado de suscripción pública) en C#.NET.

El elemento que lanza los eventos (observable) deberá incluir el siguiente código:
//declaramos el evento
public event PalabraErroneaEvent OnPalabraErronea;

//declaramos el tipo de manejador asociado al evento
public delegate void PalabraErroneaEvent(object sender, PalabraErroneaArgs e);

//suscipción de metodos al evento
public void addPalabraErroneaListener(IPalabraErroneaListener l){
OnPalabraErronea += new PalabraErroneaEvent(l.newEvent);
}

//lanzamiento del evento
public void notify(PalabraErroneaArgs args){
OnPalabraErronea(this, args);
}

El elemento que reciba los eventos (listener u observer), debe incluir lo siguiente:

Para registrarse debe implementar una interfaz que incluye un método que será usado por la clase que envíe los eventos para añadir un nuevo listener (en este caso el método es newEvent).
public interface IPalabraErroneaListener{
void newEvent(object sender, PalabraErroneaArgs e);
}

Una vez que se implemente la interfaz, nos registraremos en el lanzador del evento usando el método que nos ofrece para ello.
//nos suscribimos
nombre_del_lanzador.addPalabraErroneaListener(this);

Para recibir y manejar los eventos implementa el método anteriormente descrito.
public void newEvent(object sender, PalabraErroneaArgs e) {
@todo
}

miércoles, diciembre 06, 2006

BricoInformática - Ver partidos de Champions y Liga en tu ordenador de forma gratuita - Free UEFA Champions League and Liga in your pc

Actualización: los enlaces a algunos de los partidos más importantes pueden encontrarse en el siguiente enlace:
gratis365.blogspot.com

"Antes de empezar, señalar que al hacer ésto no estamos llevando a cabo ninguna actividad fuera de la legalidad, ya que este proceso se basa únicamente en visionar la retransmisión de canales que emiten por internet y escuchar la retransmisión de radios españolas que también usan este medio para llevar a cabo sus emisiones."

Para conseguir la imagen

1- nos bajamos el programa PPStream, a través del cual obtendremos la retransmisión de varias televisiones internacionales, entre ellas la chinas DragonsTV,... Para bajarlo lo haremos desde este enlace (en caso de que no funcione el enlace entra a Google, busca las palabras "download ppstream" y búscate la vida para bajártelo, que está bastante fácil).
¡OJO! Los aceleradores de descargas no están permitidos en el sitio de descarga, así que si te falla ya sabes por qué.

2- instalamos el PPStream. Aquí viene la gracia, ya que con un poco de mala suerte el programa estará en chino y como mucho en nuestra pantalla aparecerán palabras del estilo "????????", pero no importa, porque los señores que hicieron windows ya pensaron esto y decidieron que para instalar cualquier programa lo único que haría falta es darle unas 20 o 30 veces consecutivas a los botones "Aceptar" y "Siguiente".
Por lo que manos a la obra, empezamos a instalarlo, le damos todas las veces que haga falta a los botones que más se parezcan a los anteriormente descritos (suelen ser las opciones por defecto y suelen ir remarcadas) y completamos la instalación. Si hace falta intentar un par de veces, se intenta, que el fin lo merece.

3- una vez instalado el PPStream, y ya en el día del partido que queramos ver, entramos a la web de Roja Directa y en la pantalla principal encontraremos las retransmisiones de ese día. Sólo nos falta hacer clic sobre la que queramos ver y entre todas las opciones que nos ofrece escogeremos la de "PPStream".
¡¡OJO!! es recomendable que esto se haga una hora o tres cuartos de hora antes del partido para que nuestro ordenador vaya cogiendo fuentes y podamos ver correctamente el partido.

Para conseguir el sonido

Si además no entendemos chino y queremos escuchar la retransmisión en castellano haremos lo siguiente:

1- necesitamos tener insatalado el RealPlayer, o si no, lo bajamos de aquí y lo instalamos.

2- bajamos el archivo de RNE para escuchar la radio pinchando aquí.

3- abrimos el archivo "r1real.ram" que nos acabamos de descargar.

4- aquí viene lo chungo. La cuestión es que el sonido va antes que la imagen (un par de minutos como mínimo) por lo que tendremos que pausar (en RealPlayer) la emisión de radio justo cuando empiece el balón a rodar y reanudarla (en RealPlayer) justo cuando en nuestra imagen en el PPStream comience el partido.
Si eres hábil no tendrás muchos problemas, aunque es posible que en alguna ocasión durante el partido tengas que reajustarlo.

Otras alternativas...

Si este método falla (que puede fallar aunque la radio seguro que no), existen otros programas similares a PPStream aunque con menos calidad de imagen como por ejemplo PPMate (dicen que PPMate es más rápido y no se corta, aunque la imagen se ve un poco peor).

Para más información, consulta los foros de www.RojaDirecta.com, allí encontrarás bastante info y te resolverán bastantes dudas.

También es posible ver otro tipo de eventos, como por ejemplo las ligas europeas de fútbol, la NBA, el fútbol americano, ... y también poder sintonizar gran cantidad de canales internacionales.