Bueno este es el primero de unos cuantos ejemplos de software que voy a estar subiendo. En este caso es un catalogo de juegos para windows, hecho en un par de semanas hace como un año, lo he ido mejorando de a poco. Tome la iniciativa de hacerlo porque tengo un storage de red con 1.5 Tb de juegos y estaba manteniendo la lista con una planilla excel... apesta. Me considero un coleccionista cuando se trata de juegos y el hecho de hacer un catalogo me interesaba muchisimo.
Screenshots:
Como veran es bastante feo, pero 100% funcional.
Desde el punto de vista tecnologico, esta hecho en C# 4.0, usando WPF. Tiene varias cositas interesantes para el aficionado a .NET. Todo el sistema de busqueda esta hecho con linq de manera bastante mutable. Consta con extension methods, buenos ejemplos de recursividad, serializacion y una arquitectura que no es la gran cosa pero tiene los elementos bien separados cosa de que mañana puedo separar las funcionalidades principales y crear por ejemplo un web service. Contiene un control wpf customizado que esta mismo en la solucion, se trata de un control de grafica de barras que recibe un Dictionary<string, int> como parametro de criterio para graficar. En cuanto a WPF hay varias cosas interesantes, controles de paneles colapsables, controles de listas, imagen, tabla de datos, etc. Todo es adaptable a cualquier tamaño de ventana.
Caracteristicas:
Código:
- Permite crear entradas de manera muy facil con un formulario con secciones colapsables.
- En la pantalla principal muestra los datos del juego asi como imagenes del mismo que rotan cada 10 segundos.
- Contiene la posibilidad de graficar el rendimiento esperado del juego en la pc donde se corre el programa (el programa detecta los specs de hardware).
- Utiliza archivos xml para guardar la informacion de los juegos, la lista de generos y sub generos, quiere decir que hasta cierto punto es bastante configurable.
- Tiene un directorio con filtros de busqueda muy especificos, se puede buscar juegos por rango de años, desarrollador, genero, tags... etc etc.
- Al usar linq como principal metodologia de busqueda, el programa es sumamente rapido.
- Contiene una pantalla con diferentes estadisticas, desde conteo de juegos por genero hasta graficas de mejores juegos por año, etc etc.
Lista de ToDo para la proxima version:
Código:
- Informacion sobre capacidades multiplayer, por ejemplo si soporta lan, si tiene coop, etc etc.
- Pantalla de configuracion... demasiado necesario.
- Arreglar un bug que segun el procesador no toma los multicore.
- Arreglar un bug que en algunas PCs no toma el espacio libre en disco
- Implementar un buen sistema de puntaje de VGA, el actual es muy trucho
- Implementar el boton de go to web site, pense que funcionaba pero no :)
- Poder hacer override de la deteccion del hardware asi el usuario puede dar info de otra maquina o la info real de la suya si algo falla.
- Soportar varios lenguajes
Me imagino que este programa me va a ser bastante util en esas lanes que nadie sabe que jugar, simplemente se busca, se asegura que en todas las maquinas se corre y se baja del storage
Links:
Source
Binaries
Si alguien tiene alguna consulta sobre el codigo postee aca