Frago ha creado un tutorial muy bueno y sencillo sobre como realizar reportes usando Crystal Reports y VB.Net
Después de mucho tiempo, aquà estoy con la siguiente entrega de la serie sobre patrones de diseño con PHP, la siguiente entrega que estaba planeada era sobre el patrón factory (fábrica o factorÃa), pero en estos dÃas programé un plugin engine para gelato el cual esta versión aún debe contar con soporte para PHP4 y me topé con que una vez terminado y probado no funcionaba correctamente en PHP4, por dos detalles:
1.- PHP4 no soporta propiedades estáticas (soporta métodos estáticos y variables estáticas dentro de estos métodos, pero NO propiedades),la solución a esto vendrá en otro post.
2.- La implementación del patrón singleton más difundida no funciona como deberÃa.
Veamoslo en bits.
La clase anterior implementa el código de singleton en PHP4 más encontrado en los ejemplos sobre el tema.
Si la probamos creando el objeto obj1:
Si imprimimos su valor:
Creamos el objeto obj2:
¿Qué contenido tiene?
Entonces ya tenemos dos objetos derivados de la clase Singleton los cuales al implementar dicho patrón deberamos tener UNA sola instancia, ¿pero esto se cumple?
¿Qué nos devuelve?
Imprimir
Como vemos nos regresa el valor “Imprimir” cuando estamos esperando que imprima “Borrar”.
Para solucionarlo basta con tocar una sola lÃnea de código de la clase y cambiar la lÃnea 7 por lo siguiente:
Ahora si, nuestras pruebas saldrán correctas.
El dÃa de hoy quiero platicarles de una librerÃa de controles gráficos de usuario para .Net, este conjunto de controles de usuario se llama Krypton Suite, la cual se divide en diferentes productos:
Krypton Toolkit .- Estos controles son gratuitos y son una serie de controles para Windows Forms que ayudan a crear aplicaciones que se vean profesionales. En particular yo he utilizado el Toolkit en varias aplicaciones desde hace un par de años y me da muy buenos resultados.
Krypton Ribbon.- Como su nombre nos da a indicar es un componente para crear un menú Ribbon (estilo Office 2007). Yo he probado una gran variedad de componentes que te permiten generar este tipo de menus, pero el Krypton es definitivamente el que tiene una mejor interacción para crear los elementos del menú.
Krypton Navigator.- Este son controles de tab para reempalzar los que vienen por defecto con el .Net Framework.
Krypton Workspace.- Este control en particular no le he probado, pero promete una evolución en la forma de organizar el espacio de trabajo en nuestras aplicaciones.
Después del Toolkit los demás controles son de pago, pero creanme vale la pena el costo de ellos, además de que comparados con otras opciones en el mercado sus precios son muy accesibles.
Para complementar la suite de componentes también tienen el:
Aclaración: Los chicos de Component Factory me han regalado una licencia de la suite para mi uso personal como profesor de diseño de software, lo cual no significa que este post sea un comercial, al contrario lo baso en mi experiencia agradable con estos controles ya que como mencioné llevo un par de años usando el Toolkit, sólo que tenia que aclararlo para evitar malos entendidos.
Desde hace un par de semanas hemos puesto en lÃnea un foro para resolver dudas de programación, es un espacio donde el equipo de gelato nos reunimos para contestar dudas en un inicio sólo comentan algunos de mis alumnos, pero si alguien más esta interesado podriamos crear alguna pequeña comunidad alrededor de ellos. El sito es: Foros de programacion: e-Nutil (leÃdo inutil para los cuates
)
El otro dÃa Pablo liberaba una extensión de Firefox para el servicio Abbrr de mi buen amigo Victor Bracco.
Como el servicio de Abbrr me gusta mucho (como deben recordar) inmediatamente la instalé (la extensión) y realmente su simplicidad me gustó mucho, sólo basta dar un clic derecho sobre una página y en el menú contextual seleccionar AbbrrMe! y listo ya tenemos nuestra URL corta en el portapapeles (clipboard).
Pensé que seria útil agregarle la funcionalidad que si da clic derecho sobre un enlace sea ese enlace el que se acorte por lo que me puse manos a la obra y unas cuantas lÃneas de JS y XUL después ya tenia una nueva versión que agrega una nueva opción al menú contextual cuando estas sobre un enlace. Pablo tiene un post sobre AbbrrMe 0.2 pasen por alla para descargar esta nueva versión.