domingo, diciembre 24, 2006
Feliz Navidad
class Navidad{
public static void main(){
int i = 0;
for( i = 0; i < 1000; i++){
System.out.Writeln("Feliz navidad y próspero año nuevo"); //JAVA
System.Console.WriteLine("Feliz navidad y próspero año nuevo"); //C#
}
}
}
Colombia es Pasión!!!
Que la Tecnología .NET and JAVA os acompañe
lunes, diciembre 18, 2006
Quieres saber si Tu Computador está preparado para Windows Vista??
http://reviews.cnet.com/4520-3672_7-6671810.html
p.d: aunque dice que se debe hacer la prueba en Internet Explorer, la prueba la hice con mozilla firefox y no puso problema.
Colombia es Pasión!!!
Que la Tecnología .NET and JAVA os acompañe
domingo, diciembre 17, 2006
consejos para ser un buen programador
http://geeks.ms/blogs/sergio/archive/2006/08/01/1056.aspx
este es el blog de sergio.
Colombia es Pasión!!!
Que la Tecnología .NET and JAVA os acompañe
sábado, diciembre 16, 2006
Las Ventajas de Programar en la Vida Real
jueves, diciembre 14, 2006
Presentación sobre Manejo de Archivo en .NET
http://asesordeprogramacion.googlepages.com/CapacitacinArchivos.ppt
Colombia es Pasión!!!
Que la Tecnología .NET and JAVA os acompañe
miércoles, diciembre 13, 2006
Abrir un formulario en .NET a partir de su nombre
Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click
Dim nombreInforme As String = "WindowsApplication1.Form2"
Dim formulario As Form
Dim tipo As Type
tipo = Type.GetType(nombreInforme)
formulario = Activator.CreateInstance(tipo)
formulario.Show()
End Sub
nota: es necesario anteponer el espacio de nombre (namespace) para que funcione y también para ser un poco estricto, hacer una conversión explicita de datos, os dejo de tarea...es muy fácil, si tienen un poco de pereza utilicen el debug y listo...jejejej
Colombia es Pasión!!!
Que la Tecnología .NET and JAVA os acompañe
Microsoft anuncia SandCastle - CTP de Diciembre de 2006
Microsoft ha vuelto a sacar una nueva versión final de SandCastle, en esta ocasión, la CTP de Diciembre de 2006.
Esta versión ocupa unos 5.1 Mb y está en inglés.
Recordemos que SandCastle es la herramienta que nos permite documentar nuestras aplicaciones .NET en formato de ayuda Windows (CHM) o en formato Web (HTML).
Accederemos a esta herramienta en el siguiente enlace.
referencia: jose serrano
Colombia es Pasión!!!
Que la Tecnología .NET and JAVA os acompañe
Navegar sin presionar click
http://www.dontclick.it/
Colombia es Pasión!!!
Que la Tecnología .NET and JAVA os acompañe
martes, diciembre 12, 2006
Versión 6 JAVA SE Liberado!!!
-API JDBC 4.0 que trae muchas mejorasssssss.
- Mejoras en el desempeño de SWING.
- Compatibilidad con Windows VISTA.
y muchasss mássss
que esperan, a descargarlo, es obligatorio!!!!
http://java.sun.com/javase/downloads/index.jsp
nota: como siempre Netbeans a las vanguardia en estar a la par en soporta la última versión de JAVA, a esperar unos meses hasta que eclipse lo soporte...ojalá y se den prisa.
Colombia es Pasión!!!
Que la Tecnología .NET and JAVA os acompañe
lunes, diciembre 11, 2006
¿Qué he hecho microsoft por nosotros?
TRADUCCIÓN:
Bien, bien, pero además de los Genéricos, los Métodos Anónimos, los iteradores, las Clases Parciales, LINQ, WPF y WCF, ¿qué ha hecho Microsoft por nosotros?
El frente de liberación de los Bloggers
Colombia es Pasión!!!
Que la Tecnología .NET and JAVA os acompañe
Tipos Anulables en .NET 2.0
Una interesante característica nueva que ofrece la versión 2.0 de la plataforma.NET es la de "Tipos anulables" o, en inglés, "Nullable types".
Se trata de un tipo especial de dato que permite que los tipos base por valor se puedan comportar como valores por referencia nulos cuando sea necesario.
De este modo este nuevo tipo anulable permite representar valores concretos o la ausencia de valor. Por ejemplo, una variable de tipo 'int' siempre contiene un número entero. Aunque no le asignemos explícitamente nada, al ser un tipo base por valor siempre toma un valor por defecto, en este caso concreto un 0. Pero claro, un 0 no es lo mismo que decir 'esta variable no contiene valor alguno'.
En el caso de las clases (tipos por referencia) la ausencia de "valor" se representa asignándole un nulo a la variable, pero en los tipos por valor esto no es posible.
¿No sería estupendo disponer de un híbrido entre estos dos comportamientos?
Pues sí. Veamos el porqué...
El caso prototípico en el que esto es muy útil es al obtener ciertos campos desde una base de datos los cuales contienen tipos base (enteros, cadenas, etc...) pero que permiten albergar valores nulos. Este tipo de datos pueden existir (en cuyo caso es un valor concreto) o ser nulos (o sea, no existen). Sin embargo al intentar asignar un valor nulo (o también un System.DBNull) a un tipo por valor como un entero se producirá una excepción. Esto es lo que pasaba en las versiones anteriores de .NET.
¿Cómo se definen?
Para definir un tipo anulable en C# se usa una interrogación al final de la declaración del tipo, así por ejemplo:
int? miEnteroAnulable;
Es decir se declara igual que un entero normal pero con una interrogación.
En VB.NET la sintaxis es diferente y sería así:
Dim miEnteroAnulable As Nullable(Of Integer)
Como vemos en este lenguaje se indica de manera menos sútil, pero ambas declaraciones son equivalentes.
¿Es una onda o es una partícula? ¿Cómo se comporta?
Cuando declaramos un tipo como Nullable, cuando este contiene un valor se comporta a todos los efectos como un tipo por valor, o sea, como siempre. Cuando se le asigna un nulo no se queja (no hay excepción) y, en realidad, se convierte en un tipo por referencia para permitirlo mediante una operación de 'Boxing'. Es como la luz que es dos cosas al mismo tiempo ;-)
Lo que pasa por debajo es que la CLR trata el tipo anulable como una estructura (por lo tanto como un tipo por valor) cuando éste se comporta como un valor, y como una clase (o sea, un tipo por referencia) cuando se comporta como una referencia. Esto lo hace de modo transparente para nosotros.
El tipo Nullable dispone de dos propiedades fundamentales que nos permiten lidiar con él de forma idéntica bien sea una clase o bien una estructura.
La propiedad HasValue nos permite saber si el tipo contiene un valor o por el contrario es nulo.
La propiedad Value nos devuelve el valor subyacente al tipo (un entero o lo que sea) siempre y cuando HasValue sea verdadera. Si intentamos leer esta propiedad cuando HasValue es falsa se genera una excepción de tipo InvalidOperationException.
En resumen...
Los tipos anulables tienen grandes aplicaciones, sobre todo en el mundo de las bases de datos y están integrados en la propia CLR por lo que se pueden usar desde cualqueir lenguaje. Aunque tras haber leído lo anterior te puedan parecer alejados de tus necesidades actuales dales una oportunidad. Una vez que empieces a utilizarlos no podrá vivir sin ellos
Referencia: http://www.jasoft.org/blog/PermaLink,guid,73ed4057-75fb-45a1-938c-56d3c11fed94.aspx
Colombia es Pasión!!!
Que la Tecnología .NET and JAVA os acompañe
Video Para Programadores C++
Nostalgia me trae mi primer programa y lenguaje que utilicé, el c++, buenos recuerdos.... y dolores de cabeza con diseñar en mis primeros pinitos el juego "solitario" en DOS.
Viva el C++, padre de todo los lenguajes.
http://www.youtube.com/watch?v=9Iozx-6XymE
Colombia es Pasión!!!
Que la Tecnología .NET and JAVA os acompañe
domingo, diciembre 10, 2006
Nuevo Buscador SEXY
http://www.msdewey.com/
Colombia es Pasión!!!
Que la Tecnología .NET and JAVA os acompañe
Desarrollo basado en Pruebas. Progreso
Feliz día y disfruten la programación con en un computador, sino con la familia, cerveza y la novia al lado...es el mejor algoritmo que se puede diseñar!!!.
Colombia es Pasión!!!
Que la Tecnología .NET os acompañe
Desarrollar Bajo Linux
lectura parte 1
lectura parte 2
lectura parte 3
lectura parte 4
NOTA: hay cosas como el teclado que me parecen real, otras no me han pasado con el SUSE o Knoppix que tengo, nosé ustedes si piensan que todo esto les ha pasado, cualquier comentario lo pueden dejar.
REVISIÓN-1: algo que debe mejorar Linux es la usabilidad de los entornos, sé que hay muchos amantes de todo por "comandos", pienso que es bueno en la programación y otras cosas, pero en el manejo diario no es lo ideal, si linux quiere acercarse más a los usuarios, debe hacer los entornos KDE y GNOME más amenos.
Colombia es Pasión!!!
Que la Tecnología .NET and JAVA os acompañe
Uso de PAINT
http://www.isnichwahr.de/redirect19560.html
Colombia es Pasión!!!
Que la Tecnología .NET and JAVA os acompañe
jueves, noviembre 23, 2006
OPENSDK java
Pa`lante JAVA tienes mucho por mostrar.
link: OpenJDK
p.d: SUN dice que trabajen las modificaciones con NetBeans, todo por "supuesta" mejor integración, personalmente me parece un IDE excelente, les recomiendo darle una mirada, sobre todo la versión 5.5.
Colombia es Pasión!!!
Que la Tecnología .NET os acompañe
TEMAS para WindowsXP
hoy para los gomosos y curiosos, les tengo un link para cambiar el aspecto clásico de ventana en XP, prácticamente lo transforma en VISTA.
aquí unas captura de mi escritorio para que vean el efecto:
imagen1
Colombia es Pasión!!!
Que la Tecnología .NET os acompañe
miércoles, noviembre 15, 2006
Nuevo Formato para mostar Documentos(basado en XML)
Se ha liberado la primera versión de la XML Paper Specification (XPS), la cual está disponible en:
XPS Specification and License Downloads
XPS es un componente de WPF que proporciona la manera "ideal" de almacenar y desplegar contenido de aplicaciones WPF. Los documentos en formato XPS destilan elementos del WPF en un formato fijo, imprimible y portable, permitiendo que las aplicaciones compartan documentos para la colaboración a través de múltiples máquinas sin requerir que la aplicación original sea instalada en esas máquinas.
A continuación algunos recursos (en inglés) sobre XPS para desarrolladores:
- Reading and Printing XPS Documents
- Supporting Advanced Color in Print Drivers
- XPS Sample Documents
- Package! Publish! Print! [ppt, 748 KB]
- Using XPS [ppt, 441 KB]
- A First Look at APIs for Creating XML Paper Specification Documents
- Digital Signing Framework of the Open Packaging Conventions
- Integrate Data with XPS Documents
- The Future of Microsoft Office
- Video - Inside Windows Vista Printing
- Video - Jerry Dunietz on the XML Paper Specification (XPS)
referencia: vbpuntonet
Colombia es Pasión!!!
Que la Tecnología .NET os acompañe
martes, noviembre 14, 2006
JAVA Open source y como está el "OPEN SOURCE" en el mercado
www.sun.com/opensource/java
en mi opinión personal, no veo porque tanta alegría en abrir JAVA, acaso no era suficiente con que fuera gratuito(y lo sigue siendo), que hubiese comité donde la comunidad participaba en las implementaciones de java, el gran grupo que había detrás de java(no era solo SUN, SUN lideraba pero varias empresas contribuían)???.
solo veo un java que se va a fragmentar y sacar varias implementaciones distintas y se vendrá las "incompatibilidades", su fama de multiplataforma no será del todo cierto.
OJO SUN, trata de controlar esto, porque sino, veo en el horizonte el FINNN de java, triste pero cierto, con una arquitectura SOA, no te puedes dar el lujo de tener varias implementaciones.
lo mismo pasa con Linux, aunque muchos digan que un programa en Linux corre en cualquier Linux, eso no es cierto, lo mismo pasará con java.
Solo veo a los desarrolladores que aparte de gastar un poco de esfuerzo por aprender un framework de trabajo, como spring, struts, hibernate y otros, tendrán que vérselas ahora con una implementación de java a elegir.
Escucho mucho en mi universidad y colegas, que linux es gratis y tienen TODA la razón, pero las distribuciones NO(valga la aclaración), lo que es gratis son las distribuciones livianas, cuando alcanzan la maduración, las empresas con el cuento del software libre, se aprovecha de esto(claro!!! desarrolladores gratis) y separan la distribución en dos: lo mejor es para ellos y es "pago" y además hay que pagar el soporte(donde quedó lo libre....lo veo como un mecanismo explotador que tienen las empresas para solventar trabajadores gratis, Pilas muchachos no caigan en este espejismo hay unas herramientas open source totalmente open source). y la versión liviana para la comunidad.
No tengo nada en contra del software libre, me gusta la idea, pero en el mercado, esto es una oportunidad de negocio, y las empresas lo utilizan, vean el caso de REDHAT, SUSE, entre otros; con sus dos versiones de distribución.
una herramienta de software libre que me gusta mucho en la parte de php es: php designer , claro ya está lo suficientemente maduro, tiene adeptos y empezaron a "cobrar" a su estilo "distribución dual", como obvio la versión paga tiene las características interesante y la versión gratuita tiene cositas buenas, pero le deja a uno la sensación de tener como sea la versión paga.
El mercado es mercado, no nos encerremos en un computador, miremos más allá del monitor del 17'', el mundo de de personas, no de computadores, valoremos nuestro trabajo; NO EXISTE LOS JEANS OPEN SOURCE, LOS ZAPATOS GRATIS, EL COBRAR POR UN TRABAJO ES NORMAL Y SI QUIEREN ALGO OPEN SOURCE, QUE SEA ASÍ Y NO DE LICENCIA DUAL.
por último caso está el reporteador por excelencia en java jasperreport, ya tiene licencia dual y como típico la versión web es paga y de escritorio es gratis, no sobra decir que cobran por el manual; pero lo pueden bajar de emule(gratis hasta el final jejeje).
refrán colombiano: "mejor es malo conocido, que bueno por conocer".
REVISIÓN-1 : en vista a los correos que he recibido, hago otra vez la aclaración, yo NO ataco al OPEN SOURCE, ataco a las empresas que utilizan el open source como otro modelo de economía para atraer clientes y venderles productos, sino servicios u otras como infraestructuras...Todo con la filosofía "te doy gratis esto pero más adelante seguro vas a necesitar esto si tu empresa crece y te va a tocar esta versión PAGA", solo vean las distribuciones linux o las célebres licencias DUAL, una sencilla(sin mucho soporte empresarial) para la "comunidad" y la empresarial "PAGA" para las empresas; cabe preguntar...cuáles son sus mejores clientes??? la comunidad le entrega código gratis....y las empresas se lo compran...que buen modelo...me llama la atención, creo que el "open source" tiene cabida en el mercado viéndolo como lo ven las empresas.
REVISIÓN-2: esto puede sonar un regaño o algo, pero nosotros como programadores debemos valorar nuestro trabajo y cuando trabajemos en un proyecto "open source" de cualquier índole, comprobemos la visión de la empresa que lo mantiene....NOOO trabajemos gratis para otros.
EL software OPEN SOURCE debe ser OPEN SOURCE en todo SENTIDO.
Saludos
REVISIÓN-3: vean este enlace: artículo
Colombia es Pasión!!!
Que la Tecnología .NET os acompañe
Cuarta Estrella
A los Estudiantes de la Universidad de Antioquia, pongamosnos las pilas y a todo el sector de medellín-Colombia.
Estoy en Compromiso de Dictar Charlas sobre Tecnología .NET, todos los Lunes en la Universidad de Antioquia(Medellín-Colombia); Empezamos este lunes 20-noviembre-2006, Lugar Universidad de Antioquia, Hora: 10-12, Sala de Telemática, facultad de Ingeniería, Entrada Libre para cualquier interesado(no tiene que ser de la Universidad de Antioquia).
En este Blog postearé los progreso de las charlas, las diapositivas y noticias.
por ahora como se van a remotar las charlas, hay que empezar de cero y el primer tema es:
"Introducción a Windows Forms y GDI+"
visiten los recursos:
Desarrollador 5 estrellas
Cordialmente invitados a los interesados.
si gustan escribanme al correo que aparece en este blog o a :
asesordeprogramacion [@] gmail.com
Colombia es Pasión!!!
Que la Tecnología .NET os acompañe
Entretenimiento RPG
Son unos juegos tipos RPG, entretenidos, los juegos de ROL siempre han sido mis favoritos(y los únicos que me gustan), no todo es programación, dejémoslo en un 99%.
KnightFights
http://www.knightfight.es/?ac=vid&vid=66038389
Colombia es Pasión!!!
Que la Tecnología .NET os acompañe
sábado, noviembre 11, 2006
Desarrollo Basado en pruebas. Introducción
Aunque parezca extraño, desde mis primeros pasos estuve desarrallondo como muchos con la metodología: escribe código, compilas, si salen errores, corrige y vuelve a compilar; cuando todo esté listo(un gran logro!! jeje), ejecuta el programa y comprueba que todo funcione bien.
Hay mi época usabamos C++ y entorno D.O.S, Turbo C++, realizando mi primer "hola colombia". Los Monitores de la Universidad de Antioquia nos dejaban solos en esto; solo decían consulten...
Bueno dejemos un poco la nostalgia, el motivo de este post, es comentarles que en la parte de ejecutar un programa y ver si funcionaba bien era, un poco tedioso, repetitivo; hay mis profes nos dejaban también solos para torturarnos con el trabajo, pero gracias a eso, ahora valoro el Desarrollo basado en pruebas(el hombre masoquista...).
En qué consiste?
pues consiste en crear un par de reglas(clases con anotaciones) para probar nuestra aplicación y ver si funciona bien. Entendido??
Primero que es una anotación??? parece como si fuera algo sobre anotar; en efecto es así, es anotar antes de la declaración de algo(sea clase, método, etc...), y escribir algo.
veamos un ejemplo:
sea esta nuestra clase( en C# y JAVA):
public class miColombia(){
//código a manejar
}
escribir una anotación por ejemplo "medellín" es la siguiente,:
en C#:
[Medellin]
public class miColombia(){
//código a manejar
}
en JAVA:
@Medellin
public class miColombia(){
//código a manejar
}
bueno...qué tiene que ver esto de anotaciones??? su aplicación es muy diversas, entre ellas, la que nos interesa son las pruebas de unidad, ya que con ellas le decimos al compilador es una clase de prueba y debería mirarla como un TEST.
IMPORTANTE: las pruebas en JAVA no usan anotaciones, sino que extienden una clase TestCase o TestSuite.
bueno una mejor aproximación es realizar ese paso de ejecutar la aplicación y ver si todo "funciona" bien(ingresar datos, validar y ver si todo funciona; los estudiantes de estructuras de datos se hubiesen ahorrado mucho tiempo si se les capacitara en esto, lo duro de los arboles binarios y operaciones con listas ligadas.), sin ejecutar el programa ni ingresar un dato. Pero Cómo?????
es la maravilla de las pruebas de unidad. Uno escribe una sola vez las pruebas y las ejecuta
como presima del desarrollador, a veces somos muy cristianos cuando terminamos una aplicación, nos echamos un par de bendiciones y rogamos porque todo funcione bien; la pregunta es: como estudiantes de ingeniería este debe ser nuestro proceder, qué hay sobre medir y cuantificar las cosas, típico de ingenería.???
Lás métricas del Software!!!!!.
en Un próximo blog publicaré un ejemplo en C# y JAVA para el uso de prueba.
Recomiendo este libro para Las pruebas de Unidad en .NET
Test-Driven Development in Microsoft .NET
autor: newkirk Vorontsov.
p.d: gracias al Guillermo Som "el guille", por ganarme este libro en una charla que asistí.
¿La pregunta que hizo el guille, fué cual era la palabra clave para decir en VB que un objeto está Nulo? la respuesta era Nothing .
esperé los siguientes artículos.
url:
Colombia es PASIÓN
Que la tecnología .NET os Acompañe
.NET Framework 3.0 liberado
Esta noticias buena para los que desarrollamos en la plataforma .NET, acaba de ser liberado la versión oficial del framework, a bajarlo y probar de manera definitiva las caracteristicas.
Personalmente, me quedo aún con la versión 2.0, esperaré a ver que ocurre con esta versión.
aquí les dejo el enlace si quieren probarlo:
si quieren trabajar con esta versión dentro del entorno Visual Studio, aquí os dejo el siguiente enlace:
Visual Studio 2005 Extensions for .NET Framework 3.0 (Windows Workflow Foundation)
Visual Studio 2005 Extensions for .NET Framework 3.0 (WCF & WPF), November 2006 CTP
Colombia es Pasión
Que la tecnología .NET os Acompañe.
jueves, noviembre 02, 2006
Bienvenidos
Abarcaré temas relativos a DOTNET(.NET) y JAVA, mis lenguajes preferidos(y los que manejos).
Agradezco Cualquier comentario o sugerencias.
Que la Tecnología .NET os Acompañe.
Colombia es pasión!!!.